/* racine */
.ui-treeview {
  user-select: none;
}

/* nodes */
.ui-treeview .tv-node {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* row */
.ui-treeview .tv-row {
  display: flex;
  align-items: center;
  gap: .4rem;
  padding: .2rem .3rem;
  cursor: default;
}

/* toggle (visuel à toi de choisir) */
.ui-treeview .tv-toggle {
  width: 1.2rem;
  height: 1.2rem;
  border: 0;
  background: transparent;
  cursor: pointer;
  position: relative;
}

.ui-treeview .tv-has-children > .tv-row .tv-toggle::before {
  content: "▸";
  display: inline-block;
  transform-origin: center;
  transition: transform 120ms ease;
}

/* rotation quand expanded */
.ui-treeview .is-expanded > .tv-row .tv-toggle::before {
  transform: rotate(90deg);
}

/* enfants */
.ui-treeview .tv-children {
  margin-left: 1.4rem;
  padding-left: .3rem;
}

/* affichage dépend de JS (classe) */
.ui-treeview .is-collapsed > .tv-children {
  display: none;
}

/* label */
.ui-treeview .tv-label {
  cursor: pointer;
}

/* selected */
.ui-treeview .is-selected > .tv-row .tv-label {
  font-weight: 600;
  text-decoration: underline;
}
