2023-08-18 19:25:38 +02:00
|
|
|
/* The tree indents shouldn't be too spaced out */
|
|
|
|
|
|
|
|
.tree ul {
|
|
|
|
padding-left: 24px;
|
|
|
|
}
|
|
|
|
|
|
|
|
/* Make the tree have + and - instead of the default details/summary arrow */
|
|
|
|
|
2023-08-18 20:58:07 +02:00
|
|
|
.tree {
|
|
|
|
--tree-icon-position: 8px 50%;
|
|
|
|
--tree-icon-space: 28px;
|
|
|
|
|
|
|
|
/* I have no clue why this works, deal with it */
|
|
|
|
--tree-hover-expansion: 0.01px;
|
2023-08-20 13:46:54 +02:00
|
|
|
|
|
|
|
position: relative;
|
2023-08-18 20:58:07 +02:00
|
|
|
}
|
|
|
|
|
2023-08-18 19:25:38 +02:00
|
|
|
.tree details>summary {
|
|
|
|
list-style: none;
|
|
|
|
cursor: pointer;
|
|
|
|
}
|
|
|
|
|
|
|
|
.tree li {
|
|
|
|
list-style: none;
|
2023-08-20 13:46:54 +02:00
|
|
|
|
|
|
|
display: flex;
|
|
|
|
flex-direction: row;
|
|
|
|
|
|
|
|
position: relative;
|
|
|
|
}
|
|
|
|
|
|
|
|
.tree li>*:first-child {
|
|
|
|
width: 100%;
|
|
|
|
}
|
|
|
|
|
|
|
|
.tree li>div:first-child {
|
|
|
|
box-sizing: border-box;
|
|
|
|
}
|
|
|
|
|
|
|
|
.tree li>div:first-child,
|
|
|
|
.tree li>details>summary:first-child {
|
|
|
|
padding-right: 32px;
|
|
|
|
}
|
|
|
|
|
|
|
|
.tree li>div:first-child:hover {
|
|
|
|
border-bottom: 1px solid rgba(0, 0, 0, 15%);
|
|
|
|
margin-bottom: -1px;
|
2023-08-18 19:25:38 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
.tree details>summary {
|
|
|
|
background-image: url('../svg/expand.svg');
|
|
|
|
background-repeat: no-repeat;
|
2023-08-18 20:58:07 +02:00
|
|
|
background-position: var(--tree-icon-position);
|
|
|
|
padding-left: var(--tree-icon-space);
|
|
|
|
margin-left: calc(- var(--tree-icon-space));
|
|
|
|
|
|
|
|
padding-top: var(--tree-hover-expansion);
|
|
|
|
padding-bottom: var(--tree-hover-expansion);
|
|
|
|
border-radius: 8px;
|
|
|
|
|
|
|
|
background-color: rgba(0, 0, 0, 0%);
|
|
|
|
}
|
|
|
|
|
|
|
|
.tree details>summary:hover {
|
|
|
|
background-color: rgba(0, 0, 0, 5%);
|
2023-08-18 19:25:38 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
.tree li.leaf {
|
|
|
|
background-image: url('../svg/leaf.svg');
|
|
|
|
background-repeat: no-repeat;
|
2023-08-18 20:58:07 +02:00
|
|
|
background-position: var(--tree-icon-position);
|
|
|
|
padding-left: var(--tree-icon-space);
|
|
|
|
margin-left: calc(- var(--tree-icon-space));
|
2023-08-18 19:25:38 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
.tree details[open]>summary {
|
|
|
|
background-image: url('../svg/collapse.svg');
|
|
|
|
}
|
2023-08-20 13:46:54 +02:00
|
|
|
|
|
|
|
.tree th-bb {
|
|
|
|
height: 24px;
|
|
|
|
margin: 4px;
|
|
|
|
|
|
|
|
position: absolute;
|
|
|
|
top: 0;
|
|
|
|
right: 0;
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
flex-direction: row;
|
|
|
|
|
|
|
|
opacity: 0%;
|
|
|
|
}
|
|
|
|
|
|
|
|
.tree li>details>summary:hover>th-bb,
|
|
|
|
.tree li>div:hover>th-bb {
|
|
|
|
opacity: 100%;
|
|
|
|
}
|
|
|
|
|
|
|
|
.tree .branch-link {
|
|
|
|
background-image: url("../svg/link.svg");
|
|
|
|
background-repeat: no-repeat;
|
|
|
|
background-position: 50% 50%;
|
|
|
|
opacity: 35%;
|
|
|
|
|
|
|
|
width: 24px;
|
|
|
|
height: 24px;
|
|
|
|
}
|