/*!
  Theme: Atelier Forest Light
  Author: Bram de Haan (http://atelierbramdehaan.nl)
  License: ~ MIT (or more permissive) [via base16-schemes-source]
  Maintainer: @highlightjs/core-team
  Version: 2021.09.0
*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#68615e;background:#f1efee}.hljs::-moz-selection,.hljs ::-moz-selection{background-color:#a8a19f;color:#68615e}.hljs::selection,.hljs ::selection{background-color:#a8a19f;color:#68615e}.hljs-comment{color:#9c9491}.hljs-tag{color:#766e6b}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#68615e}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f22c40}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#df5320}.hljs-class .hljs-title,.hljs-strong,.hljs-title,.hljs-title.class_{color:#c38418}.hljs-strong{font-weight:700}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#7b9726}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#3d97b8}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#407ee7}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#6666ea}.hljs-emphasis{color:#6666ea;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c33ff3}.hljs-meta-keyword,.hljs-meta .hljs-keyword{font-weight:700}.visualizer-page[data-v-4366dab1]{padding:0;margin-top:80px;font-family:miranafont,Hiragino Sans GB,STXihei,Microsoft YaHei,SimSun,sans-serif;letter-spacing:1px}.grid[data-v-4366dab1]{display:grid;grid-template-columns:2fr 4fr 4fr;gap:16px;height:calc(100vh - 80px)}.col[data-v-4366dab1]{min-width:0}.col-left[data-v-4366dab1]{border:1px solid #eee;border-radius:4px;padding:12px;height:100%;overflow:auto;background:#fafafa}.col-center[data-v-4366dab1]{display:flex;flex-direction:column;min-height:0}.col-right[data-v-4366dab1]{border:1px solid #eee;border-radius:4px;padding:12px;height:100%;overflow:auto;background:#fafafa}.algo-title[data-v-4366dab1]{margin:8px 0 16px;font-size:24px;font-weight:700;color:#4f4f4f;line-height:1.2}.controls[data-v-4366dab1]{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px}.control-btn[data-v-4366dab1]{padding:8px 16px;background:transparent;border:1px solid #d2d2d2;border-radius:3px;cursor:pointer;transition:all .3s ease;font-size:13px;color:#666;text-transform:uppercase;letter-spacing:1px;font-family:inherit}.control-btn[data-v-4366dab1]:hover:not(:disabled){color:#ff6d6d;border-color:#ff6d6d}.control-btn[data-v-4366dab1]:disabled{opacity:.5;cursor:not-allowed}.control-btn.primary[data-v-4366dab1]{background:#ff6d6d;color:#fff;border-color:#ff6d6d}.control-btn.primary[data-v-4366dab1]:hover:not(:disabled){background:#ff5252;border-color:#ff5252}.control-label[data-v-4366dab1]{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#666;text-transform:uppercase;letter-spacing:1px}.control-range[data-v-4366dab1]{width:120px;height:4px;border-radius:2px;background:#ddd;outline:none;cursor:pointer}.control-range[data-v-4366dab1]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#ff6d6d;cursor:pointer}.control-range[data-v-4366dab1]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#ff6d6d;cursor:pointer;border:none}.stage[data-v-4366dab1]{flex:1;width:100%;border:1px dashed #ddd;display:flex;align-items:flex-end;min-height:0;padding:10px 10px 20px 10px;overflow:hidden;background:#fff;border-radius:4px}.stage-top[data-v-4366dab1]{height:calc(100% - 20px);display:flex;align-items:flex-end;gap:2px;width:100%;max-width:100%}.bar-wrap[data-v-4366dab1]{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;flex:1;min-width:0}.bar-label[data-v-4366dab1]{font-size:11px;color:#666;margin-top:4px;white-space:nowrap;overflow:hidden;font-weight:500}.bar[data-v-4366dab1]{width:100%;margin:0;transition:height .12s linear,background .12s linear;background:#ffb3b3;min-height:2px;border-radius:2px 2px 0 0}.bar.active[data-v-4366dab1]{background:#4caf50!important}.bar.swapped[data-v-4366dab1]{background:#ff9800!important}.accordion[data-v-4366dab1]{font-size:13px}.acc-group[data-v-4366dab1]{border-bottom:1px dashed #eee;margin-bottom:8px}.acc-group[data-v-4366dab1]:last-child{border-bottom:none;margin-bottom:0}.acc-header[data-v-4366dab1]{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:8px 6px;font-weight:600;font-size:13px;color:#4f4f4f;transition:color .3s ease}.acc-header[data-v-4366dab1]:hover{color:#ff6d6d}.acc-body[data-v-4366dab1]{padding:4px 6px 8px}.acc-item[data-v-4366dab1]{padding:6px 8px;border-radius:3px;cursor:pointer;font-size:12px;color:#666;transition:all .3s ease;margin-bottom:2px}.acc-item[data-v-4366dab1]:hover{background:#f0f0f0;color:#333}.acc-item.active[data-v-4366dab1]{background:#fff1f3;color:#ff6d6d;font-weight:500}.arrow[data-v-4366dab1]{transition:transform .2s ease;font-size:12px;color:#999}.arrow.open[data-v-4366dab1]{transform:rotate(180deg)}.code-toolbar[data-v-4366dab1]{margin-bottom:12px;display:flex;gap:8px;flex-wrap:wrap}.code-tab[data-v-4366dab1]{padding:6px 12px;border:1px solid #d2d2d2;border-radius:3px;background:transparent;cursor:pointer;font-size:11px;color:#666;text-transform:uppercase;letter-spacing:1px;transition:all .3s ease;font-family:inherit}.code-tab[data-v-4366dab1]:hover{color:#ff6d6d;border-color:#ff6d6d}.code-tab.active[data-v-4366dab1]{color:#fff;background:#ff6d6d;border-color:#ff6d6d}.code-view[data-v-4366dab1]{height:calc(100% - 60px);overflow:auto;background:#0b1020;color:#d7e3ff;padding:16px;border-radius:4px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;line-height:1.5}.code-view pre[data-v-4366dab1]{margin:0;white-space:pre}.code-view code[data-v-4366dab1]{display:block;width:100%}.linked-list-container[data-v-4366dab1]{display:flex;flex-direction:column;height:100%;padding:20px}.linked-list-controls[data-v-4366dab1]{display:flex;gap:20px;margin-bottom:20px;align-items:center;flex-wrap:wrap}.operation-selector[data-v-4366dab1],.value-input[data-v-4366dab1]{display:flex;align-items:center;gap:8px}.operation-selector label[data-v-4366dab1],.value-input label[data-v-4366dab1]{font-size:14px;color:#666;font-weight:500}.operation-selector select[data-v-4366dab1],.value-input input[data-v-4366dab1]{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.value-input button[data-v-4366dab1]{padding:8px 16px;background:#ff6d6d;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:background .3s ease}.value-input button[data-v-4366dab1]:hover:not(:disabled){background:#ff5252}.value-input button[data-v-4366dab1]:disabled{opacity:.5;cursor:not-allowed}.linked-list-visualization[data-v-4366dab1]{flex:1;display:flex;align-items:center;justify-content:center;overflow:auto}.linked-list-nodes[data-v-4366dab1]{flex-wrap:wrap;justify-content:center}.linked-list-nodes[data-v-4366dab1],.node-container[data-v-4366dab1]{display:flex;align-items:center;gap:10px}.node[data-v-4366dab1]{width:60px;height:60px;border:2px solid #ddd;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;transition:all .3s ease;position:relative}.node.active[data-v-4366dab1]{border-color:#4caf50;background:#e8f5e8;transform:scale(1.1);box-shadow:0 4px 12px rgba(76,175,80,.3)}.node.head[data-v-4366dab1]{border-color:#2196f3;background:#e3f2fd}.node.tail[data-v-4366dab1]{border-color:#ff9800;background:#fff3e0}.node-value[data-v-4366dab1]{font-size:16px;color:#333}.node-index[data-v-4366dab1]{font-size:10px;color:#999;margin-top:2px}.arrow[data-v-4366dab1]{font-size:20px;color:#666;font-weight:700}.empty-list[data-v-4366dab1]{font-size:18px;color:#999;font-style:italic}@media (max-width:960px){.grid[data-v-4366dab1]{grid-template-columns:1fr;height:calc(100vh - 60px)}.stage[data-v-4366dab1]{flex:1}.controls[data-v-4366dab1]{flex-direction:column;align-items:stretch}.control-btn[data-v-4366dab1]{width:100%;margin-bottom:8px}.linked-list-controls[data-v-4366dab1]{flex-direction:column;align-items:stretch}.operation-selector[data-v-4366dab1],.value-input[data-v-4366dab1]{justify-content:space-between}.linked-list-nodes[data-v-4366dab1]{flex-direction:column;align-items:center}.node-container[data-v-4366dab1]{flex-direction:column}.arrow[data-v-4366dab1]{transform:rotate(90deg)}}.tree-container[data-v-4366dab1]{display:flex;flex-direction:column;height:100%;padding:20px}.tree-controls[data-v-4366dab1]{display:flex;gap:20px;margin-bottom:20px;align-items:center;flex-wrap:wrap}.traversal-selector[data-v-4366dab1]{display:flex;align-items:center;gap:8px}.traversal-selector label[data-v-4366dab1]{font-size:14px;color:#666;font-weight:500}.traversal-selector select[data-v-4366dab1]{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.tree-visualization[data-v-4366dab1]{flex:1;display:flex;align-items:stretch;justify-content:stretch;overflow:auto}.tree-graph[data-v-4366dab1]{position:relative;width:100%;height:100%}.tree-lines[data-v-4366dab1]{position:absolute;top:0;left:0;width:100%;height:100%}.tree-lines line[data-v-4366dab1]{stroke:#c9c9c9;stroke-width:2}.tree-arrow-head[data-v-4366dab1]{fill:#c9c9c9}.tree-node[data-v-4366dab1]{width:60px;height:60px;border:2px solid #bcbcbc;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#5a5a5a;transition:all .3s ease;position:relative;margin:10px}.tree-node.active[data-v-4366dab1]{border-color:#ffb84d;background:#6c6c6c;transform:scale(1.2);box-shadow:0 4px 12px rgba(255,184,77,.35)}.node-value[data-v-4366dab1]{font-size:18px;font-weight:700;color:#e6e6e6}.empty-tree[data-v-4366dab1]{font-size:18px;color:#999;font-style:italic}.tree-levels[data-v-4366dab1]{position:relative;display:flex;flex-direction:column;justify-content:space-between;height:100%;padding:10px 20px}.tree-level[data-v-4366dab1]{display:grid;align-items:center;justify-items:center;margin:10px 0}.heap-container[data-v-4366dab1]{display:flex;flex-direction:column;height:100%;padding:20px}.heap-controls[data-v-4366dab1]{display:flex;gap:20px;margin-bottom:20px;align-items:center;flex-wrap:wrap}.heap-visualization[data-v-4366dab1]{flex:1;display:flex;flex-direction:column;gap:20px;overflow:auto}.heap-array[data-v-4366dab1]{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;padding:20px;background:#f5f5f5;border-radius:8px}.heap-element[data-v-4366dab1]{width:60px;height:60px;border:2px solid #ddd;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;transition:all .3s ease;position:relative}.heap-element.active[data-v-4366dab1]{border-color:#4caf50;background:#e8f5e8;transform:scale(1.1);box-shadow:0 4px 12px rgba(76,175,80,.3)}.element-value[data-v-4366dab1]{font-size:16px;font-weight:700;color:#333}.element-index[data-v-4366dab1]{font-size:10px;color:#999;margin-top:2px}.heap-tree[data-v-4366dab1]{display:flex;flex-direction:column;align-items:center;gap:20px}.heap-level[data-v-4366dab1]{display:flex;gap:20px;justify-content:center}.heap-tree-node[data-v-4366dab1]{width:50px;height:50px;border:2px solid #ddd;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;transition:all .3s ease;font-weight:700;color:#333}.heap-tree-node.active[data-v-4366dab1]{border-color:#4caf50;background:#e8f5e8;transform:scale(1.2);box-shadow:0 4px 12px rgba(76,175,80,.3)}@media (max-width:960px){.heap-controls[data-v-4366dab1],.tree-controls[data-v-4366dab1]{flex-direction:column;align-items:stretch}.operation-selector[data-v-4366dab1],.traversal-selector[data-v-4366dab1],.value-input[data-v-4366dab1]{justify-content:space-between}.node-children[data-v-4366dab1]{flex-direction:column;gap:20px}.child-node[data-v-4366dab1]:before{display:none}.heap-array[data-v-4366dab1],.heap-level[data-v-4366dab1]{flex-direction:column;align-items:center}}