/* ── Documentation page ── */
.doc-toc{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px;}
.doc-toc-link{padding:6px 14px;border-radius:20px;background:var(--surface2);color:var(--muted);font-size:12px;font-weight:600;cursor:pointer;border:1px solid var(--border);transition:all .15s;user-select:none;}
.doc-toc-link:hover{color:var(--text);border-color:var(--accent);}
.doc-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:4px;font-size:10px;font-weight:700;font-family:'DM Mono',monospace;white-space:nowrap;}
.doc-badge.on{background:rgba(74,222,128,.12);color:var(--green);border:1px solid rgba(74,222,128,.2);}
.doc-badge.off{background:rgba(107,107,117,.12);color:var(--muted);border:1px solid var(--border);}
.doc-badge.err{background:rgba(248,113,113,.12);color:var(--red);border:1px solid rgba(248,113,113,.2);}
.doc-badge.perm{background:rgba(124,106,247,.12);color:var(--accent);border:1px solid rgba(124,106,247,.2);}
.doc-badge.owner{background:rgba(251,191,36,.12);color:var(--yellow);border:1px solid rgba(251,191,36,.2);}
.doc-sub-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:14px 0 6px;}
.doc-steps{list-style:none;padding:0;margin:8px 0 0;}
.doc-steps li{display:flex;gap:10px;padding:7px 0;font-size:12px;border-bottom:1px solid var(--border);align-items:flex-start;}
.doc-steps li:last-child{border-bottom:none;}
.doc-step-num{min-width:20px;height:20px;border-radius:50%;background:var(--accent);color:#fff;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;}
.doc-table{width:100%;border-collapse:collapse;font-size:12px;margin-top:8px;border-radius:8px;overflow:hidden;}
.doc-table th{padding:7px 12px;background:var(--surface2);text-align:left;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);}
.doc-table td{padding:8px 12px;border-top:1px solid var(--border);vertical-align:top;line-height:1.5;}
.doc-table td:first-child{font-family:'DM Mono',monospace;}
.doc-platform-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin-top:12px;}
.doc-platform-card{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:12px;}
/* Hierarchy diagram */
.doc-hier-wrap{display:flex;flex-direction:column;}
.doc-hier-row{display:flex;align-items:flex-start;gap:12px;}
.doc-hier-badge{flex-shrink:0;min-width:140px;padding:7px 12px;border-radius:8px;border:1px solid;font-size:12px;font-weight:700;text-align:center;}
.doc-hier-perms{font-size:11px;color:var(--muted);padding-top:6px;line-height:1.5;}
.doc-hier-line{width:1px;background:var(--border);height:14px;margin-left:70px;}
.doc-hier-flow-row{display:flex;}
.doc-hier-flow-badge{flex:1;display:flex;flex-direction:column;padding:10px 14px;border-radius:8px;border:1px solid;gap:0;}
.doc-hier-flow-arrow{font-size:11px;color:var(--muted);font-family:'DM Mono',monospace;padding:5px 14px;}
.doc-persist-row{display:flex;gap:10px;align-items:flex-start;font-size:12px;padding:5px 0;border-bottom:1px solid var(--border);}
.doc-persist-row:last-child{border-bottom:none;}
.doc-persist-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;margin-top:4px;}

