/* Developer docs layout — sticky TOC + readable body + dark code blocks */
.docs-layout { display:grid; grid-template-columns:240px 1fr; gap:40px; align-items:start; }
.docs-toc { position:sticky; top:104px; max-height:calc(100vh - 130px); overflow:auto; font-family:var(--cp-sans); border-right:1px solid var(--cp-line); padding-right:16px; }
.docs-toc-label { font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.07em; color:var(--cp-muted); margin:0 0 10px; }
.docs-toc nav { display:flex; flex-direction:column; gap:1px; }
.docs-toc a { padding:5px 10px; border-radius:7px; color:var(--cp-muted); font-size:.9rem; text-decoration:none; line-height:1.3; }
.docs-toc a:hover { background:var(--cp-blue-tint); color:var(--cp-blue); }
.docs-body { min-width:0; max-width:800px; }
.docs-body h1 { font-size:clamp(2rem,4vw,2.8rem); margin-bottom:.25em; }
.docs-body > h2 { font-family:var(--cp-serif); font-size:1.65rem; margin:2em 0 .5em; padding-top:.7em; border-top:1px solid var(--cp-line); scroll-margin-top:100px; }
.docs-body p, .docs-body li { font-family:var(--cp-sans); color:var(--cp-body); line-height:1.7; }
.docs-body ul, .docs-body ol { padding-left:22px; }
.docs-body code { font-family:ui-monospace,Menlo,Consolas,monospace; font-size:.88em; background:#eef1f4; color:#0b4a78; padding:1px 6px; border-radius:5px; }
.docs-actions { display:flex; gap:12px; flex-wrap:wrap; margin:18px 0 28px; }
.code-block { margin:18px 0; border-radius:12px; overflow:hidden; background:#15233A; box-shadow:var(--cp-shadow-sm); }
.code-block .code-lang { display:block; font-family:var(--cp-sans); font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.07em; color:#9fb6cc; background:rgba(255,255,255,.06); padding:8px 16px; }
.code-block pre { margin:0; padding:16px; overflow-x:auto; }
.code-block code { font-family:ui-monospace,Menlo,Consolas,monospace; font-size:.82rem; line-height:1.55; color:#e8f1f8; background:none; padding:0; white-space:pre; }
.docs-table-wrap { overflow-x:auto; margin:16px 0; }
.docs-body table { border-collapse:collapse; width:100%; font-family:var(--cp-sans); font-size:.92rem; }
.docs-body th, .docs-body td { border:1px solid var(--cp-line); padding:8px 12px; text-align:left; vertical-align:top; }
.docs-body th { background:var(--cp-blue-tint); color:var(--cp-ink); }
@media (max-width:900px){
  .docs-layout { grid-template-columns:1fr; }
  .docs-toc { position:static; max-height:none; overflow:visible; border-right:0; padding:0 0 18px; border-bottom:1px solid var(--cp-line); margin-bottom:18px; }
  .docs-toc nav { display:grid; grid-template-columns:1fr 1fr; gap:2px 10px; }
}
