/*
svg.tree g.node         circle,
svg.tree g.node         text { fill: black; transition: fill 0.3s; }
svg.tree g.node:hover   circle,
svg.tree g.node:hover   text { fill: navy; }

svg.tree g.node-marked       circle,
svg.tree g.node-marked       text { fill: green; transition: fill 0.3s; }
svg.tree g.node-marked:hover circle,
svg.tree g.node-marked:hover text { fill: maroon; }*/

progress {
	flex-grow: 1;
}

.flex-box {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

a, a:visited {
	text-decoration: underline;
}

svg.tree {
	overflow: visible;
}

svg.tree .node text {
/* 	font: 1em serif; */
	text-shadow: 0 1px 0 white, 0 -1px 0 white, 1px 0 0 white, -1px 0 0 white;
}

svg.tree .node-marked text {
	font-weight: bold;
}

/*svg.tree .node-internal text {
	text-shadow: 0 1px 0 white, 0 -1px 0 white, 1px 0 0 white, -1px 0 0 white;
}*/

svg.tree .node-unmarked circle {
/* 	r: 0.3em; */
	fill: darkslategray;
}

svg.tree .node-marked circle {
/* 	r: 0.5em; */
	fill: maroon;
}

/* When multiple declarations have the same specificity, later declarations
 *  have higher priority, thus this trumps the previous ones.
 */
svg.tree .node-collapsed circle {
	fill: lightsteelblue;
}
svg.tree .node-collapsed circle.collapse-marker {
/* 	r: 0.6em; */
	fill: none;
	stroke: lightsteelblue;
	stroke-width: 0.15em;
}

svg.tree .node-internal circle {
	cursor: pointer;
}

svg.tree .link {
	fill: none;
	stroke-opacity: 0.4;
	stroke: dimgray;
	stroke-width: 1.5px;
}

svg.tree .link-marked {
	stroke: maroon;
	stroke-width: 3px;
}

fieldset legend {
/* 	text-decoration: underline; */
	cursor: pointer;
}

fieldset legend.collapsed::after {
	content: " ⌄";
}

fieldset legend:not(.collapsed)::after {
	content: ":";
}
