.ct88-book-tree {
  font-family: Arial, sans-serif;
  background-color: #fff;
}

.ct88-book-tree h2 {
  color: #c98529;
  display: block;
  font-size: 1.8em;
  margin-block-start: 0.83em;
  margin-block-end: 0.83em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  font-weight: bold;
  unicode-bidi: isolate;
}

/* Conteneur */
.book-tree-container {
  max-height: none;
  overflow-y: visible;
}

/* Items */
.tree-item {
  margin: 2px 0;
}
.tree-item-content {
  display: flex;
  align-items: center;
  padding: 3px 4px;
}

/* Toggle [+/-] avec style PJ1 */
.tree-toggle {
  display: inline-block;
  width: 10px;
  height: 10px;
  line-height: 10px;
  text-align: center;
  cursor: pointer;
  margin-right: 6px;
  border: 1px solid #000;
  background-color: #fff;
  color: #000;
  user-select: none;
}
.tree-toggle:hover {
  background-color: #000;
  color: #fff;
}
.tree-toggle.expanded {
  background-color: #000;
  color: #fff;
}
.tree-no-toggle {
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 6px;
}

/* Liens */
.tree-link {
  color: #444;
  text-decoration: none;
  flex-grow: 1;
}
.tree-link:hover {
  text-decoration: underline;
  color: #b36b00;
}

/* Page active */
.tree-item-content.active-page {
  background-color: #e8f4fd !important;
  border-left: 3px solid #c98529;
  font-weight: bold;
}
.tree-item-content.active-page .tree-link {
  color: #c98529 !important;
  font-weight: bold;
}

/* Enfants */
.tree-children {
  margin-left: 20px;
  border-left: 1px dotted #ccc;
  padding-left: 8px;
  display: none;
}

/* Styles par niveaux */
.tree-level-0 > .tree-item-content {
  font-weight: bold;
}
.tree-level-1 > .tree-item-content {
  background-color: #f5f5f5;
  font-weight: bold;
  border-radius: 3px;
}

/* Alternance pour niveaux >= 2 */
.tree-level-2.odd > .tree-item-content,
.tree-level-3.odd > .tree-item-content,
.tree-level-4.odd > .tree-item-content {
  background-color: #f5f5f5;
}
