.nv-aps-docs { --aps-visual-width:1040px; --aps-image-width:760px; --aps-image-height:440px; }
.nv-aps-docs .aps-graph,.aps-graph-dialog .aps-graph,.nv-aps-docs .aps-route-lab { margin:20px 0; border:1px solid #3b4352; border-radius:8px; background:#161c28; color:#eef0f6; overflow:hidden; }
.nv-aps-docs .nv-doc-markdown-body .aps-graph,.nv-aps-docs .aps-route-lab { width:100%; max-width:var(--aps-visual-width); }
.nv-aps-docs .aps-visual-heading,.aps-graph-dialog .aps-visual-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px; background:#202737; }
.nv-aps-docs .aps-visual-heading { padding:12px 16px; }
.nv-aps-docs .aps-visual-heading strong,.aps-graph-dialog .aps-visual-heading strong { display:block; font-size:16px; line-height:1.45; }
.nv-aps-docs .aps-eyebrow { display:block; margin-bottom:4px; color:#a7b3c9; font:11px/1.4 monospace; letter-spacing:.06em; text-transform:uppercase; }
.nv-aps-docs .aps-visual-heading button,.aps-graph-dialog button { flex-shrink:0; border:1px solid #6b5670; border-radius:5px; background:#36283b; color:#fff; padding:9px 12px; font:13px/1.4 sans-serif; cursor:pointer; }
.nv-aps-docs .aps-graph-viewport,.aps-graph-dialog .aps-graph-viewport { overflow:auto; max-width:100%; overscroll-behavior:contain; scrollbar-color:#697789 #182030; }
.nv-aps-docs .aps-graph-viewport svg,.aps-graph-dialog .aps-graph-viewport svg { display:block; max-width:none; font:14px sans-serif; }
.nv-aps-docs .aps-graph-viewport { background:#10151f; }
.nv-aps-docs .aps-graph-viewport svg { width:min(100%, var(--aps-preview-width)); max-width:100%; height:auto; margin-inline:auto; }
.nv-aps-docs .aps-node,.aps-graph-dialog .aps-node { cursor:pointer; outline:none; }
.nv-aps-docs .aps-node:focus rect,.nv-aps-docs .aps-node.is-selected rect,.aps-graph-dialog .aps-node:focus rect,.aps-graph-dialog .aps-node.is-selected rect { stroke:#ffaccc; stroke-width:3; }
.nv-aps-docs .aps-node-title,.aps-graph-dialog .aps-node-title { fill:#fff; font-size:14px; font-weight:600; }
.nv-aps-docs .aps-pin-label,.aps-graph-dialog .aps-pin-label { fill:#dbe0ec; font-size:13px; }
.nv-aps-docs .aps-wire-label,.aps-graph-dialog .aps-wire-label { fill:#c5cedd; font-size:12px; paint-order:stroke; stroke:#10151f; stroke-width:5px; }
.nv-aps-docs .aps-graph figcaption { margin:0; padding:10px 16px; color:#b4bfd1; font:13px/1.5 var(--body,sans-serif); }
.nv-aps-docs .aps-graph-legend { display:flex; flex-wrap:wrap; gap:8px 16px; padding:12px 16px 0; color:#b4bfd1; font:12px/1.5 sans-serif; }
.nv-aps-docs .aps-graph-legend span { display:inline-flex; align-items:center; gap:6px; }
.nv-aps-docs .aps-graph-legend i { width:7px; height:7px; border-radius:50%; }
.nv-aps-docs .aps-graph-detail,.aps-graph-dialog .aps-graph-detail { padding:0 16px; color:#e8c2d3; font:14px/1.65 sans-serif; }
.nv-aps-docs .aps-graph-detail:not(:empty),.aps-graph-dialog .aps-graph-detail { padding:10px 16px; }
.nv-aps-docs .aps-graph-text { border-top:1px solid #343e50; padding:12px 16px; color:#b6c3d8; font-size:13px; }
.nv-aps-docs .aps-graph-text summary { cursor:pointer; }
.nv-aps-docs .aps-graph-text ol { margin-bottom:0; }
.aps-graph-dialog { width:calc(100vw - 40px); max-width:1400px; max-height:calc(100vh - 40px); padding:0; border:1px solid #697789; border-radius:10px; color:#eef0f6; background:#161c28; }
.aps-graph-dialog::backdrop { background:#05090edb; }
.aps-graph-dialog .aps-graph { margin:0; border:0; }
.aps-graph-dialog .aps-graph-viewport { max-height:calc(100vh - 200px); }
.aps-dialog-tools { display:flex; gap:6px; flex-shrink:0; }
.nv-aps-docs .aps-route-controls { display:grid; grid-template-columns:1fr 1fr; gap:20px; padding:20px; }
.nv-aps-docs .aps-route-controls label { color:#e4e8f0; font-size:13px; line-height:1.6; }
.nv-aps-docs .aps-route-controls output { float:right; color:#f3bdd2; }
.nv-aps-docs .aps-route-controls input,.nv-aps-docs .aps-route-controls select { display:block; width:100%; margin-top:10px; accent-color:#ee789f; }
.nv-aps-docs .aps-route-controls select,.nv-aps-docs .nv-aps-page-links select { padding:9px; border:1px solid #536077; border-radius:5px; background:#171d29; color:#fff; font-size:14px; max-width:100%; }
.nv-aps-docs .aps-route-lab > svg { display:block; width:100%; height:auto; max-height:280px; background:#10151f; }
.nv-aps-docs .nv-doc-markdown-body .aps-image { width:fit-content; max-width:min(100%,var(--aps-image-width)); margin:20px 0 24px; }
.nv-aps-docs .aps-image img { display:block; width:auto; height:auto; max-width:100%; max-height:min(var(--aps-image-height),60vh); object-fit:contain; object-position:left top; }
.nv-aps-docs .aps-image > a { display:block; width:fit-content; max-width:100%; cursor:zoom-in; }
.nv-aps-docs .aps-image figcaption { max-width:76ch; margin:0; padding-top:8px; color:var(--muted); font:12px/1.5 var(--body,sans-serif); }
.nv-aps-docs .aps-image-link { display:block; width:fit-content; margin-top:6px; font-size:12px; }
.nv-aps-docs .aps-image a:focus-visible { outline:2px solid #ffaccc; outline-offset:3px; }
.nv-aps-docs .aps-route-lab svg text { fill:#acb9d0; font:14px sans-serif; }
.nv-aps-docs .aps-lane-lab > svg { padding-block:8px; }
.nv-aps-docs .aps-lane-legend { display:flex; flex-wrap:wrap; gap:8px 20px; padding:12px 16px 0; color:#b4bfd1; font:12px/1.5 var(--body,sans-serif); }
.nv-aps-docs .aps-lane-legend span { display:inline-flex; align-items:center; gap:7px; }
.nv-aps-docs .aps-lane-legend i { display:block; width:20px; height:0; }
.nv-aps-docs .aps-lane-base-key { border-top:2px dashed #a7b3c9; }
.nv-aps-docs .aps-lane-path-key { border-top:3px solid #ee789f; }
.nv-aps-docs .aps-lane-legend .aps-lane-control-key { width:8px; height:8px; border:2px solid #c38bf5; border-radius:50%; }
.nv-aps-docs .aps-route-controls input:focus-visible { outline:2px solid #ffaccc; outline-offset:4px; }
.nv-aps-docs .aps-route-actions { display:flex; align-items:center; gap:14px; padding:16px; font-size:13px; line-height:1.5; }
.nv-aps-docs p.aps-visual-note { margin:0; padding:0 16px 16px; color:#b4bfd1; font-size:12px; line-height:1.65; }
.nv-aps-docs .aps-nav-label { display:block; margin:24px 0 8px; color:#e4a7c2; font:11px monospace; letter-spacing:.08em; }
.nv-aps-docs .nv-aps-page-links { align-items:center; }
.nv-aps-docs .nv-aps-page-links label { width:100%; }
.nv-aps-docs .nv-aps-page-links select { width:100%; margin-top:6px; }
.nv-aps-docs .aps-search-results:not([hidden]) { display:block; margin:16px 24px; padding:18px 20px; border:1px solid #536077; background:#182030; color:#eef0f6; font-size:14px; }
.nv-aps-docs .aps-search-results a { display:block; margin:14px 0; color:#f1c0d7; }
.nv-aps-docs .aps-search-results a span { display:block; margin-top:4px; color:#bdc9dc; font-size:13px; line-height:1.6; }
.nv-aps-docs .aps-search-results button { border:0; padding:8px 0; background:transparent; color:#f1c0d7; cursor:pointer; font-size:13px; }
.nv-aps-docs button:focus-visible,.nv-aps-docs select:focus-visible,.nv-aps-docs .aps-graph-viewport:focus-visible,.aps-graph-dialog button:focus-visible { outline:2px solid #ffaccc; outline-offset:3px; }
@media(max-width:600px) {
  .nv-aps-docs .aps-visual-heading { align-items:flex-start; gap:8px; padding:12px; }
  .nv-aps-docs .aps-visual-heading strong { font-size:14px; }
  .nv-aps-docs .aps-visual-heading button { padding:8px; font-size:12px; }
  .nv-aps-docs .aps-route-controls { grid-template-columns:1fr; gap:14px; padding:16px; }
  .nv-aps-docs .aps-route-actions { flex-wrap:wrap; }
  .aps-graph-dialog { width:calc(100vw - 16px); max-height:calc(100vh - 16px); }
  .aps-graph-dialog .aps-visual-heading { flex-wrap:wrap; padding:12px; }
  .aps-graph-dialog .aps-dialog-tools { width:100%; justify-content:flex-end; }
}
