.cp-toc-desktop{position:sticky;z-index:9;top:var(--cp-toc-offset,128px);align-self:start;width:200px;max-height:calc(100vh - var(--cp-toc-offset,128px) - 20px);overflow-y:auto;overscroll-behavior:contain;padding:16px;background:var(--panel,#12151d);border:1px solid var(--line,#232837);border-radius:12px}
.cp-toc-title{font-size:14px;font-weight:700;color:var(--text,#e8eaf0);margin:0 0 10px}
.cp-toc-links{display:grid;gap:2px}
.cp-toc-links a{display:block;min-width:0;padding:7px 9px;border-radius:7px;color:var(--muted,#9aa3b5);font-size:13px;line-height:1.35;text-decoration:none;overflow-wrap:anywhere}
.cp-toc-label{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.cp-toc-links a:hover,.cp-toc-links a:focus-visible{color:var(--text,#e8eaf0);background:var(--line,#232837)}
.cp-toc-links a[aria-current="location"]{color:var(--accent,#f5a623);background:var(--line,#232837);font-weight:700}
.cp-toc-links a:focus-visible,.cp-toc-mobile summary:focus-visible{outline:2px solid var(--accent,#f5a623);outline-offset:2px}
.cp-toc-mobile{display:none}
.cp-toc-ready [data-toc-target]{scroll-margin-top:var(--cp-toc-offset,128px)}
@media(min-width:1100px){
  .cp-toc-ready{--cp-toc-left:max(24px,calc((100vw - 960px)/2 + 24px))}
  .cp-toc-layout{display:grid;grid-template-columns:200px minmax(0,1fr);column-gap:16px;margin-left:var(--cp-toc-left);margin-right:48px}
  .cp-toc-layout main{min-width:0}
  .cp-toc-layout main .wrap{margin-left:0;margin-right:0;max-width:960px}
}
@media(max-width:1099px){
  .cp-toc-layout{display:contents}
  .cp-toc-desktop{display:none}
  .cp-toc-mobile{display:block;max-width:960px;margin:18px auto 0;padding:0 24px}
  .cp-toc-mobile details{background:var(--panel,#12151d);border:1px solid var(--line,#232837);border-radius:10px}
  .cp-toc-mobile summary{cursor:pointer;padding:12px 16px;color:var(--text,#e8eaf0);font-weight:700;list-style:none}
  .cp-toc-mobile summary::-webkit-details-marker{display:none}
  .cp-toc-mobile summary::after{content:' ▾'}
  .cp-toc-mobile details[open] summary::after{content:' ▴'}
  .cp-toc-mobile .cp-toc-links{max-height:min(60vh,420px);overflow-y:auto;padding:4px 8px 12px}
}
@media(max-width:600px){.cp-toc-ready [data-toc-target]{scroll-margin-top:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
.cp-toc-desktop,.cp-toc-mobile .cp-toc-links{scrollbar-width:thin;scrollbar-color:rgba(154,163,181,.28) transparent}
.cp-toc-desktop:hover,.cp-toc-mobile .cp-toc-links:hover{scrollbar-color:rgba(245,166,35,.55) transparent}
.cp-toc-desktop::-webkit-scrollbar,.cp-toc-mobile .cp-toc-links::-webkit-scrollbar{width:4px}
.cp-toc-desktop::-webkit-scrollbar-track,.cp-toc-mobile .cp-toc-links::-webkit-scrollbar-track{background:transparent;margin:12px 0}
.cp-toc-desktop::-webkit-scrollbar-thumb,.cp-toc-mobile .cp-toc-links::-webkit-scrollbar-thumb{background:rgba(154,163,181,.28);border-radius:4px}
.cp-toc-desktop:hover::-webkit-scrollbar-thumb,.cp-toc-mobile .cp-toc-links:hover::-webkit-scrollbar-thumb{background:rgba(245,166,35,.55)}
.cp-toc-desktop::-webkit-scrollbar-button,.cp-toc-mobile .cp-toc-links::-webkit-scrollbar-button{display:none;height:0}
.cp-toc-flash{animation:cp-toc-flash 2.6s ease-out}
@keyframes cp-toc-flash{0%,60%{box-shadow:0 0 0 3px var(--accent,#f5a623),0 0 32px 6px rgba(245,166,35,.45)}100%{box-shadow:0 0 0 3px transparent,0 0 32px 6px transparent}}
@media(prefers-reduced-motion:reduce){.cp-toc-flash{animation:none;box-shadow:0 0 0 3px var(--accent,#f5a623),0 0 32px 6px rgba(245,166,35,.45)}}
