:root{--f-data:var(--f-body);--fs-base:1rem;--fs-small:0.875rem;--fs-h1:1.5rem;--fs-h2:2.25rem;--fs-h3:1.25rem;--fw-heading:600;--fw-control:600;--lh-body:1.5;--tracking-heading:0;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--border-width:1px;--border-style:solid;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--btn-bg:var(--p-accent);--btn-ink:var(--p-accent-ink);--btn-border:var(--p-accent);--btn-shadow:none;--btn-hover-bg:var(--p-accent);--btn-hover-ink:var(--p-accent-ink);--btn-active-transform:none;--input-bg:var(--p-surface);--input-ink:var(--p-ink);--input-border-color:var(--p-line);--focus-ring:var(--p-ink);--panel-bg:var(--p-surface);--panel-border:var(--p-line);--panel-shadow:none;--nav-bg:var(--p-surface);--nav-ink:var(--p-ink);--side-bg:var(--p-surface);--side-ink:var(--p-ink);--side-group-ink:var(--p-muted);--side-hover-bg:var(--p-bg);--side-active-bg:var(--p-accent);--side-active-ink:var(--p-accent-ink);--cell-shadow:none;--edge-width:2;--state-active:var(--p-accent);--state-visited:var(--p-muted);--state-found:var(--p-accent);--state-danger:var(--p-accent);--state-info:var(--p-muted);--island-1:var(--p-cell);--island-2:var(--p-accent);--island-3:var(--p-muted);--island-4:var(--p-line);--island-5:var(--p-ink);--island-ink:var(--p-bg);--bg-color:var(--p-bg);--text-color:var(--p-ink);--navbar-bg:var(--nav-bg);--navbar-text:var(--nav-ink);--main-bg:var(--p-surface);--card-bg:var(--p-bg);--card-shadow:#0003;--input-border:var(--p-line);--stack-item-bg:var(--p-cell);--stack-item-text:var(--p-cell-ink);--debug-bg:var(--p-surface);--debug-text:var(--p-muted);--empty-message:var(--p-muted);--error-bg:var(--p-accent);--error-border:var(--state-danger);--error-text:var(--p-accent-ink)}body,html{background-color:var(--p-bg)}body{-webkit-font-smoothing:antialiased;font-family:var(--f-body);font-size:var(--fs-base);line-height:var(--lh-body);margin:0}.App,body{color:var(--p-ink)}.App{background-color:var(--p-bg);display:flex;flex-direction:column;min-height:100vh;text-align:center}.navbar{background-color:var(--nav-bg);color:var(--nav-ink);padding:var(--space-sm) var(--space-md);position:relative;z-index:20}.nav-container{align-items:center;display:flex;justify-content:space-between}.nav-logo{font-family:var(--f-display);font-size:var(--fs-h1);font-weight:var(--fw-heading);margin:0}.theme-menu{position:relative}.theme-menu-button{align-items:center;background:none;border:var(--border-width) var(--border-style) var(--nav-ink);border-radius:var(--radius-md);color:var(--nav-ink);cursor:pointer;display:flex;height:44px;justify-content:center;padding:0;width:44px}.theme-menu-bars,.theme-menu-bars:after,.theme-menu-bars:before{background-color:currentColor;border-radius:var(--radius-sm);display:block;height:3px;width:22px}.theme-menu-bars{position:relative}.theme-menu-bars:after,.theme-menu-bars:before{content:"";left:0;position:absolute}.theme-menu-bars:before{top:-7px}.theme-menu-bars:after{top:7px}.theme-menu-panel{background-color:var(--panel-bg);border:var(--border-width) var(--border-style) var(--panel-border);border-radius:var(--radius-lg);box-shadow:var(--panel-shadow);box-sizing:border-box;color:var(--p-ink);margin:0;padding:var(--space-md);position:absolute;right:0;text-align:left;top:calc(100% + var(--space-sm));width:min(280px,calc(100vw - 2rem));z-index:30}.theme-menu-heading{float:left;font-family:var(--f-display);font-size:var(--fs-h3);font-weight:var(--fw-heading);padding:0 0 var(--space-sm);width:100%}.theme-menu-option{clear:both;cursor:pointer;display:block;position:relative}.theme-menu-option input{cursor:pointer;height:100%;margin:0;opacity:0;position:absolute;width:100%}.theme-menu-row{align-items:center;border:2px solid #0000;border-radius:var(--radius-md);display:flex;gap:var(--space-sm);margin-top:var(--space-xs);padding:var(--space-sm)}.theme-menu-option:hover .theme-menu-row{background-color:var(--side-hover-bg)}.theme-menu-option input:checked+.theme-menu-row{border-color:var(--p-ink)}.theme-menu-option input:focus-visible+.theme-menu-row{outline:3px solid var(--focus-ring);outline-offset:2px}.theme-menu-swatch{align-items:flex-end;border-radius:var(--radius-sm);box-shadow:inset 0 0 0 1px var(--p-line);box-sizing:border-box;display:flex;flex:none;gap:2px;height:36px;padding:5px;width:44px}.theme-menu-swatch span{flex:1 1;height:100%}.theme-menu-swatch span:nth-child(2){height:66%}.theme-menu-swatch span:nth-child(3){height:33%}.theme-menu-text{display:flex;flex-direction:column}.theme-menu-name{font-size:1.1rem;line-height:1.2}.theme-menu-palette{color:var(--p-muted);font-size:var(--fs-small)}.app-layout{align-items:stretch;display:flex;flex:1 1}.ds-sidebar{background-color:var(--side-bg);box-sizing:border-box;color:var(--side-ink);flex:0 0 216px;padding:var(--space-sm) var(--space-sm) var(--space-lg);text-align:left}.ds-sidebar-group{color:var(--side-group-ink);font-size:var(--fs-small);font-weight:var(--fw-heading);margin:var(--space-md) 0 var(--space-xs);padding:0 var(--space-sm)}.ds-sidebar-item{background:none;border:2px solid #0000;border-radius:var(--radius-md);box-sizing:border-box;color:inherit;cursor:pointer;display:block;font:inherit;padding:.35rem var(--space-sm);text-align:left;width:100%}.ds-sidebar-item:hover{background-color:var(--side-hover-bg)}.ds-sidebar-item.active{background-color:var(--side-active-bg);color:var(--side-active-ink)}.main-content{background-color:var(--p-bg);flex:1 1;min-width:0;padding:var(--space-lg)}.ds-container{background-color:var(--card-bg);border:var(--border-width) var(--border-style) var(--panel-border);border-radius:var(--radius-lg);box-shadow:var(--panel-shadow);box-sizing:border-box;margin:0 auto;max-width:900px;padding:var(--space-lg)}:where(.main-content) :where(h2,h3,h4){font-family:var(--f-display);font-weight:var(--fw-heading);letter-spacing:var(--tracking-heading)}:where(.main-content) :where(h2){font-size:var(--fs-h2);line-height:1.1;margin:0 0 var(--space-sm)}:where(.main-content) :where(h3){font-size:var(--fs-h3)}:where(.main-content) :where(button){background-color:var(--btn-bg);border:var(--border-width) var(--border-style) var(--btn-border);border-radius:var(--radius-md);box-shadow:var(--btn-shadow);color:var(--btn-ink);cursor:pointer;font-family:var(--f-body);font-size:var(--fs-base);font-weight:var(--fw-control);padding:.45rem .9rem}:where(.main-content) :where(button:hover:not(:disabled)){background-color:var(--btn-hover-bg);color:var(--btn-hover-ink)}:where(.main-content) :where(button:active:not(:disabled)){transform:var(--btn-active-transform)}:where(.main-content) :where(button:disabled){cursor:not-allowed;opacity:.55}:where(.main-content) :where(input:not([type=checkbox],[type=radio],[type=range]),select,textarea){background-color:var(--input-bg);border:var(--border-width) var(--border-style) var(--input-border-color);border-radius:var(--radius-md);box-sizing:border-box;color:var(--input-ink);font-family:var(--f-body);font-size:var(--fs-base);max-width:100%;padding:.45rem .6rem}:where(.main-content) :where(input,textarea)::placeholder{color:var(--p-muted);opacity:1}:where(.main-content) :where(input[type=checkbox],input[type=radio],input[type=range]){accent-color:var(--p-accent)}.App :focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.ds-controls{display:flex;flex-wrap:wrap;gap:var(--space-sm);justify-content:center;margin-top:var(--space-md)}.ds-controls input{flex:1 1;max-width:300px;min-width:0}:where(.main-content) :where(table){border-collapse:collapse;max-width:100%}:where(.main-content) :where(th,td){border:var(--border-width) var(--border-style) var(--panel-border);padding:var(--space-xs) var(--space-sm)}:where(.main-content) :where(code){background-color:var(--p-surface);border-radius:var(--radius-sm);color:var(--p-ink);font-family:var(--f-data);padding:.05rem .3rem}.error-message{background-color:var(--error-bg);border-radius:var(--radius-sm);color:var(--error-text);margin-bottom:var(--space-md);padding:.75rem}.empty-message{color:var(--empty-message);font-style:italic}:where(.main-content) :where(svg text){font-family:var(--f-data)}@media (max-width:700px){.app-layout{flex-direction:column}.ds-sidebar{flex-basis:auto}.main-content{padding:var(--space-sm)}.ds-container{padding:var(--space-md)}}@media (prefers-reduced-motion:reduce){.App *,.App :after,.App :before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}[data-style=chalkboard]{--f-data:"Patrick Hand","Comic Sans MS",cursive;--fs-base:1.15rem;--fs-small:1rem;--fs-h1:2.4rem;--fs-h2:3.4rem;--fs-h3:1.9rem;--fs-cell:1.4rem;--fw-heading:700;--fw-control:400;--lh-body:1.45;--space-xs:0.35rem;--space-sm:0.65rem;--space-md:1.25rem;--space-lg:2rem;--space-xl:3rem;--border-width:2px;--radius-sm:255px 15px 225px 15px/15px 225px 15px 255px;--radius-md:225px 15px 255px 15px/15px 255px 15px 225px;--radius-lg:15px 225px 15px 255px/255px 15px 225px 15px;--btn-bg:#0000;--btn-ink:var(--p-ink);--btn-border:var(--p-accent);--btn-hover-bg:var(--p-accent);--btn-hover-ink:var(--p-accent-ink);--btn-active-transform:translateY(1px);--input-bg:#0000;--input-border-color:var(--p-muted);--focus-ring:var(--p-ink);--panel-border:var(--p-line);--nav-bg:var(--p-bg);--side-bg:var(--p-bg);--side-group-ink:var(--p-ink);--side-hover-bg:var(--p-surface);--side-active-bg:#0000;--side-active-ink:var(--p-ink);--state-active:#ffe27a;--state-visited:#8fd3ff;--state-found:#a8e6a1;--state-danger:#ff8a80;--state-info:#c7b8ff;--island-1:#ffe27a;--island-2:#a8e6a1;--island-3:#c7b8ff;--island-4:#ff9fb2;--island-5:#8fd3ff;--island-ink:var(--p-ink);--card-bg:var(--p-bg);--main-bg:var(--p-bg);--card-shadow:#0000;--input-border:var(--p-muted);--stack-item-bg:var(--p-bg);--stack-item-text:var(--p-ink);--error-bg:#0000;--error-border:var(--state-danger);--error-text:var(--state-danger);--cell-border:3px solid var(--p-cell);--spare-border:3px dashed var(--p-muted);--ring-active:4px solid var(--state-active);--ring-visited:3px dashed var(--state-visited);--ring-found:6px double var(--state-found);--ring-danger:3px dashed var(--state-danger);--edge-width:2;--edge-color:var(--p-muted);--node-stroke:3;--stroke-active:4;--stroke-visited:3;--stroke-found:5;--stroke-danger:3;--dash-spare:5 4;--dash-visited:7 5;--dash-danger:4 4;--dash-info:2 5;--chalk-line:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='6' preserveAspectRatio='none'%3E%3Cpath d='M0 3c60-2 110 2 180 0s120-2 180 .5S490 5 600 3' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E");font-synthesis:none}[data-style=chalkboard][data-palette=blackout]{color-scheme:dark}[data-style=chalkboard] .main-content{background-image:radial-gradient(60% 40% at 20% 15%,color-mix(in srgb,var(--p-ink) 5%,#0000),#0000),radial-gradient(50% 45% at 85% 70%,color-mix(in srgb,var(--p-ink) 4%,#0000),#0000)}[data-style=chalkboard] .navbar{padding:var(--space-sm) var(--space-lg) calc(var(--space-sm) + 6px)}[data-style=chalkboard] .navbar:after{background-color:var(--nav-ink);bottom:0;content:"";height:6px;left:0;-webkit-mask:var(--chalk-line) repeat-x left center /600px 6px;mask:var(--chalk-line) repeat-x left center /600px 6px;position:absolute;right:0}[data-style=chalkboard] .nav-logo{line-height:1.1;transform:rotate(-1deg)}[data-style=chalkboard] .ds-sidebar{border-right:2px dashed var(--p-line);flex-basis:232px;padding:var(--space-sm) var(--space-md) var(--space-lg)}[data-style=chalkboard] .ds-sidebar-group{font-family:var(--f-display);font-size:1.6rem;line-height:1.1;margin:var(--space-lg) 0 var(--space-sm);padding:0 var(--space-sm)}[data-style=chalkboard] .ds-sidebar-group:after{background-color:var(--p-muted);content:"";display:block;height:6px;margin-top:2px;-webkit-mask:var(--chalk-line) no-repeat left center /100% 6px;mask:var(--chalk-line) no-repeat left center /100% 6px}[data-style=chalkboard] .ds-sidebar-item{border-radius:var(--radius-md);margin:2px 0;padding:.3rem var(--space-sm);position:relative}[data-style=chalkboard] .ds-sidebar-item.active{border:3px solid var(--p-cell)}[data-style=chalkboard] .ds-sidebar-item.active:after{border:2px solid color-mix(in srgb,var(--p-cell) 55%,#0000);border-radius:var(--radius-lg);content:"";inset:-3px;pointer-events:none;position:absolute;transform:rotate(.7deg)}[data-style=chalkboard] .theme-menu-button{border-color:var(--p-accent)}[data-style=chalkboard] .theme-menu-button:hover{background-color:var(--p-accent);color:var(--p-accent-ink)}[data-style=chalkboard] .theme-menu-button[aria-expanded=true]{border:3px solid var(--p-cell);color:var(--p-cell)}[data-style=chalkboard] .theme-menu-button[aria-expanded=true]:hover{background-color:var(--p-cell);color:var(--p-cell-ink)}[data-style=chalkboard] .theme-menu-panel{border-color:var(--p-muted);border-width:3px}[data-style=chalkboard] .theme-menu-heading{font-size:var(--fs-h3);line-height:1.1}[data-style=chalkboard] .theme-menu-row{border-radius:var(--radius-md)}[data-style=chalkboard] .theme-menu-option:hover .theme-menu-row{background-color:initial;border-color:var(--p-accent)}[data-style=chalkboard] .theme-menu-option input:checked+.theme-menu-row{border:3px solid var(--p-cell)}[data-style=chalkboard] .theme-menu-swatch{border-radius:var(--radius-sm)}[data-style=chalkboard] .theme-menu-name{font-size:1.3rem}[data-style=chalkboard] .main-content h2{transform:rotate(-1deg)}[data-style=chalkboard] .main-content h3{line-height:1.15}[data-style=chalkboard] .main-content strong{color:var(--p-cell)}[data-style=chalkboard] .main-content code{background:none;color:var(--p-cell)}[data-style=chalkboard] .main-content .control-btn{background:var(--btn-bg);border:var(--border-width) solid var(--btn-border);color:var(--btn-ink);font-size:var(--fs-base);min-height:44px;padding:.35rem 1.1rem}[data-style=chalkboard] .main-content .control-btn:hover:not(:disabled){background:var(--btn-hover-bg);color:var(--btn-hover-ink)}[data-style=chalkboard] .main-content .control-btn:disabled{border-style:dashed}[data-style=chalkboard] .main-content :is(input:not([type=checkbox],[type=radio],[type=range]),select,textarea){background:#0000;border:0;border-bottom:2px solid var(--input-border-color);border-radius:0;color:var(--input-ink);font-size:var(--fs-base);min-height:44px;padding:.25rem .15rem}[data-style=chalkboard] .main-content :is(input,select,textarea):hover:not(:disabled,[type=checkbox],[type=radio],[type=range]){border-bottom-color:var(--p-accent)}[data-style=chalkboard] .main-content ::placeholder{color:var(--p-muted);opacity:1}[data-style=chalkboard] .main-content option{background-color:var(--p-surface);color:var(--p-ink)}[data-style=chalkboard] .main-content :is(th,td):not(.skip-list-cell,.skip-list-level-label){border:2px solid var(--p-line);padding:var(--space-xs) var(--space-sm)}[data-style=chalkboard] .main-content th:not(.skip-list-level-label){border-bottom-color:var(--p-muted);color:var(--p-muted);font-weight:400}[data-style=chalkboard] .main-content caption{color:var(--p-muted);font-weight:400;padding-bottom:var(--space-xs)}[data-style=chalkboard] .error-message{border:3px dashed var(--error-border);border-radius:var(--radius-md);font-weight:400}[data-style=chalkboard] .empty-message{font-style:normal}@keyframes chalk-write{0%{clip-path:inset(-10px 100% -10px -10px)}to{clip-path:inset(-10px -10px -10px -10px)}}[data-style=chalkboard] .main-content svg text{font-size:1rem;font-weight:400}[data-style=chalkboard] :is(.graph-weight,.binary-tree-badge,.balanced-trees-balance,.kdtree-label,.range-query-node-index,.graph-step){stroke:var(--p-bg);stroke-width:4px;stroke-linejoin:round;paint-order:stroke}[data-style=chalkboard] .main-content svg{overflow:visible}[data-style=chalkboard] :is(.trie-svg,.intervals-svg,.range-query-svg,.array-cells,.range-query-fenwick,.lru-cache-list,.union-find-table,.suffix-array-table,.bloom-filter-row){margin-inline:auto}[data-style=chalkboard] :is(.queue-row,.heap-row,.linked-list-chain,.string-cells,.suffix-array-chars,.bloom-filter-row){justify-content:safe center}[data-style=chalkboard] .ds-controls input:not([type=checkbox],[type=radio],[type=range]){min-width:5.5rem}@media (max-width:700px){[data-style=chalkboard] .ds-controls>input:not([type=checkbox],[type=radio],[type=range]){flex:1 1 7rem}[data-style=chalkboard] .ds-sidebar{grid-column-gap:var(--space-sm);border-bottom:2px dashed var(--p-line);border-right:0;column-gap:var(--space-sm);display:grid;grid-template-columns:1fr 1fr;padding:0 var(--space-sm) var(--space-sm)}[data-style=chalkboard] .ds-sidebar-group{margin-top:var(--space-md)}[data-style=chalkboard] .navbar{padding-inline:var(--space-md)}}[data-style=chalkboard] .main-content .control-btn[aria-pressed=true],[data-style=chalkboard] .main-content .control-btn[aria-pressed=true]:disabled{background:#0000;border:3px solid var(--p-cell);color:var(--p-ink);cursor:default;opacity:1}[data-style=chalkboard] :is(.array-complexity,.array-legend,.array-controls label,.array-cell-index,.string-complexity,.string-index,.queue-slot,.queue-label,.queue-stack-title,.linked-list-tags,.linked-list-index,.heap-slot){font-size:var(--fs-small)}[data-style=chalkboard] .stack-view-item.stack-view-top:after{font-size:var(--fs-small)}[data-style=chalkboard] :is(.queue-tag,.linked-list-tags){min-height:calc(var(--fs-small)*var(--lh-body))}[data-style=chalkboard] .array-view{max-width:900px}[data-style=chalkboard] :is(.array-scroll,.stack-view-board,.matrix-view-board,.queue-scroll,.linked-list-scroll,.hash-table-scroll,.string-cells,.heap-scroll,.binary-tree-scroll,.bst-scroll,.graph-scroll){background:none;border:0;padding:var(--space-sm)}[data-style=chalkboard] :is(.array-cell-used,.stack-view-item,.queue-cell,.linked-list-node,.hash-table-entry,.string-cell,.heap-cell){background:none;border:var(--cell-border);border-radius:var(--radius-sm);box-shadow:none;color:var(--stack-item-text);font-size:var(--fs-cell);font-weight:400}[data-style=chalkboard] :is(.array-cell-used,.queue-cell:not(.queue-cell-empty),.linked-list-node,.hash-table-entry,.heap-cell){animation:chalk-write .42s ease-out backwards}[data-style=chalkboard] .stack-view-item.stack-view-new{animation:chalk-write .42s ease-out backwards}[data-style=chalkboard] .string-cell:nth-child(2n),[data-style=chalkboard] :is(.array-cell-wrap,.queue-slot,.heap-slot,.string-cell,.bloom-filter-slot,.suffix-array-slot,.range-query-col):nth-child(2n) :is(.array-cell,.queue-cell,.heap-cell,.bloom-filter-bit,.suffix-array-char,.range-query-cell){border-radius:var(--radius-lg)}[data-style=chalkboard] :is(.array-cell-free,.queue-cell-empty){background:none;border:var(--spare-border);color:var(--p-muted)}[data-style=chalkboard] :is(.binary-tree-edge,.bst-edge,.heap-edge,.graph-edge line){stroke:var(--edge-color);stroke-width:var(--edge-width);stroke-linecap:round}[data-style=chalkboard] :is(.binary-tree-node circle,.bst-node circle,.heap-node,.graph-node circle){fill:var(--stack-item-bg);stroke:var(--p-cell);stroke-width:var(--node-stroke)}[data-style=chalkboard] :is(.binary-tree-node text,.bst-node text,.heap-node-text,.graph-node text){fill:var(--stack-item-text)}[data-style=chalkboard] .array-cells{gap:10px}[data-style=chalkboard] .array-cell{height:60px;min-width:60px}[data-style=chalkboard] .array-stats{gap:var(--space-lg)}[data-style=chalkboard] .array-note{background:none;border-left:3px dashed var(--p-accent)}[data-style=chalkboard] :is(.array-result,.stack-view-result,.queue-result,.hash-table-result,.linked-list-result,.string-result,.matrix-view-result,.binary-tree-result,.bst-result,.heap-result,.graph-result){background:var(--p-surface);border:0;border-left:3px dashed var(--p-accent);border-radius:0;color:var(--p-ink);font-weight:400;margin:var(--space-sm) 0;overflow-wrap:anywhere;padding:var(--space-xs) var(--space-sm);text-align:left}[data-style=chalkboard] .array-result code{background:none}[data-style=chalkboard] .string-char{font-size:var(--fs-cell);padding:.3rem .5rem}[data-style=chalkboard] .string-index{background:none;border-top:2px solid var(--p-cell);color:var(--p-muted)}[data-style=chalkboard] .string-cells{gap:8px}[data-style=chalkboard] .string-cell.string-cell-hit{border-color:var(--state-found);color:var(--state-found);outline:2px solid var(--state-found);outline-offset:1px}[data-style=chalkboard] .hash-table-index{background:none;border:var(--spare-border);border-style:solid;color:var(--p-muted);font-weight:400}[data-style=chalkboard] .hash-table-row{gap:var(--space-sm)}[data-style=chalkboard] .hash-table-null{font-style:normal}[data-style=chalkboard] .hash-table-arrow{color:var(--p-muted)}[data-style=chalkboard] .hash-table-entry-key,[data-style=chalkboard] .hash-table-entry-value{background:none;color:var(--stack-item-text);font-weight:400}[data-style=chalkboard] .hash-table-entry-value{border-left:2px solid var(--p-cell)}[data-style=chalkboard] .linked-list-val{font-weight:400}[data-style=chalkboard] .linked-list-ptr{border-left:2px solid var(--p-cell);color:var(--p-muted)}[data-style=chalkboard] .linked-list-tags{color:var(--p-cell);font-weight:400}[data-style=chalkboard] .linked-list-index{color:var(--p-muted);opacity:1}[data-style=chalkboard] :is(.linked-list-arrow,.linked-list-end){color:var(--p-muted);font-style:normal}[data-style=chalkboard] .linked-list-highlight .linked-list-node{border-color:var(--state-active);color:var(--state-active);outline:var(--ring-active);outline-offset:2px}[data-style=chalkboard] .linked-list-cycle-target .linked-list-node{border-style:dashed}[data-style=chalkboard] .stack-view-item{margin:var(--space-xs) 0}[data-style=chalkboard] .stack-view-item.stack-view-top:after{color:var(--p-muted)}[data-style=chalkboard] .queue-row{gap:var(--space-sm)}[data-style=chalkboard] .queue-stack{border:var(--spare-border);border-radius:var(--radius-lg);padding:var(--space-sm)}[data-style=chalkboard] .queue-tag{color:var(--p-cell);font-weight:400}[data-style=chalkboard] .queue-cell.queue-in-window,[data-style=chalkboard] .queue-in-window{border-color:var(--state-active);color:var(--state-active);outline:var(--ring-active);outline-offset:2px}[data-style=chalkboard] .matrix-view-grid{gap:6px}[data-style=chalkboard] .matrix-view-cell{background:none;border:2px solid var(--p-line);border-radius:var(--radius-sm);color:var(--p-muted);font-size:var(--fs-base);font-weight:400}[data-style=chalkboard] .matrix-view-island{--hatch:var(--p-cell);--hatch-angle:90deg;background:repeating-linear-gradient(var(--hatch-angle),color-mix(in srgb,var(--hatch) 30%,#0000) 0 2px,#0000 2px 7px);border:3px solid var(--hatch);color:var(--island-ink)}[data-style=chalkboard] .matrix-view-island-1{--hatch:var(--island-1);--hatch-angle:45deg}[data-style=chalkboard] .matrix-view-island-2{--hatch:var(--island-2);--hatch-angle:135deg}[data-style=chalkboard] .matrix-view-island-3{--hatch:var(--island-3);--hatch-angle:0deg}[data-style=chalkboard] .matrix-view-island-4{--hatch:var(--island-4);--hatch-angle:90deg}[data-style=chalkboard] .matrix-view-island-5{--hatch:var(--island-5);--hatch-angle:20deg}[data-style=chalkboard] .matrix-view-cell:hover:not(:disabled){background:var(--btn-hover-bg);border-color:var(--btn-hover-bg);color:var(--btn-hover-ink)}[data-style=chalkboard] .matrix-view-cell.matrix-view-selected{outline:var(--ring-active);outline-offset:1px}[data-style=chalkboard] .binary-tree-node.binary-tree-visited circle{stroke:var(--state-visited);stroke-width:var(--stroke-visited);stroke-dasharray:var(--dash-visited)}[data-style=chalkboard] .binary-tree-node.binary-tree-visited text{fill:var(--state-visited)}[data-style=chalkboard] .binary-tree-node.binary-tree-current circle{stroke:var(--state-active);stroke-width:var(--stroke-active);stroke-dasharray:none}[data-style=chalkboard] .binary-tree-node.binary-tree-current text{fill:var(--state-active)}[data-style=chalkboard] .binary-tree-node.binary-tree-lca circle{stroke:var(--state-found);stroke-width:var(--stroke-found);stroke-dasharray:none}[data-style=chalkboard] .binary-tree-node.binary-tree-lca text{fill:var(--state-found)}[data-style=chalkboard] .binary-tree-node text.binary-tree-badge{fill:var(--p-muted)}[data-style=chalkboard] .bst-node-path circle{stroke:var(--state-active);stroke-width:var(--stroke-active)}[data-style=chalkboard] .bst-node-path text{fill:var(--state-active)}[data-style=chalkboard] .heap-row{gap:var(--space-sm)}[data-style=chalkboard] .heap-node.heap-node-hl{stroke:var(--state-active);stroke-width:var(--stroke-active)}[data-style=chalkboard] .heap-cell.heap-cell-hl{border-color:var(--state-active);color:var(--state-active);outline:var(--ring-active);outline-offset:2px}[data-style=chalkboard] .graph-edge.graph-edge-hot line{stroke:var(--state-active);stroke-width:var(--stroke-active)}[data-style=chalkboard] .graph-arrow-head{fill:var(--edge-color)}[data-style=chalkboard] .graph-weight{fill:var(--p-cell);stroke:var(--p-bg);stroke-width:4px;paint-order:stroke}[data-style=chalkboard] .graph-node-hot circle{stroke:var(--state-active);stroke-width:var(--stroke-active)}[data-style=chalkboard] .graph-node-hot text{fill:var(--state-active)}[data-style=chalkboard] .graph-node-hot .graph-step{fill:var(--p-muted)}[data-style=chalkboard] .hash-table-scroll{max-height:480px}[data-style=chalkboard] .ds-container.fibonacci-heap{max-width:900px}[data-style=chalkboard] :is(.lru-cache-sentinel,.lru-cache-tag,.lru-cache-pointer,.b-tree-meta,.b-tree-chain){font-size:var(--fs-small)}[data-style=chalkboard] :is(.trie-scroll,.union-find-scroll,.balanced-trees-scroll,.b-tree-scroll,.intervals-scroll,.lru-cache-scroll){padding:var(--space-sm)}[data-style=chalkboard] :is(.trie-result,.union-find-result,.balanced-trees-result,.b-tree-result,.intervals-result,.lru-cache-result){background:var(--p-surface);border-left:3px dashed var(--p-accent);color:var(--p-ink);font-weight:400;margin:var(--space-sm) 0;overflow-wrap:anywhere;padding:var(--space-xs) var(--space-sm);text-align:left}[data-style=chalkboard] :is(.trie-edge,.union-find-edge,.balanced-trees-edge,.b-tree-edge){stroke:var(--edge-color);stroke-width:var(--edge-width);stroke-linecap:round}[data-style=chalkboard] :is(.union-find-node circle,.balanced-trees-disc,.b-tree-cell,.intervals-bar){fill:var(--stack-item-bg);stroke:var(--p-cell);stroke-width:var(--node-stroke)}[data-style=chalkboard] :is(.trie-node text,.union-find-node text,.balanced-trees-node text,.b-tree-text,.intervals-bar-text){fill:var(--stack-item-text)}[data-style=chalkboard] .trie-node circle{fill:var(--stack-item-bg);stroke:var(--p-muted);stroke-width:2}[data-style=chalkboard] .trie-word circle{fill:var(--p-cell);stroke:var(--p-cell);stroke-width:var(--node-stroke)}[data-style=chalkboard] .trie-word text{fill:var(--p-cell-ink)}[data-style=chalkboard] .trie-node.trie-hot circle{stroke:var(--state-active);stroke-width:var(--stroke-active)}[data-style=chalkboard] .trie-node.trie-hot:not(.trie-word) text{fill:var(--state-active)}[data-style=chalkboard] .trie-edge.trie-hot{stroke:var(--state-active);stroke-width:var(--stroke-active)}[data-style=chalkboard] .union-find-root circle{stroke-width:var(--stroke-found)}[data-style=chalkboard] .balanced-trees-node .balanced-trees-balance{fill:var(--p-muted)}[data-style=chalkboard] .balanced-trees-node-mark .balanced-trees-ring{stroke:var(--state-active);stroke-width:var(--stroke-active)}[data-style=chalkboard] :is(.balanced-trees-node-red,.balanced-trees-node-unbalanced) .balanced-trees-disc{fill:var(--stack-item-bg);stroke:var(--state-danger);stroke-width:var(--stroke-danger);stroke-dasharray:var(--dash-danger)}[data-style=chalkboard] :is(.balanced-trees-node-red,.balanced-trees-node-unbalanced) text:not(.balanced-trees-balance){fill:var(--state-danger)}[data-style=chalkboard] .balanced-trees-node-black .balanced-trees-disc{fill:var(--stack-item-bg);stroke:var(--p-ink);stroke-width:var(--node-stroke)}[data-style=chalkboard] .balanced-trees-node-black text:not(.balanced-trees-balance){fill:var(--p-ink)}[data-style=chalkboard] .balanced-trees-swatch-red{background:none;border:2px dashed var(--state-danger)}[data-style=chalkboard] .balanced-trees-swatch-black{background:none;border:2px solid var(--p-ink)}[data-style=chalkboard] .main-content .control-btn.balanced-trees-on{border:3px solid var(--p-cell);outline:0}[data-style=chalkboard] .balanced-trees-step-list{text-align:left}[data-style=chalkboard] .balanced-trees-step{border:2px solid #0000;border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:400;min-height:36px;padding:.15rem var(--space-sm)}[data-style=chalkboard] .balanced-trees-step:hover:not(:disabled){background:var(--btn-hover-bg);color:var(--btn-hover-ink)}[data-style=chalkboard] .balanced-trees-step[aria-current=step]{border:3px solid var(--p-cell);font-weight:400}[data-style=chalkboard] .balanced-trees-arrow{color:var(--p-muted);font-weight:400}[data-style=chalkboard] :is(.b-tree-cell-router,.b-tree-cell-value){stroke:var(--p-muted);stroke-width:2}[data-style=chalkboard] :is(.b-tree-text-router,.b-tree-value){fill:var(--p-ink)}[data-style=chalkboard] .b-tree-node-hl .b-tree-cell{stroke:var(--state-active);stroke-width:var(--stroke-active)}[data-style=chalkboard] .b-tree-cell.b-tree-cell-hit{fill:var(--stack-item-bg);stroke:var(--state-found);stroke-width:var(--stroke-found)}[data-style=chalkboard] .b-tree-cell-hit+.b-tree-text{fill:var(--state-found)}[data-style=chalkboard] .b-tree-link{stroke:var(--edge-color);stroke-width:var(--edge-width)}[data-style=chalkboard] .b-tree-link.b-tree-link-hl{stroke:var(--state-active);stroke-width:var(--stroke-active)}[data-style=chalkboard] .b-tree-arrowhead{fill:var(--edge-color)}[data-style=chalkboard] .b-tree-events{text-align:left}[data-style=chalkboard] .intervals-tick{stroke:var(--p-line)}[data-style=chalkboard] .intervals-tick-text{fill:var(--p-muted)}[data-style=chalkboard] .intervals-bar.intervals-bar-out{stroke:var(--state-visited);stroke-width:var(--stroke-visited);stroke-dasharray:var(--dash-visited)}[data-style=chalkboard] .intervals-bar.intervals-bar-new{stroke:var(--state-active);stroke-width:var(--stroke-active)}[data-style=chalkboard] .lru-cache-node{animation:chalk-write .42s ease-out backwards;border:var(--cell-border);border-radius:var(--radius-sm)}[data-style=chalkboard] .lru-cache-sentinel{border:var(--spare-border);border-radius:var(--radius-sm);color:var(--p-muted)}[data-style=chalkboard] .lru-cache-tag{color:var(--p-cell)}[data-style=chalkboard] :is(.lru-cache-node-key,.lru-cache-node-value){background:none;color:var(--stack-item-text);font-size:var(--fs-cell);font-weight:400}[data-style=chalkboard] .lru-cache-node .lru-cache-node-value{border-top:2px solid var(--p-cell)}[data-style=chalkboard] .lru-cache-map-row .lru-cache-node-key{border:var(--cell-border)}[data-style=chalkboard] :is(.lru-cache-arrow,.lru-cache-pointer){color:var(--p-muted)}[data-style=chalkboard] .main-content .control-btn.balanced-trees-on:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}[data-style=chalkboard] :is(.range-query-legend,.range-query-sub,.bloom-filter-index,.suffix-array-index,.fibonacci-heap-field,.fibonacci-heap-key,.fibonacci-heap-deg,.fibonacci-heap-min){font-size:var(--fs-small)}[data-style=chalkboard] :is(.range-query-scroll,.skip-list-scroll,.bloom-filter-scroll,.kdtree-scroll,.quadtree-scroll,.suffix-array-scroll,.fibonacci-heap-scroll){background:none;border:0;padding:var(--space-sm)}[data-style=chalkboard] :is(.range-query-result,.skip-list-result,.bloom-filter-result,.kdtree-result,.quadtree-result,.suffix-array-result,.fibonacci-heap-result){background:var(--p-surface);border:0;border-left:3px dashed var(--p-accent);border-radius:0;color:var(--p-ink);font-weight:400;margin:var(--space-sm) 0;overflow-wrap:anywhere;padding:var(--space-xs) var(--space-sm);text-align:left}[data-style=chalkboard] :is(.range-query-cell,.bloom-filter-on,.suffix-array-char,.fibonacci-heap-node){background:none;border:var(--cell-border);color:var(--stack-item-text);font-weight:400}[data-style=chalkboard] :is(.range-query-cell,.bloom-filter-on,.suffix-array-char){border-radius:var(--radius-sm);font-size:var(--fs-cell)}[data-style=chalkboard] :is(.range-query-edge,.kdtree-edge,.fibonacci-heap-edge,.fibonacci-heap-root-link,.fibonacci-heap-root-wrap){stroke:var(--edge-color);stroke-width:var(--edge-width);stroke-linecap:round}[data-style=chalkboard] :is(.range-query-node,.kdtree-node){fill:var(--stack-item-bg);stroke:var(--p-cell);stroke-width:var(--node-stroke)}[data-style=chalkboard] :is(.range-query-node-text,.kdtree-node-text,.kdtree-axis-text){fill:var(--stack-item-text)}[data-style=chalkboard] .range-query-fenwick{gap:var(--space-sm)}[data-style=chalkboard] .range-query-cell.range-query-array{border:var(--spare-border);border-style:solid;color:var(--p-muted);opacity:1}[data-style=chalkboard] .range-query-cell.range-query-hit{border-color:var(--state-active);box-shadow:none;color:var(--state-active);outline:var(--ring-active);outline-offset:2px}[data-style=chalkboard] .range-query-cell.range-query-minus{border-color:var(--state-danger);border-style:dashed;box-shadow:none;color:var(--state-danger);outline:var(--ring-danger);outline-offset:2px}[data-style=chalkboard] .range-query-sub{color:var(--p-muted)}[data-style=chalkboard] .range-query-leaf{stroke-width:var(--stroke-active)}[data-style=chalkboard] .range-query-node.range-query-node-hit{stroke:var(--state-active);stroke-width:var(--stroke-active)}[data-style=chalkboard] .range-query-node-index{fill:var(--p-muted)}[data-style=chalkboard] .skip-list-grid{border-spacing:3px 8px}[data-style=chalkboard] .skip-list-cell{background-image:linear-gradient(var(--edge-color),var(--edge-color));font-size:var(--fs-base);height:44px;min-width:50px}[data-style=chalkboard] .skip-list-level-label{color:var(--p-muted);font-weight:400}[data-style=chalkboard] .skip-list-node{background:var(--stack-item-bg);border:var(--cell-border);border-radius:var(--radius-sm);color:var(--stack-item-text);font-weight:400}[data-style=chalkboard] :is(.skip-list-head,.skip-list-nil){background:var(--stack-item-bg);border:var(--spare-border);border-radius:var(--radius-sm);color:var(--p-muted);opacity:1}[data-style=chalkboard] .skip-list-cell.skip-list-visited{border-color:var(--state-active);color:var(--state-active);outline:var(--ring-active);outline-offset:-1px}[data-style=chalkboard] .bloom-filter-bit{background:none;border:var(--spare-border);border-radius:var(--radius-sm);color:var(--p-muted);font-size:var(--fs-base);font-weight:400;min-width:2.1rem}[data-style=chalkboard] .bloom-filter-bit.bloom-filter-on{border:var(--cell-border);color:var(--stack-item-text)}[data-style=chalkboard] .bloom-filter-bit.bloom-filter-hit{border-color:var(--state-active);color:var(--state-active);outline:var(--ring-active);outline-offset:2px}[data-style=chalkboard] .bloom-filter-row{gap:var(--space-xs)}[data-style=chalkboard] .bloom-filter-items li{border:var(--cell-border);border-radius:var(--radius-sm)}[data-style=chalkboard] .kdtree-frame{stroke:var(--p-muted);stroke-width:2}[data-style=chalkboard] .kdtree-split-x{stroke:var(--state-danger);stroke-width:2}[data-style=chalkboard] .kdtree-split-y{stroke:var(--state-visited);stroke-width:2;stroke-dasharray:var(--dash-spare)}[data-style=chalkboard] .kdtree-dot{fill:var(--p-cell);stroke:var(--p-bg);stroke-width:1}[data-style=chalkboard] :is(.kdtree-node,.kdtree-dot).kdtree-node-visited{stroke:var(--state-active);stroke-width:var(--stroke-active)}[data-style=chalkboard] :is(.kdtree-node,.kdtree-dot).kdtree-node-best{stroke:var(--state-found);stroke-width:var(--stroke-found)}[data-style=chalkboard] .kdtree-query{fill:var(--state-visited)}[data-style=chalkboard] .kdtree-label{fill:var(--p-muted)}[data-style=chalkboard] .kdtree-node{height:42px;transform:translate(-6px,-7px);width:52px}[data-style=chalkboard] .kdtree-node-text{transform:translateY(-1px)}[data-style=chalkboard] .kdtree-axis-text{transform:translateY(7px)}[data-style=chalkboard] .quadtree-svg{background:var(--p-bg);border:0}[data-style=chalkboard] .quadtree-cell{stroke:var(--p-line);stroke-width:2}[data-style=chalkboard] .quadtree-visited{fill:var(--state-visited);fill-opacity:.05;stroke:var(--state-visited);stroke-dasharray:var(--dash-visited)}[data-style=chalkboard] .quadtree-query{stroke:var(--state-active);stroke-width:var(--stroke-active)}[data-style=chalkboard] .quadtree-point{fill:var(--p-cell);stroke:var(--p-bg)}[data-style=chalkboard] .quadtree-point.quadtree-found{fill:var(--p-bg);stroke:var(--state-found);stroke-width:var(--stroke-active)}[data-style=chalkboard] .suffix-array-chars{gap:8px}[data-style=chalkboard] .suffix-array-char{min-width:2.4rem}[data-style=chalkboard] .suffix-array-index{color:var(--p-muted)}[data-style=chalkboard] .main-content .suffix-array-match td{background:none;border:3px solid var(--state-found);color:var(--state-found)}[data-style=chalkboard] .fibonacci-heap-node{border-radius:var(--radius-lg)}[data-style=chalkboard] .fibonacci-heap-node:hover:not(:disabled){background:var(--btn-hover-bg);border-color:var(--btn-hover-bg);color:var(--btn-hover-ink)}[data-style=chalkboard] .fibonacci-heap-node.fibonacci-heap-node-min{box-shadow:none;outline:4px double var(--state-found);outline-offset:0}[data-style=chalkboard] .fibonacci-heap-node.fibonacci-heap-node-mark{background:none;border-style:dashed;color:var(--stack-item-text)}[data-style=chalkboard] .fibonacci-heap-node.fibonacci-heap-node-selected{border-color:var(--state-active);color:var(--state-active);outline:var(--ring-active);outline-offset:2px}[data-style=chalkboard] .fibonacci-heap-arrow{fill:var(--edge-color)}[data-style=chalkboard] .fibonacci-heap-deg{color:inherit;opacity:1}[data-style=chalkboard] .fibonacci-heap-min{color:var(--state-found);font-weight:400}[data-style=chalkboard] .fibonacci-heap-min:after{border-top-color:var(--state-found)}[data-style=chalkboard] .fibonacci-heap-steps{text-align:left}[data-style=chalkboard] .fibonacci-heap-node.fibonacci-heap-node-min:focus-visible,[data-style=chalkboard] .fibonacci-heap-node:focus-visible{outline:3px dashed var(--focus-ring);outline-offset:5px}[data-style=chalkboard] .range-query-node-index{stroke:var(--card-bg);stroke-width:2px;stroke-linejoin:round;paint-order:stroke}[data-style=toy-blocks]{--f-data:"Fredoka","Trebuchet MS",sans-serif;--fs-base:1rem;--fs-small:0.9rem;--fs-h1:1.8rem;--fs-h2:2.8rem;--fs-h3:1.45rem;--fw-heading:600;--fw-control:600;--space-xs:0.35rem;--space-sm:0.625rem;--space-md:1.1rem;--space-lg:1.75rem;--space-xl:2.75rem;--border-width:2px;--radius-sm:14px;--radius-md:999px;--radius-lg:28px;--tb-edge:#9c6b8b;--tb-edge-hot:#b87400;--tb-under-cell:color-mix(in srgb,var(--p-cell) 68%,#000);--tb-under-accent:color-mix(in srgb,var(--p-accent) 68%,#000);--tb-under-plain:var(--p-line);--tb-under-panel:color-mix(in srgb,var(--p-line) 45%,var(--p-bg));--tb-under-active:#b87400;--tb-under-found:#065239;--tb-under-danger:#8f1626;--tb-under-info:#114e86;--tb-under-ink:#26061c;--tb-table-head:#ffd0e6;--tb-fill:var(--p-cell);--tb-ink:var(--p-cell-ink);--tb-under:var(--tb-under-cell);--tb-stroke:none;--tb-stroke-w:0;--btn-bg:var(--p-accent);--btn-ink:var(--p-accent-ink);--btn-border:#0000;--btn-shadow:0 4px 0 var(--tb-under-accent);--btn-hover-bg:#6a2fe0;--btn-hover-ink:var(--p-accent-ink);--btn-active-transform:translateY(4px);--input-bg:#fff;--input-border-color:var(--tb-edge);--focus-ring:var(--p-ink);--panel-bg:var(--p-surface);--panel-border:#0000;--panel-shadow:0 6px 0 var(--tb-under-panel);--nav-bg:var(--p-accent);--nav-ink:var(--p-accent-ink);--side-bg:var(--p-surface);--side-hover-bg:var(--p-bg);--side-active-bg:var(--p-accent);--side-active-ink:var(--p-accent-ink);--cell-shadow:0 5px 0 var(--tb-under);--edge-width:3;--state-active:#ffb800;--state-visited:#7a3ff2;--state-found:#0a7d56;--state-danger:#d7263d;--state-info:#1b74c5;--island-1:#ffb800;--island-2:#5fd6a6;--island-3:#c9a7ff;--island-4:#ff9fcb;--island-5:#8fd0ff;--island-ink:#3a0a26;--card-bg:var(--p-surface);--main-bg:var(--p-bg);--card-shadow:#0000;--input-border:var(--tb-edge);--debug-bg:#fff;--error-bg:var(--state-danger);--error-border:var(--state-danger);--error-text:#fff}@keyframes tb-bounce{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:none}}[data-style=toy-blocks] .navbar{box-shadow:0 5px 0 var(--tb-under-accent);padding:var(--space-sm) var(--space-md)}[data-style=toy-blocks] .theme-menu-button{background-color:#fff;border:none;box-shadow:0 4px 0 var(--tb-under-accent);color:var(--p-accent)}[data-style=toy-blocks] .theme-menu-button:hover{background-color:var(--p-bg)}[data-style=toy-blocks] .theme-menu-button:active,[data-style=toy-blocks] .theme-menu-button[aria-expanded=true]{background-color:var(--p-cell);box-shadow:none;color:var(--p-cell-ink);transform:translateY(4px)}[data-style=toy-blocks] .App .navbar .theme-menu-button:focus-visible{outline:3px solid #fff;outline-offset:3px}[data-style=toy-blocks] .theme-menu-panel{border:none;box-shadow:0 6px 0 var(--tb-under-accent);top:calc(100% + .9rem)}[data-style=toy-blocks] .theme-menu-row{background-color:#fff;border:none;box-shadow:0 4px 0 var(--tb-under-plain);margin-top:var(--space-sm);padding:var(--space-xs) var(--space-md) var(--space-xs) var(--space-xs)}[data-style=toy-blocks] .theme-menu-option:hover .theme-menu-row{background-color:var(--p-bg)}[data-style=toy-blocks] .theme-menu-option input:checked+.theme-menu-row{background-color:var(--p-accent);box-shadow:0 4px 0 var(--tb-under-accent);color:var(--p-accent-ink)}[data-style=toy-blocks] .theme-menu-option input:checked+.theme-menu-row .theme-menu-palette{color:var(--p-accent-ink)}[data-style=toy-blocks] .theme-menu-option input:active+.theme-menu-row{box-shadow:none;transform:translateY(4px)}[data-style=toy-blocks] .theme-menu-option input:focus-visible+.theme-menu-row{outline-offset:3px}[data-style=toy-blocks] .theme-menu-swatch{border-radius:999px;box-shadow:none;padding:7px 8px}[data-style=toy-blocks] .theme-menu-swatch span{border-radius:3px}[data-style=toy-blocks] .ds-sidebar{padding:var(--space-xs) var(--space-sm) var(--space-lg)}[data-style=toy-blocks] .ds-sidebar-group{font-size:var(--fs-small);margin:var(--space-md) 0 var(--space-xs);padding:0 var(--space-sm)}[data-style=toy-blocks] .ds-sidebar-item{border:none;font-weight:400;margin-bottom:4px;padding:.4rem .8rem}[data-style=toy-blocks] .ds-sidebar-item.active{box-shadow:0 4px 0 var(--tb-under-accent);font-weight:600}[data-style=toy-blocks] .ds-sidebar-item:active{transform:translateY(2px)}[data-style=toy-blocks] .ds-container{border:none;max-width:100%}[data-style=toy-blocks] .ds-container p{margin-inline:auto;max-width:75ch;text-align:center}[data-style=toy-blocks] .ds-controls{gap:10px 10px;margin-top:var(--space-md)}[data-style=toy-blocks] .App .main-content .control-btn{background:var(--btn-bg);border:none;border-radius:var(--radius-md);box-shadow:var(--btn-shadow);color:var(--btn-ink);font-weight:600;margin-bottom:4px;padding:.55rem 1.15rem}[data-style=toy-blocks] .App .main-content .control-btn:hover:not(:disabled){background:var(--btn-hover-bg);color:var(--btn-hover-ink)}[data-style=toy-blocks] .App .main-content .control-btn[aria-pressed=false],[data-style=toy-blocks] .App .main-content .control-btn~.control-btn{background:#fff;box-shadow:0 4px 0 var(--tb-under-plain);color:var(--p-ink)}[data-style=toy-blocks] .App .main-content .control-btn[aria-pressed=false]:hover:not(:disabled),[data-style=toy-blocks] .App .main-content .control-btn~.control-btn:hover:not(:disabled){background:var(--p-bg);color:var(--p-ink)}[data-style=toy-blocks] .App .main-content .control-btn[aria-pressed=true],[data-style=toy-blocks] .App .main-content .control-btn[aria-pressed=true]:hover:not(:disabled){background:var(--p-accent);box-shadow:none;color:var(--p-accent-ink);outline:3px solid var(--p-ink);outline-offset:1px;transform:translateY(4px)}[data-style=toy-blocks] .App .main-content .control-btn[aria-pressed=true]:disabled{opacity:1}[data-style=toy-blocks] .App .main-content .control-btn:active:not(:disabled),[data-style=toy-blocks] .App .main-content .control-btn:disabled{box-shadow:none;transform:translateY(4px)}[data-style=toy-blocks] .App .main-content :is(input:not([type=checkbox],[type=radio],[type=range]),select,textarea){background-color:var(--input-bg);border:2px solid var(--input-border-color);border-radius:var(--radius-sm);color:var(--input-ink);padding:.5rem .75rem}[data-style=toy-blocks] .App .main-content .ds-controls input{min-width:7rem}[data-style=toy-blocks] .App .main-content label select{margin-inline-start:var(--space-xs)}[data-style=toy-blocks] .App .main-content :is([class$=-scroll],.stack-view-board,.matrix-view-board){background-color:var(--main-bg);border:none;border-radius:var(--radius-lg);box-sizing:border-box;padding:var(--space-md)}[data-style=toy-blocks] .App .main-content [class$=-scroll]{margin-block:var(--space-sm)}[data-style=toy-blocks] .App .main-content [class$=-scroll]>svg,[data-style=toy-blocks] .App .main-content [class$=-scroll]>table{margin-inline:auto}[data-style=toy-blocks] .App .main-content [class$=-scroll]>svg{display:block}[data-style=toy-blocks] .App .main-content div[class$=-stats]{gap:10px}[data-style=toy-blocks] .App .main-content div[class$=-stats]>span,[data-style=toy-blocks] .App .main-content p[class$=-stats]{background-color:var(--p-bg);border-radius:var(--radius-sm);color:var(--p-ink);padding:.3rem .85rem}[data-style=toy-blocks] .App .main-content p[class$=-stats]{box-sizing:border-box;display:inline-block;margin:var(--space-xs) 0}[data-style=toy-blocks] .App .main-content :is([class$=-result],.array-note,.bst-note,.balanced-trees-note,.fibonacci-heap-note){background-color:#fff;border:none;border-radius:var(--radius-sm);box-shadow:0 4px 0 var(--tb-under-plain);color:var(--p-ink);font-weight:600;margin:var(--space-md) auto;max-width:75ch;overflow-wrap:anywhere;padding:.6rem .9rem;width:fit-content}[data-style=toy-blocks] .App .main-content :is(.array-note,.bst-note,.balanced-trees-note,.fibonacci-heap-note){font-weight:400}[data-style=toy-blocks] .error-message{border-radius:var(--radius-sm);box-shadow:0 4px 0 var(--tb-under-danger);font-weight:600}[data-style=toy-blocks] .empty-message{font-style:normal}[data-style=toy-blocks] .App .main-content table:not(.skip-list-grid){background-color:#fff;border-collapse:initial;border-radius:var(--radius-sm);border-spacing:0;box-shadow:0 4px 0 var(--tb-under-plain);color:var(--p-ink);overflow:hidden}[data-style=toy-blocks] .App .main-content table:not(.skip-list-grid) :is(th,td){background-color:initial;border:none;border-top:2px solid var(--p-bg);padding:.4rem .8rem}[data-style=toy-blocks] .App .main-content table:not(.skip-list-grid) tr:first-child>:is(th,td){border-top:none}[data-style=toy-blocks] .App .main-content table:not(.skip-list-grid) th{background-color:var(--tb-table-head);font-weight:600}[data-style=toy-blocks] .App .main-content table:not(.skip-list-grid) caption{font-weight:600;padding-bottom:var(--space-xs)}[data-style=toy-blocks] .App .main-content :is(.binary-tree-badge,.graph-step,.graph-weight,.balanced-trees-balance,.kdtree-label,.range-query-node-index,.intervals-tick-text,.b-tree-value){stroke:var(--p-bg);stroke-width:4px;stroke-linejoin:round;paint-order:stroke}[data-style=toy-blocks] .App .main-content :focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}@media (max-width:700px){[data-style=toy-blocks] .ds-sidebar-item{display:inline-block;margin:0 4px 6px 0;padding:.35rem .75rem;width:auto}[data-style=toy-blocks] .ds-sidebar{padding-bottom:var(--space-sm)}}[data-style=toy-blocks] .App .main-content .control-btn:disabled:not([aria-pressed=true]){background:var(--p-bg);border:2px dashed var(--p-muted);box-shadow:none;color:var(--p-muted);opacity:1}[data-style=toy-blocks] .App .main-content :is(.array-cell-used,.string-cell,.linked-list-node,.stack-view-item,.queue-cell:not(.queue-cell-empty),.heap-cell,.hash-table-entry){background-color:var(--tb-fill);border:none;border-radius:var(--radius-sm);box-shadow:0 5px 0 var(--tb-under);color:var(--tb-ink);font-weight:600}[data-style=toy-blocks] .App .main-content :is(.array-cell-used,.linked-list-node,.queue-cell:not(.queue-cell-empty),.heap-cell,.hash-table-entry,.stack-view-item.stack-view-new){animation:tb-bounce .4s cubic-bezier(.3,1.5,.5,1) both}[data-style=toy-blocks] .App .main-content :where(.array-cell-wrap:nth-child(2n),.string-cell:nth-child(2n),.linked-list-item:nth-child(2n),.stack-view-item:nth-child(2n),.queue-slot:nth-of-type(2n),.queue-stack .queue-cell:nth-child(2n),.heap-slot:nth-child(2n),.hash-table-row:nth-child(2n),.queue-row>.queue-cell:nth-child(2n)){--tb-fill:var(--p-accent);--tb-ink:var(--p-accent-ink);--tb-under:var(--tb-under-accent)}[data-style=toy-blocks] .App .main-content :is(.heap-cell-hl,.linked-list-highlight .linked-list-node,.queue-cell.queue-in-window){--tb-fill:var(--state-active);--tb-ink:var(--p-cell-ink);--tb-under:var(--tb-under-active);outline:3px solid var(--p-ink);outline-offset:2px}[data-style=toy-blocks] .App .main-content .string-cell-hit{--tb-fill:var(--state-found);--tb-ink:#fff;--tb-under:var(--tb-under-found);outline:3px solid var(--p-ink);outline-offset:2px}[data-style=toy-blocks] .App .main-content .array-cells{gap:10px;padding-bottom:5px}[data-style=toy-blocks] .App .main-content .array-cell{font-size:1.5rem;font-weight:600;height:60px;min-width:60px}[data-style=toy-blocks] .App .main-content .array-cell-free{border:3px dashed var(--tb-edge);border-radius:var(--radius-sm)}[data-style=toy-blocks] .array-cell-index{font-size:var(--fs-small);margin-top:12px}[data-style=toy-blocks] .string-view .string-about{max-width:640px}[data-style=toy-blocks] .App .main-content .string-cells{background-color:var(--main-bg);border-radius:var(--radius-lg);gap:10px;padding:var(--space-md)}[data-style=toy-blocks] .App .main-content .string-cell{margin-bottom:5px;min-width:3rem;overflow:hidden}[data-style=toy-blocks] .string-char{font-size:1.5rem;font-weight:600}[data-style=toy-blocks] .App .main-content .string-index{background-color:#fff;border-top:none;color:var(--p-ink);font-size:.8rem;font-weight:400}[data-style=toy-blocks] .App .main-content .hash-table-scroll{max-height:460px}[data-style=toy-blocks] .App .main-content .hash-table-row{gap:10px;padding:0 0 12px}[data-style=toy-blocks] .App .main-content .hash-table-index{background-color:#fff;border:none;box-shadow:0 4px 0 var(--tb-under-plain);color:var(--p-ink)}[data-style=toy-blocks] .App .main-content .hash-table-entry-key{background-color:var(--tb-fill);color:var(--tb-ink);font-weight:600}[data-style=toy-blocks] .App .main-content .hash-table-entry-value{background-color:#fff;color:var(--p-ink)}[data-style=toy-blocks] .hash-table-null{font-style:normal}[data-style=toy-blocks] .App .main-content .linked-list-ptr{border-left:2px solid var(--tb-under)}[data-style=toy-blocks] .App .main-content .linked-list-node.linked-list-node{margin-bottom:5px}[data-style=toy-blocks] .linked-list-cycle-target .linked-list-node{outline:3px dashed var(--p-ink);outline-offset:2px}[data-style=toy-blocks] .linked-list-index{margin-top:4px;opacity:1}[data-style=toy-blocks] .linked-list-arrow{color:var(--p-muted)}[data-style=toy-blocks] .linked-list-tag{color:var(--p-ink)}[data-style=toy-blocks] .App .main-content .stack-view-item{margin:0 0 10px}[data-style=toy-blocks] .stack-view-algo{gap:10px;margin:10px 0}[data-style=toy-blocks] .App .main-content .queue-row{gap:10px}[data-style=toy-blocks] .App .main-content .queue-slot{gap:6px}[data-style=toy-blocks] .App .main-content .queue-cell{box-sizing:border-box;font-size:1.1rem;height:3rem;line-height:3rem;min-width:3.25rem;padding:0 .5rem}[data-style=toy-blocks] .App .main-content .queue-tag{min-height:1.5rem}[data-style=toy-blocks] .App .main-content .queue-cell-empty{background:none;border:3px dashed var(--tb-edge);border-radius:var(--radius-sm);color:var(--p-muted);line-height:2.6rem}[data-style=toy-blocks] .App .main-content .queue-label{color:var(--p-ink)}[data-style=toy-blocks] .App .main-content .queue-slot .queue-cell{margin-bottom:5px}[data-style=toy-blocks] .App .main-content .queue-stack{border:3px dashed var(--tb-edge);border-radius:var(--radius-sm);gap:12px;padding:10px 10px 15px}[data-style=toy-blocks] .App .main-content .matrix-view-grid{gap:10px;padding-bottom:5px}[data-style=toy-blocks] .App .main-content .matrix-view-cell{--tb-i:#fff;--tb-i-under:var(--tb-under-plain);background-color:var(--tb-i);border:none;border-radius:var(--radius-sm);box-shadow:0 4px 0 var(--tb-i-under);color:var(--p-ink);font-weight:600}[data-style=toy-blocks] .App .main-content .matrix-view-cell:disabled{opacity:1}[data-style=toy-blocks] .App .main-content .matrix-view-cell:hover:not(:disabled){background-color:var(--tb-i);box-shadow:0 6px 0 var(--tb-i-under);color:var(--p-ink);transform:translateY(-2px)}[data-style=toy-blocks] .App .main-content .matrix-view-cell:active:not(:disabled){box-shadow:none;transform:translateY(4px)}[data-style=toy-blocks] .App .main-content .matrix-view-island{--tb-i:var(--p-cell);--tb-i-under:color-mix(in srgb,var(--tb-i) 68%,#000);color:var(--island-ink)}[data-style=toy-blocks] .App .main-content .matrix-view-island-1{--tb-i:var(--island-1)}[data-style=toy-blocks] .App .main-content .matrix-view-island-2{--tb-i:var(--island-2)}[data-style=toy-blocks] .App .main-content .matrix-view-island-3{--tb-i:var(--island-3)}[data-style=toy-blocks] .App .main-content .matrix-view-island-4{--tb-i:var(--island-4)}[data-style=toy-blocks] .App .main-content .matrix-view-island-5{--tb-i:var(--island-5)}[data-style=toy-blocks] .App .main-content .matrix-view-selected{outline:3px solid var(--p-ink);outline-offset:2px}[data-style=toy-blocks] .App .main-content .heap-row,[data-style=toy-blocks] .App .main-content .heap-slot{gap:10px}[data-style=toy-blocks] .App .main-content .heap-cell{font-size:1.1rem;min-width:3.25rem;padding:.65rem .5rem}[data-style=toy-blocks] .App .main-content :is(.binary-tree-edge,.bst-edge,.heap-edge,.graph-edge line){stroke:var(--tb-edge);stroke-width:3;stroke-linecap:round}[data-style=toy-blocks] .App .main-content .graph-edge-hot line{stroke:var(--tb-edge-hot);stroke-width:4}[data-style=toy-blocks] .graph-arrow-head{fill:var(--tb-edge)}[data-style=toy-blocks] .App .main-content :is(.binary-tree-node circle,.bst-node circle,.heap-node,.graph-node circle){fill:var(--tb-fill);stroke:var(--tb-stroke);stroke-width:var(--tb-stroke-w);filter:drop-shadow(0 4px 0 var(--tb-under))}[data-style=toy-blocks] .App .main-content :is(.binary-tree-node text,.bst-node text,.graph-node text){fill:var(--tb-ink);font-weight:600}[data-style=toy-blocks] .App .main-content :is(.binary-tree-node,.bst-node,.graph-node){animation:tb-bounce .4s cubic-bezier(.3,1.5,.5,1) both;transform-box:fill-box;transform-origin:center}[data-style=toy-blocks] .App .main-content .binary-tree-node.binary-tree-visited{--tb-fill:var(--state-visited);--tb-ink:#fff;--tb-under:var(--tb-under-accent)}[data-style=toy-blocks] .App .main-content :is(.binary-tree-node.binary-tree-current,.bst-node-path,.heap-node-hl,.graph-node-hot){--tb-fill:var(--state-active);--tb-ink:var(--p-cell-ink);--tb-under:var(--tb-under-active);--tb-stroke:var(--p-ink);--tb-stroke-w:3}[data-style=toy-blocks] .App .main-content .binary-tree-node.binary-tree-lca{--tb-fill:var(--state-found);--tb-ink:#fff;--tb-under:var(--tb-under-found);--tb-stroke:var(--p-ink);--tb-stroke-w:4}[data-style=toy-blocks] .App .main-content :is(.binary-tree-node text.binary-tree-badge,.graph-node .graph-step,.graph-weight){fill:var(--p-ink);font-size:13px;font-weight:600}[data-style=toy-blocks] .stack-view-algo{margin-inline:auto;max-width:720px}[data-style=toy-blocks] .App :is(.array-stats,.hash-table-stats,.linked-list-stats,.graph-stats,.lru-cache-stats,.skip-list-stats,.string-cells,.queue-stacks,.intervals-list,.bloom-filter-items,.suffix-array-chars,.fibonacci-heap-controls,.queue-row,.heap-row,.linked-list-chain){justify-content:safe center}[data-style=toy-blocks] :is(.array-cells,.lru-cache-list,.range-query-fenwick){margin-inline:auto}[data-style=toy-blocks] .App :has(>:is(.hash-table-row,.lru-cache-map-row)){display:block;margin-inline:auto;min-width:0;width:fit-content}[data-style=toy-blocks] .array-controls{margin-inline:auto;max-width:900px}[data-style=toy-blocks] .App .main-content :is(.trie-edge,.union-find-edge,.balanced-trees-edge,.b-tree-edge){stroke:var(--tb-edge);stroke-width:3;stroke-linecap:round}[data-style=toy-blocks] .App .main-content .trie-edge.trie-hot{stroke:var(--tb-edge-hot);stroke-width:5}[data-style=toy-blocks] .App .main-content :is(.trie-node circle,.union-find-node circle,.balanced-trees-disc){fill:var(--tb-fill);stroke:var(--tb-stroke);stroke-width:var(--tb-stroke-w);stroke-dasharray:none;stroke-dasharray:var(--tb-dash,none);filter:drop-shadow(0 4px 0 var(--tb-under))}[data-style=toy-blocks] .App .main-content :is(.trie-node text,.union-find-node text,.balanced-trees-node text){fill:var(--tb-ink);font-weight:600}[data-style=toy-blocks] .App .main-content :is(.trie-node,.union-find-node,.balanced-trees-node){animation:tb-bounce .4s cubic-bezier(.3,1.5,.5,1) both;transform-box:fill-box;transform-origin:center}[data-style=toy-blocks] .App .main-content :is(.trie-word,.union-find-root){--tb-fill:var(--p-accent);--tb-ink:var(--p-accent-ink);--tb-under:var(--tb-under-accent)}[data-style=toy-blocks] .App .main-content .trie-node.trie-hot{--tb-fill:var(--state-active);--tb-ink:var(--p-cell-ink);--tb-under:var(--tb-under-active);--tb-stroke:var(--p-ink);--tb-stroke-w:3}[data-style=toy-blocks] .App .main-content :is(.balanced-trees-node-red,.balanced-trees-node-unbalanced){--tb-fill:var(--state-danger);--tb-ink:#fff;--tb-under:var(--tb-under-danger);--tb-stroke:var(--p-ink);--tb-stroke-w:2;--tb-dash:4 3}[data-style=toy-blocks] .App .main-content .balanced-trees-node-black{--tb-fill:var(--p-ink);--tb-ink:#fff;--tb-under:var(--tb-under-ink)}[data-style=toy-blocks] .App .main-content .balanced-trees-node-mark .balanced-trees-ring{stroke:var(--p-ink);stroke-width:3}[data-style=toy-blocks] .App .main-content .balanced-trees-node .balanced-trees-balance{fill:var(--p-ink);font-size:13px;font-weight:600}[data-style=toy-blocks] .balanced-trees-swatch-red{background:var(--state-danger);border:2px dashed var(--p-ink)}[data-style=toy-blocks] .balanced-trees-swatch-black{background:var(--p-ink);border:2px solid var(--p-ink)}[data-style=toy-blocks] .App .main-content .balanced-trees-scroll svg{overflow:visible}[data-style=toy-blocks] .App .main-content .balanced-trees-step{background:none;border:none;border-radius:var(--radius-sm);box-shadow:none;color:var(--p-ink);font-weight:400;margin:2px 0;padding:.3rem .8rem}[data-style=toy-blocks] .App .main-content .balanced-trees-step:hover:not(:disabled){background:var(--p-bg);color:var(--p-ink)}[data-style=toy-blocks] .App .main-content .balanced-trees-step[aria-current=step],[data-style=toy-blocks] .App .main-content .balanced-trees-step[aria-current=step]:hover:not(:disabled){background:var(--p-accent);box-shadow:0 4px 0 var(--tb-under-accent);color:var(--p-accent-ink);font-weight:600;margin-bottom:6px}[data-style=toy-blocks] .App .main-content .balanced-trees-step-list{text-align:left}[data-style=toy-blocks] .App .main-content .b-tree-cell{fill:var(--p-cell);stroke:var(--tb-under-cell);stroke-width:2;rx:6px;filter:drop-shadow(0 3px 0 var(--tb-under-cell))}[data-style=toy-blocks] .App .main-content .b-tree-cell-router{fill:var(--p-accent);stroke:var(--tb-under-accent);filter:drop-shadow(0 3px 0 var(--tb-under-accent))}[data-style=toy-blocks] .App .main-content .b-tree-text-router{fill:var(--p-accent-ink)}[data-style=toy-blocks] .App .main-content .b-tree-cell-value{fill:#fff;stroke:var(--tb-under-plain);filter:none}[data-style=toy-blocks] .App .main-content .b-tree-value{fill:var(--p-ink);stroke:none;font-weight:600}[data-style=toy-blocks] .App .main-content .b-tree-cell-hit{fill:var(--state-active);stroke:var(--p-ink);stroke-width:3;filter:drop-shadow(0 3px 0 var(--tb-under-active))}[data-style=toy-blocks] .App .main-content .b-tree-node-hl .b-tree-cell{stroke:var(--p-ink);stroke-width:3}[data-style=toy-blocks] .App .main-content .b-tree-link{stroke:var(--p-muted);stroke-width:2;stroke-linecap:round}[data-style=toy-blocks] .App .main-content .b-tree-link-hl{stroke:var(--tb-edge-hot);stroke-width:4}[data-style=toy-blocks] .b-tree-arrowhead{fill:var(--p-muted)}[data-style=toy-blocks] .App .main-content .intervals-bar{fill:var(--p-cell);stroke:none;rx:8px;filter:drop-shadow(0 4px 0 var(--tb-under-cell))}[data-style=toy-blocks] .App .main-content .intervals-bar-out{fill:var(--p-accent);filter:drop-shadow(0 4px 0 var(--tb-under-accent))}[data-style=toy-blocks] .App .main-content .intervals-bar-new{fill:var(--state-active);stroke:var(--p-ink);stroke-width:3;stroke-dasharray:5 3;filter:drop-shadow(0 4px 0 var(--tb-under-active))}[data-style=toy-blocks] .App .main-content .intervals-tick{stroke:var(--tb-edge)}[data-style=toy-blocks] .App .main-content .intervals-tick-text{fill:var(--p-ink);font-size:13px}[data-style=toy-blocks] .App .main-content .intervals-bar-text{fill:var(--p-cell-ink);font-size:12px;font-weight:600}[data-style=toy-blocks] .App .main-content .intervals-bar-out~.intervals-bar-text{fill:var(--p-accent-ink)}[data-style=toy-blocks] .App .main-content .intervals-bar-new~.intervals-bar-text{fill:var(--p-cell-ink)}[data-style=toy-blocks] .App .main-content .lru-cache-node{animation:tb-bounce .4s cubic-bezier(.3,1.5,.5,1) both;background-color:#fff;border:none;border-radius:var(--radius-sm);box-shadow:0 5px 0 var(--tb-under);margin-bottom:5px;min-width:4.5rem}[data-style=toy-blocks] .App .main-content .lru-cache-item:nth-child(2n){--tb-fill:var(--p-accent);--tb-ink:var(--p-accent-ink);--tb-under:var(--tb-under-accent)}[data-style=toy-blocks] .App .main-content .lru-cache-node-key{background-color:var(--tb-fill);color:var(--tb-ink);font-weight:600}[data-style=toy-blocks] .App .main-content .lru-cache-node-value,[data-style=toy-blocks] .App .main-content .lru-cache-tag{color:var(--p-ink)}[data-style=toy-blocks] .App .main-content .lru-cache-sentinel{border:3px dashed var(--tb-edge);border-radius:var(--radius-sm);color:var(--p-ink)}[data-style=toy-blocks] .App .main-content .lru-cache-arrow{color:var(--p-muted);font-weight:600}[data-style=toy-blocks] .App .main-content .lru-cache-map-row{gap:10px;margin:0 0 12px}[data-style=toy-blocks] .App .main-content .lru-cache-map-row .lru-cache-node-key{box-shadow:0 4px 0 var(--tb-under)}[data-style=toy-blocks] .App .main-content .trie-node.trie-hot:not(.trie-word),[data-style=toy-blocks] .App .main-content .trie-node:not(.trie-word){--tb-fill:var(--p-surface);--tb-ink:var(--p-ink);--tb-under:var(--p-line);--tb-stroke:var(--p-muted);--tb-stroke-w:3}[data-style=toy-blocks] .App .main-content .trie-node.trie-hot:not(.trie-word){--tb-stroke:var(--p-ink);--tb-stroke-w:5}[data-style=toy-blocks] .App .main-content :is(.range-query-edge,.kdtree-edge,.fibonacci-heap-edge,.fibonacci-heap-root-link,.fibonacci-heap-root-wrap){stroke:var(--tb-edge);stroke-width:3;stroke-linecap:round}[data-style=toy-blocks] .fibonacci-heap-arrow{fill:var(--tb-edge)}[data-style=toy-blocks] .App .main-content :is(.range-query-cell,.suffix-array-char,.bloom-filter-on,.fibonacci-heap-node){animation:tb-bounce .4s cubic-bezier(.3,1.5,.5,1) both;background-color:var(--tb-fill);border:none;border-radius:var(--radius-sm);box-shadow:0 5px 0 var(--tb-under);color:var(--tb-ink);font-weight:600}[data-style=toy-blocks] .App .main-content :where(.range-query-col:nth-child(2n),.suffix-array-slot:nth-child(2n)){--tb-fill:var(--p-accent);--tb-ink:var(--p-accent-ink);--tb-under:var(--tb-under-accent)}[data-style=toy-blocks] .App .main-content .range-query-fenwick{gap:10px}[data-style=toy-blocks] .App .main-content .range-query-array{background-color:#fff;box-shadow:0 4px 0 var(--tb-under-plain);color:var(--p-ink);margin-top:12px;opacity:1}[data-style=toy-blocks] .App .main-content .range-query-sub{color:var(--p-ink);font-size:.8rem;margin-top:6px}[data-style=toy-blocks] .App .main-content .range-query-hit{--tb-fill:var(--state-active);--tb-ink:var(--p-cell-ink);--tb-under:var(--tb-under-active);outline:3px solid var(--p-ink);outline-offset:2px}[data-style=toy-blocks] .App .main-content .range-query-minus{--tb-fill:var(--state-danger);--tb-ink:#fff;--tb-under:var(--tb-under-danger);outline:3px dashed var(--p-ink);outline-offset:2px}[data-style=toy-blocks] .App .main-content .range-query-node{fill:var(--p-cell);stroke:none;stroke-width:0;filter:drop-shadow(0 4px 0 var(--tb-under-cell))}[data-style=toy-blocks] .App .main-content .range-query-leaf{fill:var(--p-accent);filter:drop-shadow(0 4px 0 var(--tb-under-accent))}[data-style=toy-blocks] .App .main-content .range-query-leaf+.range-query-node-text{fill:var(--p-accent-ink)}[data-style=toy-blocks] .App .main-content .range-query-node-hit{fill:var(--state-active);stroke:var(--p-ink);stroke-width:3;filter:drop-shadow(0 4px 0 var(--tb-under-active))}[data-style=toy-blocks] .App .main-content .range-query-node-hit+.range-query-node-text{fill:var(--p-cell-ink)}[data-style=toy-blocks] .App .main-content .range-query-node-text{font-weight:600}[data-style=toy-blocks] .App .main-content .range-query-node-index{fill:var(--p-ink);font-size:12px}[data-style=toy-blocks] .App .main-content .skip-list-grid{border-spacing:0 12px}[data-style=toy-blocks] .App .main-content .skip-list-cell{background-image:linear-gradient(var(--tb-edge),var(--tb-edge));background-size:100% 3px;border:none;color:var(--p-ink);height:40px;min-width:52px}[data-style=toy-blocks] .App .main-content :is(.skip-list-node,.skip-list-head,.skip-list-nil){background-clip:padding-box;background-color:var(--tb-fill);background-image:none;border:5px solid #0000;border-radius:var(--radius-sm);border-width:0 5px;box-shadow:inset 0 -5px 0 var(--tb-under);color:var(--tb-ink);font-weight:600;opacity:1}[data-style=toy-blocks] .App .main-content :is(.skip-list-head,.skip-list-nil){--tb-fill:var(--p-accent);--tb-ink:var(--p-accent-ink);--tb-under:var(--tb-under-accent)}[data-style=toy-blocks] .App .main-content .skip-list-visited{--tb-fill:var(--state-active);--tb-ink:var(--p-cell-ink);--tb-under:var(--tb-under-active);outline:3px solid var(--p-ink);outline-offset:-3px}[data-style=toy-blocks] .App .main-content .bloom-filter-row,[data-style=toy-blocks] .App .main-content .bloom-filter-slot{gap:10px}[data-style=toy-blocks] .App .main-content .bloom-filter-bit{background:none;border:3px dashed var(--tb-edge);border-radius:var(--radius-sm);color:var(--p-ink);font-weight:600;min-width:2.4rem;padding:.45rem .25rem}[data-style=toy-blocks] .App .main-content .bloom-filter-on{background-clip:initial;background-color:var(--tb-fill);border:3px solid #0000;color:var(--tb-ink)}[data-style=toy-blocks] .App .main-content .bloom-filter-hit{--tb-fill:var(--state-active);--tb-ink:var(--p-cell-ink);--tb-under:var(--tb-under-active);outline:3px solid var(--p-ink);outline-offset:2px}[data-style=toy-blocks] .App .main-content .bloom-filter-index{color:var(--p-ink)}[data-style=toy-blocks] .App .main-content .bloom-filter-items{gap:10px}[data-style=toy-blocks] .App .main-content .bloom-filter-items li{background-color:#fff;border:none;border-radius:var(--radius-md);box-shadow:0 4px 0 var(--tb-under-plain);color:var(--p-ink);padding:.3rem .85rem}[data-style=toy-blocks] .App .main-content .kdtree-frame{stroke:var(--tb-edge);stroke-width:3}[data-style=toy-blocks] .App .main-content .kdtree-split-x{stroke:var(--state-danger);stroke-width:3;stroke-linecap:round}[data-style=toy-blocks] .App .main-content .kdtree-split-y{stroke:var(--state-info);stroke-width:3;stroke-dasharray:7 6;stroke-linecap:round}[data-style=toy-blocks] .App .main-content :is(.kdtree-node,.kdtree-dot){--tb-shape-fill:var(--p-cell);--tb-shape-under:var(--tb-under-cell);fill:var(--tb-shape-fill);stroke:none;rx:10px;filter:drop-shadow(0 3px 0 var(--tb-shape-under))}[data-style=toy-blocks] .App .main-content :is(.kdtree-node-visited,.kdtree-dot.kdtree-node-visited){--tb-shape-fill:var(--state-visited);--tb-shape-under:var(--tb-under-accent)}[data-style=toy-blocks] .App .main-content :is(.kdtree-node-best,.kdtree-dot.kdtree-node-best){--tb-shape-fill:var(--state-found);--tb-shape-under:var(--tb-under-found);stroke:var(--p-ink);stroke-width:3}[data-style=toy-blocks] .App .main-content .kdtree-axis-text,[data-style=toy-blocks] .App .main-content .kdtree-node-text{fill:var(--p-cell-ink)}[data-style=toy-blocks] .App .main-content .kdtree-axis-text{font-size:11px}[data-style=toy-blocks] .App .main-content .kdtree-node-text{font-size:12px}[data-style=toy-blocks] .App .main-content :is(.kdtree-node-visited,.kdtree-node-best)~:is(.kdtree-node-text,.kdtree-axis-text){fill:#fff}[data-style=toy-blocks] .App .main-content .kdtree-query{fill:var(--state-active);stroke:var(--p-ink);stroke-width:2}[data-style=toy-blocks] .App .main-content .kdtree-label{fill:var(--p-ink);font-size:12px}[data-style=toy-blocks] .App .main-content .quadtree-svg{background-color:#fff;border:none;border-radius:var(--radius-sm);box-shadow:0 5px 0 var(--tb-under-plain)}[data-style=toy-blocks] .App .main-content .quadtree-cell{stroke:var(--tb-edge);stroke-width:2}[data-style=toy-blocks] .App .main-content .quadtree-visited{fill:var(--state-active);fill-opacity:.18;stroke:var(--p-ink);stroke-width:3}[data-style=toy-blocks] .App .main-content .quadtree-query{stroke:var(--p-ink);stroke-width:3}[data-style=toy-blocks] .App .main-content .quadtree-point{fill:var(--p-cell);stroke:var(--p-cell-ink);stroke-width:2}[data-style=toy-blocks] .App .main-content .quadtree-found{fill:var(--state-found);stroke:var(--p-ink);stroke-width:3}[data-style=toy-blocks] .App .main-content .suffix-array-chars{gap:10px;padding-bottom:5px}[data-style=toy-blocks] .App .main-content .suffix-array-char{font-size:1.25rem;min-width:2.75rem;padding:.5rem .25rem}[data-style=toy-blocks] .App .main-content .suffix-array-index{color:var(--p-ink);margin-top:8px}[data-style=toy-blocks] .App .main-content .suffix-array-table .suffix-array-match td{background-color:var(--state-found);color:#fff;font-weight:600}[data-style=toy-blocks] .App .main-content .fibonacci-heap-node{border-radius:var(--radius-sm);padding:0}[data-style=toy-blocks] .App .main-content .fibonacci-heap-deg{font-size:.75rem;font-weight:400;opacity:1}[data-style=toy-blocks] .App .main-content .fibonacci-heap-node-min{--tb-fill:var(--p-accent);--tb-ink:var(--p-accent-ink);--tb-under:var(--tb-under-accent);outline:3px solid var(--p-ink);outline-offset:2px}[data-style=toy-blocks] .App .main-content .fibonacci-heap-node-mark{background-color:#fff;border:3px dashed var(--p-ink);box-shadow:0 5px 0 var(--tb-under-plain);color:var(--p-ink)}[data-style=toy-blocks] .App .main-content button.fibonacci-heap-node:hover:not(:disabled){background-color:var(--tb-fill);color:var(--tb-ink);transform:translateY(-2px)}[data-style=toy-blocks] .App .main-content button.fibonacci-heap-node:active:not(:disabled){box-shadow:none;transform:translateY(4px)}[data-style=toy-blocks] .App .main-content .fibonacci-heap-node-selected{--tb-fill:var(--state-active);--tb-ink:var(--p-cell-ink);--tb-under:var(--tb-under-active);outline:3px solid var(--p-ink);outline-offset:3px}[data-style=toy-blocks] .App .main-content .fibonacci-heap-min{color:var(--p-ink)}[data-style=toy-blocks] .App .main-content .fibonacci-heap-field input,[data-style=toy-blocks] .App .main-content .fibonacci-heap-field select{background-color:var(--input-bg)}[data-style=toy-blocks] .App .main-content .fibonacci-heap-node-min:focus-visible,[data-style=toy-blocks] .App .main-content .fibonacci-heap-node:focus-visible{outline:3px dashed var(--focus-ring);outline-offset:5px}[data-style=toy-blocks] .App .main-content .range-query-node-index{stroke:var(--main-bg);stroke-width:4px;stroke-linejoin:round;paint-order:stroke}[data-style=phosphor]{--ph-max:#effff3;--ph-bright:#c8ffd6;--ph-glow:0 0 5px #7cff9e66;--ph-glow-found:0 0 8px #effff3e6;--ph-svg-glow:drop-shadow(0 0 4px #effff3d9);--ph-box-glow:0 0 8px #effff399;--ph-open:"["/"";--ph-close:"]"/"";--ph-dash-danger:6 4;--ph-dash-visited:1.5 3.5;--f-data:"VT323","Courier New",monospace;--fs-base:1.3rem;--fs-small:1.1rem;--fs-h1:1.9rem;--fs-h2:2.5rem;--fs-h3:1.6rem;--fw-heading:400;--fw-control:400;--lh-body:1.2;--space-xs:0.2rem;--space-sm:0.4rem;--space-md:0.8rem;--space-lg:1.2rem;--space-xl:2rem;--border-style:dashed;--radius-sm:0;--radius-md:0;--radius-lg:0;--btn-bg:#0000;--btn-ink:var(--p-ink);--btn-border:#0000;--btn-hover-bg:var(--p-ink);--btn-hover-ink:var(--p-bg);--input-bg:#0000;--input-border-color:var(--p-muted);--focus-ring:var(--ph-max);--panel-bg:var(--p-bg);--nav-bg:var(--p-bg);--side-bg:var(--p-bg);--side-hover-bg:var(--p-surface);--side-active-bg:var(--p-ink);--side-active-ink:var(--p-bg);--edge-width:1.5;--state-active:var(--p-ink);--state-visited:var(--p-muted);--state-found:var(--ph-max);--state-danger:var(--ph-bright);--state-info:var(--p-muted);--island-1:#7cff9e;--island-2:#4fc773;--island-3:#2e8049;--island-4:#c8ffd6;--island-5:#1e5c33;--island-ink:#07120a;--main-bg:var(--p-bg);--card-bg:var(--p-bg);--stack-item-bg:var(--p-bg);--stack-item-text:var(--p-ink);--debug-bg:#0000;--debug-text:var(--p-muted);--empty-message:var(--p-muted);--error-bg:#0000;--error-border:var(--ph-max);--error-text:var(--ph-max)}[data-style=phosphor] .App{font-synthesis:none;scrollbar-color:var(--p-line) var(--p-bg);text-align:left;text-shadow:var(--ph-glow)}[data-style=phosphor] .App:after{background-image:repeating-linear-gradient(0deg,#0000001f 0 1px,#0000 1px 3px);content:"";inset:0;pointer-events:none;position:fixed;z-index:40}[data-style=phosphor] .navbar{border-bottom:1px dashed var(--p-line);padding:var(--space-xs) var(--space-md)}[data-style=phosphor] .nav-logo:before{color:var(--p-muted);content:"$ "/""}[data-style=phosphor] .theme-menu-button:focus-visible,[data-style=phosphor] .theme-menu-button:hover,[data-style=phosphor] .theme-menu-button[aria-expanded=true]{background-color:var(--p-ink);color:var(--p-bg)}[data-style=phosphor] .theme-menu-bars,[data-style=phosphor] .theme-menu-bars:after,[data-style=phosphor] .theme-menu-bars:before{height:2px}[data-style=phosphor] .theme-menu-panel{border-color:var(--p-ink);padding:var(--space-sm) var(--space-md) var(--space-md)}[data-style=phosphor] .theme-menu-heading{color:var(--p-muted)}[data-style=phosphor] .theme-menu-heading:before{content:"# "/""}[data-style=phosphor] .theme-menu-row{border:1px dashed #0000;padding:var(--space-xs) var(--space-sm)}[data-style=phosphor] .theme-menu-row:before{content:"( )"/"";flex:none}[data-style=phosphor] .theme-menu-option:hover .theme-menu-row{background-color:var(--p-surface);border-color:var(--p-ink)}[data-style=phosphor] .theme-menu-option input:checked+.theme-menu-row,[data-style=phosphor] .theme-menu-option:hover input:checked+.theme-menu-row{background-color:var(--p-ink);border-color:var(--p-ink);color:var(--p-bg);text-shadow:none}[data-style=phosphor] .theme-menu-option input:checked+.theme-menu-row:before{content:"(*)"/""}[data-style=phosphor] .theme-menu-option input:checked+.theme-menu-row .theme-menu-palette{color:var(--p-bg)}[data-style=phosphor] .theme-menu-swatch{box-shadow:inset 0 0 0 1px var(--p-muted)}[data-style=phosphor] .ds-sidebar{border-right:1px dashed var(--p-line)}[data-style=phosphor] .ds-sidebar-group{font-size:var(--fs-small);margin:var(--space-md) 0 var(--space-xs);text-transform:lowercase}[data-style=phosphor] .ds-sidebar-group:before{content:"# "/""}[data-style=phosphor] .ds-sidebar-item{border:1px dashed #0000;padding:.1rem var(--space-sm)}[data-style=phosphor] .ds-sidebar-item:before{color:var(--p-muted);content:"./"/""}[data-style=phosphor] .ds-sidebar-item:hover{border-color:var(--p-ink)}[data-style=phosphor] .ds-sidebar-item.active{text-shadow:none}[data-style=phosphor] .ds-sidebar-item.active:before{color:inherit}@media (max-width:700px){[data-style=phosphor] .ds-sidebar{border-bottom:1px dashed var(--p-line);border-right:0}[data-style=phosphor] .ds-sidebar section{display:grid;grid-template-columns:1fr 1fr}[data-style=phosphor] .ds-sidebar-group{grid-column:1/-1}}[data-style=phosphor] .ds-container{margin:0 auto;max-width:900px}[data-style=phosphor] .main-content h2:before{color:var(--p-muted);content:"$ "/""}[data-style=phosphor] .main-content h3:before{color:var(--p-muted);content:"# "/""}[data-style=phosphor] .main-content h3{line-height:1.1;margin:var(--space-md) 0 var(--space-xs)}[data-style=phosphor] .main-content b,[data-style=phosphor] .main-content strong{color:var(--ph-bright)}[data-style=phosphor] .main-content p{margin:var(--space-sm) 0}[data-style=phosphor] .main-content [class$=-about],[data-style=phosphor] .main-content [class$=-intro]{margin:var(--space-sm) 0;max-width:62ch}[data-style=phosphor] .main-content [class$=-complexity],[data-style=phosphor] .main-content [class$=-legend],[data-style=phosphor] .main-content [class$=-note]{color:var(--p-muted);font-size:var(--fs-small);margin:var(--space-sm) 0}[data-style=phosphor] .main-content [class$=-stats]{gap:var(--space-xs) var(--space-lg);justify-content:flex-start;margin:var(--space-sm) 0}[data-style=phosphor] .main-content :is(.array-scroll,.stack-view-board,.matrix-view-board,.fibonacci-heap-scroll){background:none;border:1px dashed var(--p-line);padding:var(--space-md)}[data-style=phosphor] .main-content svg{margin-left:0}[data-style=phosphor] .ds-controls{align-items:center;gap:var(--space-xs) var(--space-sm);justify-content:flex-start}[data-style=phosphor] .main-content .control-btn{background:none;border:0;color:var(--p-ink);font-family:var(--f-data);font-size:var(--fs-base);min-height:2rem;padding:0 var(--space-xs);text-shadow:inherit;white-space:nowrap}[data-style=phosphor] .main-content .control-btn:before{content:"[ "/"";white-space:pre}[data-style=phosphor] .main-content .control-btn:after{content:" ]"/"";white-space:pre}[data-style=phosphor] .main-content .control-btn:active:not(:disabled),[data-style=phosphor] .main-content .control-btn:focus-visible,[data-style=phosphor] .main-content .control-btn:hover:not(:disabled){background-color:var(--p-ink);color:var(--p-bg);text-shadow:none}[data-style=phosphor] .main-content .control-btn[aria-pressed=true],[data-style=phosphor] .main-content .control-btn[aria-pressed=true]:disabled{background-color:var(--p-ink);color:var(--p-bg);opacity:1;text-shadow:none}[data-style=phosphor] .main-content .control-btn:disabled:not([aria-pressed=true]){color:var(--p-muted);opacity:1;text-shadow:none}[data-style=phosphor] .main-content td .control-btn{white-space:normal}[data-style=phosphor] .main-content :is(input:not([type=checkbox],[type=radio],[type=range]),select,textarea){background:none;border-color:var(--p-muted);border-radius:0;border-style:dashed;border-width:0 0 1px;caret-color:var(--p-ink);color:var(--p-ink);font-family:var(--f-data);font-size:var(--fs-base);padding:.1rem var(--space-xs);text-shadow:inherit}[data-style=phosphor] .main-content :is(input:not([type=checkbox],[type=radio],[type=range]),select,textarea):hover{border-color:var(--p-ink)}[data-style=phosphor] .main-content :is(input:not([type=checkbox],[type=radio],[type=range]),select,textarea):focus{border-bottom-style:solid;border-color:var(--ph-max)}[data-style=phosphor] .ds-controls>input{flex:1 1 10ch;min-width:8ch}[data-style=phosphor] .main-content select option{background-color:var(--p-bg);color:var(--p-ink)}[data-style=phosphor] .main-content :is(input[type=checkbox],input[type=radio],input[type=range]){accent-color:var(--p-ink)}[data-style=phosphor] .main-content label{font-size:var(--fs-small)}[data-style=phosphor] .main-content table:not(.skip-list-grid){border-collapse:collapse;color:var(--p-ink);margin:var(--space-sm) 0}[data-style=phosphor] .main-content caption{color:var(--p-muted);margin-bottom:var(--space-xs);text-align:left}[data-style=phosphor] .main-content table:not(.skip-list-grid) :is(th,td){border:1px dashed var(--p-line);padding:.1rem var(--space-sm);text-align:left;vertical-align:top}[data-style=phosphor] .main-content table:not(.skip-list-grid) th{color:var(--ph-bright)}[data-style=phosphor] .main-content code{background:none;padding:0}[data-style=phosphor] .main-content :is([role=status],.array-result,.array-note){background:none;border:0;color:var(--ph-bright);margin:var(--space-sm) 0;padding:0}[data-style=phosphor] .main-content :is([role=status],.array-result):before{color:var(--p-muted);content:"> "/""}[data-style=phosphor] .main-content .array-note:before{content:"! "/""}[data-style=phosphor] .main-content .error-message{border:2px dashed var(--ph-max);margin:var(--space-sm) 0;padding:var(--space-xs) var(--space-sm)}[data-style=phosphor] .main-content .error-message:before{content:"! "/""}[data-style=phosphor] .main-content .empty-message:before{content:"-- "/""}@keyframes phosphor-on{0%{opacity:0}to{opacity:1}}@keyframes phosphor-off{0%{opacity:1}to{opacity:0}}[data-style=phosphor] .main-content :is(.array-cell,.string-char,.queue-cell,.heap-cell,.stack-view-item,:where(.lru-cache-map-row) .lru-cache-node-key,.bloom-filter-bit,:where(.bloom-filter-items) li,.range-query-cell,.suffix-array-char,.skip-list-node,.skip-list-head,.skip-list-nil,.lru-cache-sentinel){animation:phosphor-on .2s steps(2) both;background:none;border:0;box-shadow:none;box-sizing:border-box;color:var(--p-ink);font-family:var(--f-data);font-size:1.5rem;height:auto;line-height:1.2;max-width:none;min-width:0;outline:0;overflow-wrap:anywhere;padding:0 .1rem;text-align:center;white-space:nowrap}[data-style=phosphor] .main-content :is(.array-cell,.string-char,.queue-cell,.heap-cell,.stack-view-item,:where(.lru-cache-map-row) .lru-cache-node-key,.bloom-filter-bit,:where(.bloom-filter-items) li,.range-query-cell,.suffix-array-char,.skip-list-node,.skip-list-head,.skip-list-nil,.lru-cache-sentinel,.matrix-view-cell):before{content:var(--ph-open);margin-right:.15em}[data-style=phosphor] .main-content :is(.array-cell,.string-char,.queue-cell,.heap-cell,.stack-view-item,:where(.lru-cache-map-row) .lru-cache-node-key,.bloom-filter-bit,:where(.bloom-filter-items) li,.range-query-cell,.suffix-array-char,.skip-list-node,.skip-list-head,.skip-list-nil,.lru-cache-sentinel,.matrix-view-cell):after{content:var(--ph-close);margin-left:.15em}[data-style=phosphor] .main-content :is(.array-cell-free,.queue-cell-empty,.skip-list-head,.skip-list-nil,.lru-cache-sentinel){color:var(--p-muted)}[data-style=phosphor] .main-content :is(.heap-cell-hl,.queue-in-window,.skip-list-visited,.range-query-hit){background:var(--p-ink);color:var(--p-bg);text-shadow:none}[data-style=phosphor] .main-content .string-cell-hit .string-char{background:none;color:var(--ph-max);text-shadow:var(--ph-glow-found)}[data-style=phosphor] .main-content .range-query-minus{background:none;color:var(--ph-max);outline:2px dashed var(--ph-max);outline-offset:-2px}[data-style=phosphor] .main-content :is(:where(.binary-tree-node,.bst-node,.graph-node,.trie-node,.union-find-node) circle,.heap-node,.balanced-trees-disc,.b-tree-cell,.intervals-bar,.range-query-node,.kdtree-node){fill:var(--p-bg);stroke:var(--p-ink);stroke-width:1.5;stroke-dasharray:none;rx:0}[data-style=phosphor] .main-content :is(:where(.binary-tree-node,.bst-node,.graph-node,.trie-node,.union-find-node,.balanced-trees-node) text,.heap-node-text,.b-tree-text,.b-tree-value,.intervals-bar-text,.range-query-node-text,.kdtree-node-text){fill:var(--p-ink);font-size:20px}[data-style=phosphor] .main-content :is(.binary-tree-badge,.graph-step,.graph-weight,.balanced-trees-balance,.range-query-node-index,.intervals-tick-text,.kdtree-label){fill:var(--p-ink);stroke:var(--p-bg);stroke-width:3px;stroke-linejoin:round;font-size:18px;paint-order:stroke}[data-style=phosphor] .main-content :is(.binary-tree-edge,.bst-edge,.heap-edge,:where(.graph-edge) line,.trie-edge,.union-find-edge,.balanced-trees-edge,.b-tree-edge,.range-query-edge,.kdtree-edge,.fibonacci-heap-edge,.fibonacci-heap-root-link,.fibonacci-heap-root-wrap){stroke:var(--p-line);stroke-width:var(--edge-width)}[data-style=phosphor] .main-content :is(.graph-edge-hot line,.trie-edge.trie-hot,.b-tree-link-hl){stroke:var(--ph-bright);stroke-width:3}[data-style=phosphor] .main-content :is(.graph-arrow-head,.b-tree-arrowhead,.fibonacci-heap-arrow){fill:var(--p-ink)}[data-style=phosphor] .main-content :is(.binary-tree-node.binary-tree-visited circle,.kdtree-node-visited){stroke:var(--p-muted);stroke-dasharray:var(--ph-dash-visited);stroke-linecap:round}[data-style=phosphor] .main-content :is(.binary-tree-node.binary-tree-visited text:not(.binary-tree-badge),.kdtree-node-visited~text){fill:var(--p-muted)}[data-style=phosphor] .main-content :is(.binary-tree-node.binary-tree-current circle,.bst-node-path circle,.heap-node-hl,.graph-node-hot circle,.trie-node.trie-hot circle,.b-tree-node-hl .b-tree-cell,.intervals-bar-new,.range-query-node-hit){fill:var(--p-ink);stroke:var(--p-ink);stroke-dasharray:none}[data-style=phosphor] .main-content :is(.binary-tree-node.binary-tree-current text:not(.binary-tree-badge),.bst-node-path text,.heap-node-hl+.heap-node-text,.graph-node-hot text:not(.graph-step),.trie-node.trie-hot text,.b-tree-node-hl :is(.b-tree-text,.b-tree-value),.intervals-bar-new+.intervals-bar-text,.range-query-node-hit+.range-query-node-text){fill:var(--p-bg)}[data-style=phosphor] .main-content :is(.binary-tree-node.binary-tree-lca circle,.kdtree-node-best){fill:var(--p-bg);stroke:var(--ph-max);stroke-width:3;stroke-dasharray:none;filter:var(--ph-svg-glow)}[data-style=phosphor] .main-content :is(.binary-tree-node.binary-tree-lca text:not(.binary-tree-badge),.kdtree-node-best~text){fill:var(--ph-max)}[data-style=phosphor] .ds-container.array-view{max-width:900px;overflow:visible}[data-style=phosphor] .main-content .array-cells{gap:var(--space-sm)}[data-style=phosphor] .main-content .array-cell{height:2.2rem}[data-style=phosphor] .main-content .array-cell-free:before{content:"[ ."/""}[data-style=phosphor] .main-content .array-cell-index{color:var(--p-muted);font-size:var(--fs-small);margin-top:0}[data-style=phosphor] .main-content .array-controls label{font-size:var(--fs-small)}[data-style=phosphor] .main-content .string-cells{gap:var(--space-xs);padding:var(--space-sm) 0}[data-style=phosphor] .main-content .string-cell{background:none;border:1px solid #0000;min-width:0}[data-style=phosphor] .main-content .string-cell-hit{border:2px solid var(--ph-max);box-shadow:var(--ph-box-glow);outline:0}[data-style=phosphor] .main-content .string-index{background:none;border:0;color:var(--p-muted);font-size:var(--fs-small)}[data-style=phosphor] .main-content .hash-table-row{gap:var(--space-sm);padding:0}[data-style=phosphor] .main-content .hash-table-index{background:none;border:0;color:var(--p-muted);min-width:2ch;padding:0;text-align:right}[data-style=phosphor] .main-content .hash-table-arrow,[data-style=phosphor] .main-content .hash-table-null{color:var(--p-muted);margin:0}[data-style=phosphor] .main-content .hash-table-entry{border:0;overflow:visible}[data-style=phosphor] .main-content .hash-table-entry:before{content:var(--ph-open)}[data-style=phosphor] .main-content .hash-table-entry:after{content:var(--ph-close)}[data-style=phosphor] .main-content :is(.hash-table-entry-key,.hash-table-entry-value){background:none;color:var(--p-ink);padding:0 .2em}[data-style=phosphor] .main-content .hash-table-entry-key:after{color:var(--p-muted);content:":"/""}[data-style=phosphor] .main-content .linked-list-node{background:none;border:1.5px solid var(--p-ink)}[data-style=phosphor] .main-content .linked-list-val{padding:.1rem .4rem}[data-style=phosphor] .main-content .linked-list-ptr{border-left:1px solid var(--p-ink)}[data-style=phosphor] .main-content .linked-list-index,[data-style=phosphor] .main-content .linked-list-tags{color:var(--p-muted);font-size:var(--fs-small);opacity:1}[data-style=phosphor] .main-content .linked-list-arrow{color:var(--p-ink);top:1.3rem}[data-style=phosphor] .main-content .linked-list-end{color:var(--p-muted);top:1.4rem}[data-style=phosphor] .main-content .linked-list-highlight .linked-list-node{background:var(--p-ink);color:var(--p-bg);outline:0;text-shadow:none}[data-style=phosphor] .main-content .linked-list-highlight .linked-list-ptr{border-left-color:var(--p-bg)}[data-style=phosphor] .main-content .linked-list-cycle-target .linked-list-node{border:2px dashed var(--ph-max)}[data-style=phosphor] .main-content .stack-view-board{align-items:flex-start;min-height:200px}[data-style=phosphor] .main-content .stack-view-item{margin:0;overflow-wrap:anywhere;text-align:left;white-space:normal}[data-style=phosphor] .main-content .stack-view-item.stack-view-top:after{content:"]  \2190 top"/"\2190 top";font-size:inherit;position:static;white-space:pre}[data-style=phosphor] .main-content .stack-view-item.stack-view-new{animation:phosphor-on .3s steps(3) both}[data-style=phosphor] .main-content .stack-view-item.stack-view-removing{animation:phosphor-off .4s steps(2) forwards}[data-style=phosphor] .main-content .stack-view-algos{margin-top:var(--space-lg)}[data-style=phosphor] .main-content .queue-row{gap:var(--space-sm)}[data-style=phosphor] .main-content .queue-slot{color:var(--p-muted);font-size:var(--fs-small)}[data-style=phosphor] .main-content .queue-tag{color:var(--ph-bright);min-height:1.3rem}[data-style=phosphor] .main-content .queue-label,[data-style=phosphor] .main-content .queue-stack-title{color:var(--p-muted);font-size:var(--fs-small)}[data-style=phosphor] .main-content .queue-stack{align-items:flex-start;border:1px dashed var(--p-line)}[data-style=phosphor] .main-content .matrix-view-board{overflow:auto}[data-style=phosphor] .main-content .matrix-view-grid{margin:0}[data-style=phosphor] .main-content .matrix-view-cell{background:none;border:0;color:var(--p-ink);font-family:var(--f-data);font-size:1.4rem;outline-offset:1px;text-shadow:inherit}[data-style=phosphor] .main-content .matrix-view-cell:disabled{opacity:1}[data-style=phosphor] .main-content .matrix-view-cell:focus-visible,[data-style=phosphor] .main-content .matrix-view-cell:hover:not(:disabled){background:var(--p-ink);color:var(--p-bg);text-shadow:none}[data-style=phosphor] .main-content .matrix-view-cell.matrix-view-selected{box-shadow:var(--ph-box-glow);outline:3px solid var(--ph-max)}[data-style=phosphor] .main-content .matrix-view-island-1{background:var(--p-ink);color:var(--p-bg);text-shadow:none}[data-style=phosphor] .main-content .matrix-view-island-2{background:var(--p-line);color:var(--ph-max);text-shadow:none}[data-style=phosphor] .main-content .matrix-view-island-3{background:linear-gradient(var(--p-bg),var(--p-bg)) 50% /30px 24px no-repeat,repeating-linear-gradient(45deg,var(--p-ink) 0 2px,#0000 2px 6px);color:var(--p-ink)}[data-style=phosphor] .main-content .matrix-view-island-4{background:linear-gradient(var(--p-bg),var(--p-bg)) 50% /30px 24px no-repeat,repeating-linear-gradient(0deg,var(--p-ink) 0 2px,#0000 2px 6px);color:var(--p-ink)}[data-style=phosphor] .main-content .matrix-view-island-5{background:none;box-shadow:inset 0 0 0 3px var(--ph-max),var(--ph-box-glow);color:var(--ph-max)}[data-style=phosphor] .main-content .matrix-view-island-0{background:linear-gradient(var(--p-bg),var(--p-bg)) 50% /30px 24px no-repeat,radial-gradient(var(--p-ink) 1.5px,#0000 2px) 0 0 /7px 7px;color:var(--p-ink)}[data-style=phosphor] .main-content .binary-tree-order p{color:var(--ph-bright)}[data-style=phosphor] .main-content .heap-row{gap:var(--space-sm)}[data-style=phosphor] .main-content .heap-slot{color:var(--p-muted);font-size:var(--fs-small)}[data-style=phosphor] .main-content .graph-node-hot .graph-step{fill:var(--ph-max)}[data-style=phosphor] .main-content .trie-node.trie-word circle{fill:var(--p-line)}[data-style=phosphor] .main-content .trie-node.trie-word text{fill:var(--ph-max)}[data-style=phosphor] .main-content .trie-node.trie-word.trie-hot circle{fill:var(--p-ink)}[data-style=phosphor] .main-content .trie-node.trie-word.trie-hot text{fill:var(--p-bg)}[data-style=phosphor] .main-content .trie-node.trie-word.trie-hot circle{stroke:var(--ph-max);stroke-width:3;filter:var(--ph-svg-glow)}[data-style=phosphor] .main-content .union-find-root circle{stroke:var(--ph-bright);stroke-width:3.5}[data-style=phosphor] .main-content .balanced-trees-on{background:var(--p-ink);color:var(--p-bg);outline:0;text-shadow:none}[data-style=phosphor] .main-content .balanced-trees-ring{fill:none;stroke:none}[data-style=phosphor] .main-content .balanced-trees-node-mark .balanced-trees-ring{stroke:var(--ph-max);stroke-width:2;filter:var(--ph-svg-glow)}[data-style=phosphor] .main-content .balanced-trees-node-red .balanced-trees-disc{fill:var(--p-ink);stroke:var(--p-ink);stroke-width:3;stroke-dasharray:4 3}[data-style=phosphor] .main-content .balanced-trees-node-black .balanced-trees-disc{fill:var(--p-bg);stroke:var(--p-ink);stroke-width:1.5}[data-style=phosphor] .main-content .balanced-trees-node-red text{fill:var(--p-bg)}[data-style=phosphor] .main-content .balanced-trees-node-black text{fill:var(--p-ink)}[data-style=phosphor] .main-content .balanced-trees-node-unbalanced .balanced-trees-disc{fill:var(--p-bg);stroke:var(--ph-max);stroke-width:2.5;stroke-dasharray:var(--ph-dash-danger)}[data-style=phosphor] .main-content .balanced-trees-node-unbalanced text:not(.balanced-trees-balance){fill:var(--ph-max)}[data-style=phosphor] .main-content .balanced-trees-swatch{background-clip:padding-box;height:1rem;width:1rem}[data-style=phosphor] .main-content .balanced-trees-swatch-red{background:var(--p-ink) padding-box;border:2px dashed var(--p-ink)}[data-style=phosphor] .main-content .balanced-trees-swatch-black{background:var(--p-bg);border:2px solid var(--p-ink)}[data-style=phosphor] .main-content .balanced-trees-step-list{padding-left:2.2rem}[data-style=phosphor] .main-content .balanced-trees-step{background:none;border:0;color:var(--p-ink);font-family:var(--f-data);font-size:var(--fs-base);padding:0 var(--space-xs);text-align:left;text-shadow:inherit}[data-style=phosphor] .main-content .balanced-trees-step:disabled{opacity:1}[data-style=phosphor] .main-content .balanced-trees-step:focus-visible,[data-style=phosphor] .main-content .balanced-trees-step:hover:not(:disabled),[data-style=phosphor] .main-content .balanced-trees-step[aria-current=step]{background:var(--p-ink);color:var(--p-bg);text-shadow:none}[data-style=phosphor] .main-content .b-tree-table{margin:var(--space-sm) 0}[data-style=phosphor] .main-content .b-tree-cell-router{stroke:var(--p-muted)}[data-style=phosphor] .main-content .b-tree-text-router{fill:var(--p-muted)}[data-style=phosphor] .main-content .b-tree-value{font-size:16px}[data-style=phosphor] .main-content .b-tree-node-hl .b-tree-cell:not(.b-tree-cell-hit){stroke:var(--p-bg)}[data-style=phosphor] .main-content .b-tree-cell.b-tree-cell-hit,[data-style=phosphor] .main-content .b-tree-node-hl .b-tree-cell.b-tree-cell-hit{fill:var(--p-bg);stroke:var(--ph-max);stroke-width:3;filter:var(--ph-svg-glow)}[data-style=phosphor] .main-content .b-tree-cell-hit+text.b-tree-text,[data-style=phosphor] .main-content .b-tree-node-hl .b-tree-cell-hit+text.b-tree-text{fill:var(--ph-max)}[data-style=phosphor] .main-content .b-tree-link{stroke:var(--p-ink)}[data-style=phosphor] .main-content .b-tree-chain,[data-style=phosphor] .main-content .b-tree-meta{font-size:var(--fs-small)}[data-style=phosphor] .main-content .b-tree-result>div{display:inline}[data-style=phosphor] .main-content .intervals-tick{stroke:var(--p-line)}[data-style=phosphor] .main-content .intervals-bar-text{font-size:16px}[data-style=phosphor] .main-content .intervals-bar.intervals-bar-out:not(.intervals-bar-new){stroke:var(--ph-bright);stroke-width:3}[data-style=phosphor] .main-content .intervals-list{gap:var(--space-xs) var(--space-md)}[data-style=phosphor] .main-content .lru-cache-arrow,[data-style=phosphor] .main-content .lru-cache-pointer{color:var(--p-muted)}[data-style=phosphor] .main-content .lru-cache-node{border:1.5px solid var(--p-ink)}[data-style=phosphor] .main-content .lru-cache-tag{color:var(--p-muted);font-size:var(--fs-small);min-height:1em}[data-style=phosphor] .main-content .lru-cache-node-key,[data-style=phosphor] .main-content .lru-cache-node-value{background:none;color:var(--p-ink);padding:0 var(--space-sm)}[data-style=phosphor] .main-content .lru-cache-node .lru-cache-node-value{border-top:1px dashed var(--p-line)}[data-style=phosphor] .main-content .lru-cache-pointer{font-size:var(--fs-small)}[data-style=phosphor] .main-content .balanced-trees-on:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}[data-style=phosphor] .main-content .range-query-col{min-width:5.2rem}[data-style=phosphor] .main-content .range-query-sub{color:var(--p-muted);font-size:var(--fs-small)}[data-style=phosphor] .main-content .range-query-cell.range-query-array{color:var(--p-muted);margin-top:var(--space-xs);opacity:1}[data-style=phosphor] .main-content .range-query-leaf{stroke-width:3}[data-style=phosphor] .main-content .skip-list-grid{margin:0}[data-style=phosphor] .main-content .skip-list-grid :is(th,td){border:0}[data-style=phosphor] .main-content .skip-list-level-label{color:var(--p-muted)}[data-style=phosphor] .main-content .skip-list-cell{font-size:1.3rem;height:2rem}[data-style=phosphor] .main-content :is(.skip-list-node,.skip-list-head,.skip-list-nil){background:var(--p-bg);opacity:1}[data-style=phosphor] .main-content .skip-list-node.skip-list-visited{background:var(--p-ink);color:var(--p-bg)}[data-style=phosphor] .main-content .bloom-filter-row{gap:var(--space-xs)}[data-style=phosphor] .main-content .bloom-filter-bit{color:var(--p-muted);font-size:1.3rem}[data-style=phosphor] .main-content .bloom-filter-bit.bloom-filter-on{background:var(--p-ink);color:var(--p-bg);text-shadow:none}[data-style=phosphor] .main-content .bloom-filter-bit.bloom-filter-hit{box-shadow:0 0 10px 3px #effff38c;outline:2px solid var(--ph-max);outline-offset:1px}[data-style=phosphor] .main-content .bloom-filter-index{color:var(--p-muted);font-size:var(--fs-small)}[data-style=phosphor] .main-content .kdtree-frame{stroke:var(--p-line)}[data-style=phosphor] .main-content .kdtree-split-x{stroke:var(--ph-bright);stroke-width:2.5}[data-style=phosphor] .main-content .kdtree-split-y{stroke:var(--p-muted);stroke-width:1.5;stroke-dasharray:var(--ph-dash-danger)}[data-style=phosphor] .main-content .kdtree-dot{fill:var(--p-ink);stroke:var(--p-ink);stroke-width:1.5}[data-style=phosphor] .main-content .kdtree-dot.kdtree-node-visited{fill:var(--p-bg);stroke:var(--p-muted);stroke-dasharray:var(--ph-dash-visited);stroke-linecap:round}[data-style=phosphor] .main-content .kdtree-dot.kdtree-node-best{fill:var(--ph-max);stroke:var(--ph-max);stroke-width:3;filter:var(--ph-svg-glow)}[data-style=phosphor] .main-content .kdtree-query{fill:var(--p-bg);stroke:var(--ph-max);stroke-width:2}[data-style=phosphor] .main-content .kdtree-node-text{font-size:14px}[data-style=phosphor] .main-content .kdtree-axis-text{fill:var(--p-muted);font-size:14px}[data-style=phosphor] .main-content .kdtree-label{font-size:15px}[data-style=phosphor] .main-content .quadtree-svg{background:none;border:1px dashed var(--p-line)}[data-style=phosphor] .main-content .quadtree-cell{stroke:var(--p-line)}[data-style=phosphor] .main-content .quadtree-visited{fill:var(--p-ink);fill-opacity:.06;stroke:var(--p-muted);stroke-dasharray:var(--ph-dash-visited)}[data-style=phosphor] .main-content .quadtree-query{stroke:var(--ph-max);stroke-dasharray:var(--ph-dash-danger)}[data-style=phosphor] .main-content .quadtree-point{fill:var(--p-ink);stroke:var(--p-ink)}[data-style=phosphor] .main-content .quadtree-point.quadtree-found{fill:var(--ph-max);stroke:var(--ph-max);stroke-width:3;filter:var(--ph-svg-glow)}[data-style=phosphor] .main-content .suffix-array-chars{gap:var(--space-xs)}[data-style=phosphor] .main-content .suffix-array-index{color:var(--p-muted);font-size:var(--fs-small)}[data-style=phosphor] .main-content table .suffix-array-match td{background:none;border:2px solid var(--ph-max);box-shadow:var(--ph-box-glow);color:var(--ph-max);text-shadow:var(--ph-glow-found)}[data-style=phosphor] .main-content .fibonacci-heap-field{font-size:var(--fs-small)}[data-style=phosphor] .main-content .fibonacci-heap-node{background:var(--p-bg);border:1.5px solid var(--p-ink);color:var(--p-ink);font-family:var(--f-data);text-shadow:inherit}[data-style=phosphor] .main-content .fibonacci-heap-key{font-size:1.3rem}[data-style=phosphor] .main-content .fibonacci-heap-deg{color:var(--p-muted);font-size:1rem;opacity:1}[data-style=phosphor] .main-content .fibonacci-heap-min{color:var(--ph-max);font-size:var(--fs-small)}[data-style=phosphor] .main-content .fibonacci-heap-min:after{border-top-color:var(--ph-max)}[data-style=phosphor] .main-content .fibonacci-heap-node-min{border:3px solid var(--ph-max);box-shadow:var(--ph-box-glow);color:var(--ph-max)}[data-style=phosphor] .main-content .fibonacci-heap-node-mark{background:var(--p-bg);border:2px dashed var(--ph-max);color:var(--ph-max)}[data-style=phosphor] .main-content .fibonacci-heap-node-selected,[data-style=phosphor] .main-content button.fibonacci-heap-node:hover:not(:disabled){background:var(--p-ink);color:var(--p-bg);text-shadow:none}[data-style=phosphor] .main-content .fibonacci-heap-node-selected .fibonacci-heap-deg,[data-style=phosphor] .main-content button.fibonacci-heap-node:hover:not(:disabled) .fibonacci-heap-deg{color:var(--p-bg)}[data-style=phosphor] .main-content .fibonacci-heap-node-selected{outline:3px solid var(--ph-max)}[data-style=phosphor] .main-content button.fibonacci-heap-node-min:focus-visible,[data-style=phosphor] .main-content button.fibonacci-heap-node:focus-visible{outline:3px dashed var(--focus-ring);outline-offset:5px}[data-style=phosphor] .main-content .range-query-node-index{stroke:var(--card-bg);stroke-width:4px;stroke-linejoin:round;paint-order:stroke}.array-view{max-width:100%;overflow:hidden}.array-complexity,.array-legend{color:var(--debug-text);font-size:.9rem}.array-stats{display:flex;flex-wrap:wrap;gap:1.5rem;margin:1rem 0 .5rem}.array-scroll{background-color:var(--main-bg);border:1px solid var(--input-border);border-radius:var(--radius-lg);overflow-x:auto;padding:1rem .5rem}.array-cells{display:flex;gap:4px;width:max-content}.array-cell-wrap{flex-direction:column}.array-cell,.array-cell-wrap{align-items:center;display:flex}.array-cell{border-radius:var(--radius-sm);box-sizing:border-box;font-weight:700;height:48px;justify-content:center;min-width:48px;padding:0 6px}.array-cell-used{background-color:var(--stack-item-bg);border:2px solid var(--stack-item-bg);color:var(--stack-item-text)}.array-cell-free{border:2px dashed var(--input-border);color:var(--text-color)}.array-cell-index{color:var(--debug-text);font-size:.75rem;margin-top:4px}.array-note{border-left:4px solid var(--stack-item-bg);padding:.5rem .75rem}.array-note,.array-result code{background-color:var(--debug-bg)}.array-result code{border-radius:var(--radius-sm);padding:.1rem .4rem}.array-controls label{display:flex;flex:1 1;flex-direction:column;font-size:.85rem}.array-controls input{max-width:none}.array-buttons{flex-wrap:wrap}.array-cell-highlight{outline:3px solid var(--error-border);outline-offset:2px}.array-cell-pointer{color:var(--text-color);font-size:.75rem;font-weight:700;margin-top:2px}.string-view .string-about{margin:0 auto 1rem;max-width:600px}.string-complexity{border-collapse:collapse;font-size:.85rem;margin:0 auto 1rem}.string-complexity caption{font-weight:700;margin-bottom:.25rem}.string-complexity td{border-bottom:1px solid var(--input-border);padding:.15rem .75rem;text-align:left}.string-cells{display:flex;gap:4px;justify-content:flex-start;max-width:100%;overflow-x:auto;padding:.5rem}.string-cell{align-items:center;background-color:var(--stack-item-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--stack-item-text);display:flex;flex:0 0 auto;flex-direction:column;min-width:2.2rem}.string-cell-hit{outline:3px solid var(--state-found)}.string-char{font-family:var(--f-data);font-size:1.3rem;padding:.4rem .3rem}.string-index{background-color:var(--card-bg);border-top:1px solid var(--input-border);color:var(--text-color);font-size:.7rem;text-align:center;width:100%}.string-controls{flex-wrap:wrap}.string-result{font-weight:700;margin-top:1rem}.hash-table-complexity,.hash-table-intro{margin:.25rem 0;max-width:100%}.hash-table-stats{color:var(--text-color);display:flex;flex-wrap:wrap;gap:1rem;margin:.75rem 0}.hash-table-scroll{margin:.5rem 0;max-height:360px;max-width:100%;overflow:auto}.hash-table-buckets{display:inline-block;list-style:none;margin:0;min-width:100%;padding:0}.hash-table-row{align-items:center;display:flex;gap:.4rem;padding:.25rem 0;white-space:nowrap}.hash-table-index{background:var(--card-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--text-color);font-weight:700;min-width:2rem;padding:.3rem .5rem;text-align:center}.hash-table-null{color:var(--empty-message);font-style:italic;margin-left:.4rem}.hash-table-arrow{color:var(--text-color)}.hash-table-entry{border:1px solid var(--input-border);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.hash-table-entry-key,.hash-table-entry-value{padding:.3rem .6rem}.hash-table-entry-key{background:var(--stack-item-bg);color:var(--stack-item-text);font-weight:700}.hash-table-entry-value,.hash-table-result{background:var(--card-bg);color:var(--text-color)}.hash-table-result{border:1px solid var(--input-border);border-radius:var(--radius-sm);margin:.5rem 0;overflow-wrap:anywhere;padding:.5rem .75rem}@media (max-width:700px){.hash-table-entry-key,.hash-table-entry-value{padding:.25rem .4rem}}.linked-list-complexity,.linked-list-intro{margin:.25rem 0;max-width:100%}.linked-list-scroll{margin:.75rem 0;max-width:100%;overflow-x:auto;padding-bottom:.5rem}.linked-list-chain{align-items:flex-end;display:inline-flex;list-style:none;margin:0;min-width:100%;padding:0}.linked-list-item{align-items:center;display:flex;flex:0 0 auto;flex-direction:column;padding-right:2rem;position:relative}.linked-list-tags{color:var(--text-color);display:flex;font-size:.75rem;font-weight:700;gap:.25rem;min-height:1.2rem}.linked-list-node{background:var(--stack-item-bg);border:2px solid var(--input-border);border-radius:var(--radius-md);color:var(--stack-item-text);display:flex;overflow:hidden}.linked-list-val{font-weight:700;min-width:2.5rem;padding:.5rem .6rem;text-align:center}.linked-list-ptr{align-items:center;border-left:2px solid var(--input-border);display:flex;justify-content:center;width:1.5rem}.linked-list-index{color:var(--text-color);font-size:.75rem;opacity:.7}.linked-list-arrow{font-size:1.4rem;right:.3rem;top:2.3rem}.linked-list-arrow,.linked-list-end{color:var(--text-color);position:absolute}.linked-list-end{font-style:italic;right:-.2rem;top:2.4rem;transform:translateX(100%);white-space:nowrap}.linked-list-item:last-child{padding-right:5.5rem}.linked-list-highlight .linked-list-node{outline:3px solid var(--state-active)}.linked-list-cycle-target .linked-list-node{border-style:dashed}.linked-list-stats{color:var(--text-color);display:flex;flex-wrap:wrap;gap:1rem;margin:.5rem 0}.linked-list-cycle-note{font-weight:700}.linked-list-result{color:var(--text-color);margin:.5rem 0}.linked-list-mode-active{background:var(--stack-item-bg);color:var(--stack-item-text);outline:2px solid var(--text-color)}.linked-list-ditem{align-items:center;display:flex;flex:0 0 auto}.linked-list-dcell{align-items:center;display:flex;flex-direction:column}.linked-list-dnode{align-items:stretch;background:var(--stack-item-bg);border:2px solid var(--input-border);border-radius:6px;color:var(--stack-item-text);cursor:pointer;display:flex;font:inherit;overflow:hidden;padding:0}.linked-list-dnode:disabled{cursor:not-allowed}.linked-list-dptr{align-items:center;display:flex;flex-direction:column;font-size:.75rem;justify-content:center;padding:.2rem .35rem;white-space:nowrap}.linked-list-dptr:first-child{border-right:2px solid var(--input-border)}.linked-list-dptr:last-child{border-left:2px solid var(--input-border)}.linked-list-dptr-name{opacity:.8}.linked-list-dlinks{align-items:center;color:var(--text-color);display:flex;flex:0 0 auto;flex-direction:column;font-size:1.2rem;line-height:1;width:2rem}.linked-list-highlight .linked-list-dnode{outline:3px solid var(--state-active)}.linked-list-selected .linked-list-dnode{outline:3px dashed var(--text-color);outline-offset:2px}.linked-list-dcontrols{flex-wrap:wrap}.stack-view-complexity,.stack-view-intro{margin:.5rem auto;max-width:600px;text-align:left}.stack-view-stats{display:flex;gap:1.5rem;justify-content:center;margin:1rem 0 0}.stack-view-board{align-items:center;background-color:var(--main-bg);border:1px solid var(--input-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;justify-content:flex-end;margin:1rem 0;max-height:420px;min-height:240px;overflow:auto;padding:1rem}.stack-view-items{display:flex;flex-direction:column-reverse;list-style:none;margin:0;max-width:400px;padding:0;width:100%}.stack-view-item{background-color:var(--stack-item-bg);border-radius:var(--radius-sm);box-shadow:0 2px 5px var(--card-shadow);color:var(--stack-item-text);font-weight:700;margin:.25rem 0;overflow-wrap:anywhere;padding:.6rem .75rem;position:relative}.stack-view-item.stack-view-top:after{content:"\2190 top";font-size:.8rem;font-weight:400;position:absolute;right:.75rem}.stack-view-item.stack-view-new{animation:stack-view-push .6s ease forwards}.stack-view-item.stack-view-removing{animation:stack-view-pop .4s ease forwards}.stack-view-result{font-weight:700;margin:.5rem 0}.stack-view-algos{margin-top:1.5rem;text-align:left}.stack-view-algo{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin:.5rem 0}.stack-view-algo input{flex:1 1 200px;min-width:0}@keyframes stack-view-push{0%{opacity:0;transform:translateY(-80px)}to{opacity:1;transform:translateY(0)}}@keyframes stack-view-pop{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-80px)}}.queue-complexity,.queue-intro{margin:.25rem 0;max-width:100%}.queue-section{margin:1rem 0}.queue-section h3{margin:.5rem 0}.queue-scroll{max-width:100%;overflow-x:auto;padding:.25rem 0}.queue-row{align-items:stretch;display:inline-flex;gap:.35rem;min-width:100%;white-space:nowrap}.queue-cell{background:var(--stack-item-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--stack-item-text);font-weight:700;min-width:2.75rem;padding:.4rem .5rem;text-align:center}.queue-cell-empty{background:var(--card-bg);color:var(--empty-message);font-weight:400}.queue-slot{align-items:center;color:var(--text-color);display:inline-flex;flex-direction:column;font-size:.8rem;gap:.15rem}.queue-tag{font-weight:700;min-height:1rem}.queue-label{align-self:center;color:var(--text-color);font-size:.85rem}.queue-stacks{display:flex;flex-wrap:wrap;gap:1.5rem}.queue-stack{border:1px dashed var(--input-border);border-radius:var(--radius-sm);display:flex;flex-direction:column-reverse;gap:.25rem;min-height:2rem;min-width:5rem;padding:.35rem}.queue-stack-title{color:var(--text-color);font-size:.85rem;margin-bottom:.25rem}.queue-result{background:var(--card-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--text-color);margin:.5rem 0;overflow-wrap:anywhere;padding:.5rem .75rem}.queue-in-window{outline:2px solid var(--text-color)}@media (max-width:700px){.queue-cell{min-width:2.25rem;padding:.3rem .35rem}}.matrix-view-intro{margin:.5rem auto;max-width:600px;text-align:left}.matrix-view-stats{display:flex;gap:1.5rem;justify-content:center;margin:1rem 0 0}.matrix-view-board{background-color:var(--main-bg);border:1px solid var(--input-border);border-radius:var(--radius-lg);margin:1rem 0;max-width:100%;overflow:auto;padding:1rem}.matrix-view-grid{grid-gap:4px;display:grid;gap:4px;margin:0 auto;width:max-content}.matrix-view-cell{background-color:var(--card-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--text-color);cursor:pointer;font:inherit;font-weight:700;height:44px;padding:0;width:44px}.matrix-view-cell:disabled{cursor:default}.matrix-view-island{background-color:var(--stack-item-bg);color:var(--island-ink)}.matrix-view-island-1{background-color:var(--island-1)}.matrix-view-island-2{background-color:var(--island-2)}.matrix-view-island-3{background-color:var(--island-3)}.matrix-view-island-4{background-color:var(--island-4)}.matrix-view-island-5{background-color:var(--island-5)}.matrix-view-selected{outline:3px solid var(--text-color);outline-offset:1px}.matrix-view-result{font-weight:700;margin:.5rem 0}.matrix-view-selection{align-self:center}.ds-container .ds-controls input[type=number]{width:5rem}.binary-tree-complexity,.binary-tree-intro,.binary-tree-stats{margin:.25rem 0;max-width:100%}.binary-tree-result{font-weight:700;margin:.5rem 0}.binary-tree-scroll{max-width:100%;overflow-x:auto;padding:.5rem 0}.binary-tree-edge,.binary-tree-node circle{stroke:var(--input-border);stroke-width:2}.binary-tree-node circle{fill:var(--stack-item-bg)}.binary-tree-node text{fill:var(--stack-item-text);font-size:13px;font-weight:700}.binary-tree-node.binary-tree-visited circle{stroke:var(--state-danger)}.binary-tree-node.binary-tree-current circle{stroke:var(--text-color);stroke-width:4}.binary-tree-node.binary-tree-lca circle{stroke:var(--state-danger);stroke-width:5}.binary-tree-node text.binary-tree-badge{fill:var(--text-color);font-size:11px}.binary-tree-order h3{margin:.5rem 0}.binary-tree-order p{overflow-wrap:anywhere}.bst-complexity,.bst-intro,.bst-note,.bst-stats{margin:.25rem 0;max-width:100%}.bst-section{margin:1rem 0}.bst-result,.bst-section h3{margin:.5rem 0}.bst-result{font-weight:700}.bst-scroll{max-width:100%;overflow:auto;padding:.5rem 0}.bst-edge,.bst-node circle{stroke:var(--input-border);stroke-width:2}.bst-node circle{fill:var(--stack-item-bg)}.bst-node text{fill:var(--stack-item-text);font-weight:700}.bst-node-path circle{stroke:var(--state-active);stroke-width:4}.heap-complexity,.heap-intro{margin:.25rem 0;max-width:100%}.heap-section{margin:1rem 0}.heap-section h3{margin:.5rem 0}.heap-scroll{max-width:100%;overflow-x:auto;padding:.25rem 0}.heap-svg{display:block;margin:0 auto}.heap-edge,.heap-node{stroke:var(--input-border);stroke-width:2}.heap-node{fill:var(--stack-item-bg)}.heap-node-hl{stroke-width:4;stroke:var(--state-active)}.heap-node-text{fill:var(--stack-item-text);text-anchor:middle;dominant-baseline:central;font-size:14px;font-weight:700}.heap-row{display:inline-flex;gap:.35rem;min-width:100%;white-space:nowrap}.heap-slot{align-items:center;display:inline-flex;flex-direction:column;font-size:.8rem}.heap-cell{background:var(--stack-item-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--stack-item-text);font-weight:700;min-width:2.75rem;padding:.4rem .5rem;text-align:center}.heap-cell-hl{outline:3px solid var(--state-active)}.heap-result{font-weight:700;margin:.5rem 0}.graph-complexity,.graph-intro{margin:.25rem 0;max-width:100%}.graph-scroll{margin:.75rem 0;max-width:100%;overflow-x:auto}.graph-svg{display:block;margin:0 auto;max-width:none}.graph-edge line{stroke:var(--input-border);stroke-width:2}.graph-edge-hot line{stroke:var(--stack-item-bg);stroke-width:4}.graph-arrow-head,.graph-weight{fill:var(--text-color)}.graph-weight{font-size:11px}.graph-node circle{fill:var(--card-bg);stroke:var(--input-border);stroke-width:2}.graph-node text{fill:var(--text-color);font-weight:600}.graph-node-hot circle{fill:var(--stack-item-bg);stroke:var(--stack-item-bg)}.graph-node-hot text{fill:var(--stack-item-text)}.graph-node-hot .graph-step{fill:var(--text-color);font-size:11px}.graph-stats{display:flex;flex-wrap:wrap;gap:1rem;margin:.5rem 0}.graph-result{border:1px solid var(--input-border);border-radius:var(--radius-md);margin:.5rem 0;overflow-wrap:anywhere;padding:.5rem .75rem}.trie-complexity,.trie-intro,.trie-words{margin:.25rem 0;max-width:100%}.trie-result{margin:.5rem 0}.trie-scroll{max-width:100%;overflow:auto;padding:.25rem 0}.trie-svg{display:block}.trie-edge,.trie-node circle{stroke:var(--input-border);stroke-width:2}.trie-node circle{fill:var(--card-bg)}.trie-node text{fill:var(--text-color);font-size:14px;font-weight:700}.trie-word circle{fill:var(--stack-item-bg)}.trie-word text{fill:var(--stack-item-text)}.trie-edge.trie-hot,.trie-node.trie-hot circle{stroke:var(--state-active);stroke-width:4}.trie-controls{flex-wrap:wrap;justify-content:center}.union-find-complexity,.union-find-intro{margin:.25rem 0;max-width:100%}.union-find-result{font-weight:700;margin:.5rem 0}.union-find-scroll{max-width:100%;overflow-x:auto;padding:.25rem 0}.union-find-edge,.union-find-node circle{stroke:var(--input-border);stroke-width:2}.union-find-node circle{fill:var(--stack-item-bg)}.union-find-root circle{stroke-width:4}.union-find-node text{fill:var(--stack-item-text);font-weight:700}.union-find-table{border-collapse:collapse;margin:.5rem 0}.union-find-table td,.union-find-table th{border:1px solid var(--input-border);min-width:2rem;padding:.25rem .5rem;text-align:center}.balanced-trees-intro,.balanced-trees-note,.balanced-trees-stats,.balanced-trees-step-count{margin:.25rem 0;max-width:100%}.balanced-trees-section{margin:1rem 0}.balanced-trees-section h3{margin:.5rem 0}.balanced-trees-result{font-weight:700;margin:.5rem 0}.balanced-trees-scroll{max-width:100%;overflow:auto;padding:.5rem 0}.balanced-trees-controls{flex-wrap:wrap}.balanced-trees-hidden{clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.control-btn.balanced-trees-on{outline:3px solid var(--text-color);outline-offset:1px}.balanced-trees-table{border-collapse:collapse;color:var(--text-color)}.balanced-trees-table caption{font-weight:700;margin-bottom:.25rem;text-align:left}.balanced-trees-table td,.balanced-trees-table th{border:1px solid var(--input-border);padding:.35rem .6rem;text-align:left;vertical-align:top}.balanced-trees-edge{stroke:var(--empty-message);stroke-width:2}.balanced-trees-disc{fill:var(--stack-item-bg);stroke:var(--input-border);stroke-width:2}.balanced-trees-node text{fill:var(--stack-item-text);font-size:13px;font-weight:700}.balanced-trees-node .balanced-trees-balance{fill:var(--text-color);font-size:11px;font-weight:400}.balanced-trees-ring{fill:none;stroke:none}.balanced-trees-node-mark .balanced-trees-ring{stroke:var(--text-color);stroke-width:3}.balanced-trees-node-red .balanced-trees-disc,.balanced-trees-node-unbalanced .balanced-trees-disc,.balanced-trees-swatch-red{fill:var(--state-danger);background:var(--state-danger)}.balanced-trees-node-red .balanced-trees-disc,.balanced-trees-swatch-red{stroke:var(--text-color);stroke-dasharray:4 3;border:2px dashed var(--text-color)}.balanced-trees-node-black .balanced-trees-disc,.balanced-trees-swatch-black{fill:var(--navbar-bg);stroke:var(--text-color);background:var(--navbar-bg);border:2px solid var(--text-color)}.balanced-trees-node-black text,.balanced-trees-node-red text,.balanced-trees-node-unbalanced text:not(.balanced-trees-balance){fill:var(--navbar-text)}.balanced-trees-swatch{border-radius:50%;display:inline-block;height:.8rem;vertical-align:middle;width:.8rem}.balanced-trees-steps{margin-top:.5rem}.balanced-trees-step-list{margin:.5rem 0;padding-left:1.5rem}.balanced-trees-step{background:none;border:1px solid #0000;color:var(--text-color);cursor:pointer;font:inherit;padding:.15rem .4rem;text-align:left}.balanced-trees-step[aria-current=step]{border-color:var(--text-color);font-weight:700}.balanced-trees-pair{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.balanced-trees-arrow{font-weight:700}.b-tree-intro{margin:.25rem 0;max-width:100%}.b-tree-section{margin:1.5rem 0}.b-tree-section h3{margin:.5rem 0}.b-tree-scroll{max-width:100%;overflow-x:auto;padding:.25rem 0}.b-tree-table{border-collapse:collapse;margin:.5rem auto}.b-tree-table td,.b-tree-table th{border:1px solid var(--input-border);padding:.3rem .6rem;text-align:left}.b-tree-controls{align-items:center;flex-wrap:wrap}.b-tree-controls input{min-width:6rem}.b-tree-label{align-items:center;display:inline-flex;gap:.4rem}.b-tree-select{background-color:var(--card-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--text-color);padding:.5rem}.b-tree-result{font-weight:700;margin:.75rem 0}.b-tree-events{font-weight:400;margin:.25rem 0 0;padding-left:1.5rem}.b-tree-meta{font-size:.9rem;margin:.75rem 0 .25rem}.b-tree-chain{font-size:.9rem;margin:.25rem 0;white-space:nowrap}.b-tree-svg{display:block;margin:0 auto}.b-tree-edge{stroke:var(--input-border);stroke-width:2}.b-tree-link{stroke:var(--text-color);stroke-width:1.5}.b-tree-link-hl{stroke:var(--state-active);stroke-width:3}.b-tree-arrowhead{fill:var(--text-color)}.b-tree-cell{fill:var(--stack-item-bg);stroke:var(--input-border);stroke-width:1.5}.b-tree-cell-router,.b-tree-cell-value{fill:var(--card-bg)}.b-tree-cell-hit{fill:var(--state-active)}.b-tree-node-hl .b-tree-cell{stroke:var(--state-active);stroke-width:3}.b-tree-text,.b-tree-value{text-anchor:middle;dominant-baseline:central}.b-tree-text{fill:var(--stack-item-text);font-size:13px;font-weight:700}.b-tree-text-router,.b-tree-value{fill:var(--text-color)}.b-tree-value{font-size:12px}.intervals-complexity,.intervals-intro{margin:.25rem 0;max-width:100%}.intervals-section{margin:1rem 0}.intervals-section h3{margin:.5rem 0}.intervals-scroll{max-width:100%;overflow-x:auto;padding:.25rem 0}.intervals-svg{display:block}.intervals-tick{stroke:var(--input-border);stroke-width:1;stroke-dasharray:2 3}.intervals-tick-text{fill:var(--text-color);text-anchor:middle;font-size:11px}.intervals-bar{fill:var(--stack-item-bg);stroke:var(--input-border);stroke-width:2}.intervals-bar-out{stroke:var(--text-color);stroke-width:3}.intervals-bar-new{stroke-dasharray:5 3}.intervals-bar-text{fill:var(--stack-item-text);text-anchor:middle;dominant-baseline:central;font-size:11px;font-weight:700}.intervals-list{display:flex;flex-wrap:wrap;gap:.35rem 1rem;list-style-position:inside;margin:.5rem 0;padding:0}.intervals-result{font-weight:700;margin:.5rem 0}.lru-cache-complexity,.lru-cache-intro{margin:.25rem 0;max-width:100%}.lru-cache-stats{color:var(--text-color);display:flex;flex-wrap:wrap;gap:1rem;margin:.75rem 0}.lru-cache-heading{margin:.75rem 0 .25rem}.lru-cache-scroll{margin:.5rem 0;max-width:100%;overflow-x:auto}.lru-cache-list{list-style:none;margin:0;padding:.25rem 0;width:max-content}.lru-cache-item,.lru-cache-list{align-items:center;display:flex}.lru-cache-arrow{color:var(--text-color);padding:0 .4rem}.lru-cache-sentinel{border:2px dashed var(--input-border);border-radius:var(--radius-md);color:var(--text-color);font-size:.85rem;padding:.5rem .6rem}.lru-cache-node{align-items:stretch;border:2px solid var(--input-border);border-radius:var(--radius-md);display:flex;flex-direction:column;min-width:4rem;overflow:hidden;text-align:center}.lru-cache-tag{color:var(--text-color);font-size:.7rem;padding:.1rem .3rem}.lru-cache-node-key,.lru-cache-node-value{padding:.25rem .5rem}.lru-cache-node-key{background:var(--stack-item-bg);color:var(--stack-item-text);font-weight:700}.lru-cache-node-value{color:var(--text-color)}.lru-cache-map{list-style:none;margin:0;padding:0}.lru-cache-map-row{align-items:center;display:flex;margin:.25rem 0}.lru-cache-map-row .lru-cache-node-key{border-radius:var(--radius-sm);min-width:3rem;text-align:center}.lru-cache-pointer{color:var(--text-color);font-size:.9rem}.lru-cache-result{color:var(--text-color);margin:.75rem 0}.range-query-complexity,.range-query-intro{margin:.25rem 0;max-width:100%}.range-query-result{color:var(--text-color);font-weight:700;margin:.5rem 0}.range-query-legend{color:var(--text-color);font-size:.85rem;margin:.25rem 0 .75rem}.range-query-scroll{margin:.5rem 0;max-width:100%;overflow-x:auto}.range-query-fenwick{display:flex;gap:.35rem;padding:.25rem 0;width:max-content}.range-query-col{align-items:center;display:flex;flex-direction:column;min-width:4.2rem}.range-query-cell{background:var(--stack-item-bg);border:2px solid var(--input-border);border-radius:var(--radius-sm);color:var(--stack-item-text);min-width:2.6rem;padding:.4rem .5rem;text-align:center}.range-query-array{margin-top:.5rem;opacity:.85}.range-query-hit{border-color:var(--state-active);box-shadow:0 0 0 2px var(--state-active)}.range-query-minus{border-color:var(--state-danger);border-style:dashed;box-shadow:0 0 0 2px var(--state-danger)}.range-query-sub{color:var(--text-color);font-size:.7rem}.range-query-svg{display:block}.range-query-edge{stroke:var(--input-border);stroke-width:1.5}.range-query-node{fill:var(--stack-item-bg);stroke:var(--input-border);stroke-width:2}.range-query-leaf{stroke-dasharray:0;stroke-width:3}.range-query-node-hit{stroke:var(--state-active);stroke-width:4}.range-query-node-text{fill:var(--stack-item-text);font-size:13px}.range-query-node-index{fill:var(--text-color);font-size:10px}.skip-list-complexity,.skip-list-intro{margin:.4rem 0}.skip-list-stats{display:flex;flex-wrap:wrap;gap:1rem;margin:.5rem 0}.skip-list-scroll{margin:.75rem 0;max-width:100%;overflow-x:auto}.skip-list-grid{border-collapse:initial;border-spacing:0 6px;margin:0 auto}.skip-list-level-label{color:var(--text-color);font-weight:700;padding-right:.5rem;text-align:right}.skip-list-cell{background-image:linear-gradient(var(--input-border),var(--input-border));background-position:0;background-repeat:no-repeat;background-size:100% 2px;color:var(--text-color);height:34px;min-width:44px;padding:0 4px;text-align:center}.skip-list-node{font-weight:700}.skip-list-head,.skip-list-nil,.skip-list-node{background-color:var(--stack-item-bg);background-image:none;border:2px solid var(--input-border);border-radius:var(--radius-sm);color:var(--stack-item-text)}.skip-list-nil{opacity:.6}.skip-list-visited{outline:3px solid var(--state-active)}.skip-list-result{background:var(--card-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--text-color);margin:.75rem 0;padding:.5rem .75rem}.bloom-filter-complexity,.bloom-filter-intro{margin:.25rem 0;max-width:100%}.bloom-filter-section{margin:1rem 0}.bloom-filter-section h3{margin:.5rem 0}.bloom-filter-scroll{max-width:100%;overflow-x:auto;padding:.25rem 0}.bloom-filter-row{display:inline-flex;gap:.25rem;white-space:nowrap}.bloom-filter-slot{align-items:center;display:inline-flex;flex-direction:column;gap:.15rem}.bloom-filter-bit{background:var(--card-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--text-color);font-weight:700;min-width:1.9rem;padding:.35rem .25rem;text-align:center}.bloom-filter-on{background:var(--stack-item-bg);color:var(--stack-item-text)}.bloom-filter-hit{outline:3px solid var(--text-color);outline-offset:1px}.bloom-filter-index{font-size:.75rem}.bloom-filter-items{display:flex;flex-wrap:wrap;gap:.35rem;list-style:none;margin:0;padding:0}.bloom-filter-items li{border:1px solid var(--input-border);border-radius:var(--radius-sm);overflow-wrap:anywhere;padding:.25rem .5rem}.bloom-filter-result{margin:.5rem 0;overflow-wrap:anywhere}.kdtree-complexity,.kdtree-intro{margin:.25rem 0;max-width:100%}.kdtree-section{margin:1rem 0}.kdtree-section h3{margin:.5rem 0}.kdtree-scroll{max-width:100%;overflow-x:auto;padding:.25rem 0}.kdtree-svg{display:block;margin:0 auto}.kdtree-frame{fill:none;stroke:var(--input-border);stroke-width:1}.kdtree-split-x{stroke:var(--state-danger);stroke-width:2}.kdtree-split-y{stroke:var(--state-info);stroke-width:2}.kdtree-dot,.kdtree-edge,.kdtree-node{stroke:var(--input-border);stroke-width:2}.kdtree-dot,.kdtree-node{fill:var(--stack-item-bg)}.kdtree-node-visited{stroke:var(--state-active);stroke-width:3}.kdtree-node-best{stroke:var(--state-found);stroke-width:4}.kdtree-dot.kdtree-node-best,.kdtree-dot.kdtree-node-visited{fill:var(--stack-item-bg)}.kdtree-query{fill:var(--state-visited)}.kdtree-axis-text,.kdtree-label,.kdtree-node-text{fill:var(--text-color);text-anchor:middle}.kdtree-node-text{fill:var(--stack-item-text);font-size:11px;font-weight:700}.kdtree-axis-text{fill:var(--stack-item-text);font-size:10px}.kdtree-label{text-anchor:start;font-size:10px}.kdtree-result{font-weight:700;margin:.5rem 0}.main-content .kdtree-key svg{margin-left:var(--space-md);vertical-align:middle}.quadtree-complexity,.quadtree-intro,.quadtree-stats{line-height:1.4;margin:.4rem 0}.quadtree-num{width:5.5rem}.quadtree-result{font-weight:600;margin:.5rem 0}.quadtree-scroll{max-width:100%;overflow:auto}.quadtree-svg{background:var(--card-bg);border:1px solid var(--input-border);cursor:crosshair;display:block;margin:0 auto;max-width:none}.quadtree-cell{fill:none;stroke:var(--input-border);stroke-width:1}.quadtree-internal{stroke-dasharray:3 2}.quadtree-visited{fill:var(--stack-item-bg);fill-opacity:.35;stroke:var(--text-color)}.quadtree-query{fill:none;stroke:var(--text-color);stroke-width:2;stroke-dasharray:6 3}.quadtree-point{fill:var(--stack-item-bg);stroke:var(--stack-item-text);stroke-width:1}.quadtree-found{fill:var(--text-color);stroke:var(--card-bg);stroke-width:2}.suffix-array-complexity,.suffix-array-intro{max-width:100%}.suffix-array-result{background:var(--card-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);color:var(--text-color);margin:10px 0;padding:8px 12px}.suffix-array-section{margin-top:16px;max-width:100%}.suffix-array-scroll{max-width:100%;overflow-x:auto}.suffix-array-chars{display:flex;gap:4px}.suffix-array-slot{align-items:center;display:flex;flex-direction:column}.suffix-array-char{background:var(--stack-item-bg);border-radius:var(--radius-sm);color:var(--stack-item-text);font-family:var(--f-data);min-width:32px;padding:6px 4px;text-align:center}.suffix-array-index{color:var(--text-color);font-size:.75rem}.suffix-array-table{border-collapse:collapse;color:var(--text-color)}.suffix-array-table td,.suffix-array-table th{border:1px solid var(--input-border);padding:4px 12px;text-align:left}.suffix-array-suffix{font-family:var(--f-data);white-space:pre}.suffix-array-match td{background:var(--stack-item-bg);color:var(--stack-item-text)}.fibonacci-heap{color:var(--text-color);max-width:100%}.fibonacci-heap-complexity,.fibonacci-heap-intro,.fibonacci-heap-note,.fibonacci-heap-stats{line-height:1.45;margin:.35rem 0;max-width:100%}.fibonacci-heap-section{margin-top:1.25rem;max-width:100%;min-width:0}.fibonacci-heap-section h3{margin:.25rem 0}.ds-controls.fibonacci-heap-controls{align-items:flex-end;flex-wrap:wrap;justify-content:flex-start;max-width:100%}.fibonacci-heap .control-btn{background:var(--stack-item-bg);border:1px solid var(--input-border);color:var(--stack-item-text)}.fibonacci-heap-field{align-items:flex-start;display:flex;flex:1 1 9rem;flex-direction:column;font-size:.9rem;gap:.25rem;max-width:16rem;min-width:0}.fibonacci-heap-field input,.fibonacci-heap-field select{background:var(--card-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);box-sizing:border-box;color:var(--text-color);max-width:100%;padding:.5rem;width:100%}.fibonacci-heap-result{color:var(--text-color);font-weight:700;margin:.75rem 0 .25rem}.fibonacci-heap-steps{color:var(--text-color);margin:.25rem 0 .75rem}.fibonacci-heap-steps p{margin:.15rem 0}.fibonacci-heap-scroll{background:var(--card-bg);border:1px solid var(--input-border);border-radius:var(--radius-lg);max-width:100%;overflow-x:auto;overflow-y:hidden;padding:.5rem .25rem .75rem}.fibonacci-heap-canvas{margin:0 auto;position:relative}.fibonacci-heap-svg{left:0;overflow:visible;position:absolute;top:0}.fibonacci-heap-edge,.fibonacci-heap-root-link,.fibonacci-heap-root-wrap{stroke:var(--input-border);stroke-width:2;fill:none}.fibonacci-heap-root-wrap{stroke-dasharray:5 4}.fibonacci-heap-arrow{fill:var(--input-border)}.fibonacci-heap-node{align-items:center;background:var(--stack-item-bg);border:2px solid var(--input-border);border-radius:var(--radius-lg);box-sizing:border-box;color:var(--stack-item-text);cursor:pointer;display:flex;flex-direction:column;font-weight:700;gap:0;justify-content:center;line-height:1.05;margin:0;padding:0;position:absolute}.fibonacci-heap-node:disabled{cursor:default;opacity:1}.fibonacci-heap-node-min{box-shadow:0 0 0 3px var(--text-color)}.fibonacci-heap-node-mark{background:var(--card-bg);border-style:dashed;border-width:3px;color:var(--text-color)}.fibonacci-heap-node-selected{outline:3px solid var(--text-color);outline-offset:2px}.fibonacci-heap-node:focus-visible{outline:3px solid var(--text-color);outline-offset:2px}.fibonacci-heap-key{font-size:.95rem}.fibonacci-heap-deg{font-size:.62rem;font-weight:600;opacity:.8}.fibonacci-heap-min{color:var(--text-color);font-size:.75rem;font-weight:700;line-height:1;pointer-events:none;position:absolute;transform:translate(-50%,-100%)}.fibonacci-heap-min:after{border-left:4px solid #0000;border-right:4px solid #0000;border-top:5px solid var(--text-color);content:"";display:block;height:0;margin:2px auto 0;width:0}.explorer{box-sizing:border-box;color:var(--text-color);max-width:100%;padding:0 12px;width:100%}.explorer,.explorer .array-controls label{min-width:0}.explorer .array-controls input{box-sizing:border-box;width:100%}.explorer-board{margin:.5rem 0;max-width:100%;min-width:0}.explorer-command{align-items:flex-end;display:flex;flex-wrap:wrap;gap:.5rem;min-width:0}.explorer-command label{display:flex;flex:1 1 12rem;flex-direction:column;font-size:.85rem;min-width:0}.explorer-command input{font-family:var(--f-data);min-height:44px}.explorer .array-controls input,.explorer .control-btn{min-height:44px;min-width:44px}.explorer .explorer-speed-on{background-color:var(--stack-item-bg);color:var(--stack-item-text)}.explorer-steps{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin:.5rem 0;min-width:0}.explorer-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.explorer-slider{flex:1 1 8rem;min-height:44px;min-width:0}.explorer-count{white-space:nowrap}.explorer-note{background-color:var(--debug-bg);border-left:4px solid var(--stack-item-bg);min-height:1.5em;overflow-wrap:anywhere;padding:.5rem .75rem}.explorer-inline-error{color:var(--error-text)}.explorer-open{align-items:center;color:var(--text-color);display:inline-flex;min-height:44px}.explorer-copy{margin-top:1rem}.explorer .error-message{overflow-wrap:anywhere}
/*# sourceMappingURL=main.3594f2b6.css.map*/