Hierarchical tree built on ul/li with states, shapes, densities, indent modes, node styles, checkboxes, notes, expand levels, and dynamic colors.
ul > li. Each row is div[data-role="node"] containing div[data-role="content"] > span[data-role="label"] and optionally span[data-role="arrow"], label.check, div[data-role="note"], span[data-role="spacer"], div[data-role="custom"].ul/li inside non-list nodes..tree-expanded (one branch), .tree-expanded-n (up to level n), or .tree-expanded-all (all) to expand..tree-selected colors the whole row, .tree-active colors only the label, and .tree-disabled disables a row or the root.<input> inside span[data-role="label"]..tree-expanded on node).tree-expanded-all).tree-expanded-1 ~ .tree-expanded-3).tree-selected) — colors the whole row.tree-active) — colors only the label.tree-disabled) — single node or root.tree-hoverable)<input>label.check)div[data-role="note"])All data-role="node" elements should have a built-in data-role="arrow" child element to ensure consistent indentation.
.tree-padded).tree-square).tree-rounded).tree-pill).tree-tight).tree-snug).tree-compact).tree-relaxed).tree-loose).tree-indent-cascading) — default.tree-indent-dedicated) — requires --tree-level and span[data-role="indent"].tree-btns).tree-entries) — fully expanded, check icon on selected.tree-primary).tree-success).tree-warning).tree-error)