/* Docs tab (docs.js): protocol documentation embedded in the node.
 * Colours come from the dashboard's variables only (dashboard.css :root),
 * so the tab follows the dashboard theme. */
.docs-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:16px;align-items:start}
.docs-side{position:sticky;top:72px;max-height:calc(100vh - 88px);overflow:auto;padding:12px}
.docs-side summary{cursor:pointer;font-size:12px;font-weight:600;color:var(--dim);text-transform:uppercase;letter-spacing:.4px;list-style:none;padding:2px 0 8px}
.docs-side summary::-webkit-details-marker{display:none}
.docs-side ul{list-style:none;margin:0;padding:0}
.docs-list li a,.docs-toc li a{display:block;padding:5px 8px;border-radius:4px;color:var(--text);font-size:13px;line-height:1.35}
.docs-list li a:hover,.docs-toc li a:hover{background:var(--hover);text-decoration:none}
.docs-list li.active a{color:var(--accent);background:var(--accent-light);font-weight:600}
.docs-toc{margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}
.docs-toc-title{font-size:11px;color:var(--dim);text-transform:uppercase;letter-spacing:.4px;margin:0 0 4px 8px}
.docs-toc li a{color:var(--dim);font-size:12px}
.docs-toc li.lvl3 a{padding-left:20px}

.md{min-width:0;overflow-wrap:anywhere;line-height:1.6;padding:20px 24px}
.md h1,.md h2,.md h3,.md h4,.md h5,.md h6{color:var(--text);line-height:1.3;margin:24px 0 10px;scroll-margin-top:72px}
.md h1{font-size:22px;margin-top:0;padding-bottom:8px;border-bottom:1px solid var(--border)}
.md h2{font-size:18px;padding-bottom:6px;border-bottom:1px solid var(--border)}
.md h3{font-size:15px}
.md h4,.md h5,.md h6{font-size:14px}
.md .md-anchor{color:var(--dim);opacity:0;font-weight:400;margin-left:4px;text-decoration:none}
.md h1:hover .md-anchor,.md h2:hover .md-anchor,.md h3:hover .md-anchor,.md h4:hover .md-anchor,.md .md-anchor:focus{opacity:1}
.md p,.md ul,.md ol,.md blockquote,.md pre,.md .md-table{margin:0 0 12px}
.md ul,.md ol{padding-left:22px}
.md li{margin:2px 0}
.md li>ul,.md li>ol{margin:2px 0 0}
.md code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:1px 4px}
.md pre.md-code{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:12px;overflow-x:auto;max-width:100%}
.md pre.md-code code{background:none;border:0;padding:0;font-size:12.5px;white-space:pre;overflow-wrap:normal}
.md blockquote{border-left:3px solid var(--accent);padding:4px 12px;color:var(--dim);background:var(--accent-light);border-radius:0 6px 6px 0}
.md blockquote p:last-child{margin-bottom:0}
.md hr{border:0;border-top:1px solid var(--border);margin:20px 0}
.md .md-table{overflow-x:auto;max-width:100%;border:1px solid var(--border);border-radius:6px;overflow-wrap:normal;word-break:normal;-webkit-overflow-scrolling:touch}
.md .md-table table{width:auto;min-width:100%;border-collapse:collapse}
.md .md-table th,.md .md-table td{padding:6px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top;font-size:13px}
.md .md-table th{color:var(--dim);font-size:12px;font-weight:600;text-transform:none;letter-spacing:0;background:var(--table-stripe);white-space:nowrap}
.md .md-table tbody tr:nth-child(even){background:var(--table-stripe)}
.md .md-table tbody tr:last-child td{border-bottom:0}
.md .md-table td code{white-space:nowrap}
.md .md-deadlink{border-bottom:1px dotted var(--dim)}

@media(max-width:768px){
.docs-layout{grid-template-columns:minmax(0,1fr);gap:12px}
.docs-layout>*{min-width:0;max-width:100%}
.docs-side{position:static;max-height:none}
.md{padding:14px 12px}
.md h1{font-size:19px}
.md h2{font-size:16px}
.md .md-table th,.md .md-table td{padding:5px 8px;font-size:12px}
.md .md-table td{min-width:4.5em;max-width:18em}
.docs-list li a,.docs-toc li a{padding:9px 8px}
}
