/* Both Sidebars */
.sidebar
{
	flex-basis: 340px;
	flex-grow: 0;
	flex-shrink: 1;
	min-width: 240px;
	position: sticky;
	overflow-y: scroll;
	height: calc(100vh - 40px);

	scrollbar-width: thin; /* NOTE: Only supported in Firefox */
}

.sidebar .tab-links
{
	background-color: rgb(228, 238, 245);
	position: sticky;
	top: 0;
	z-index: 1;
	padding-top: 10px;
}

.sidebar .tab-link
{
	width: 50%;
}

.sidebar .tab
{
	padding-top: 10px;
}

#sidebar-left, #sidebar-right
{
	padding: 0px 10px 10px 10px;
}

/* Left Sidebar */
#sbl-hierarchy .list:first-child 
{
	padding: 0px;
}

#sbl-hierarchy .group-header
{
	cursor: pointer;
}

#sbl-hierarchy .list
{
	display: none;
}

#sbl-hierarchy .list.active 
{
	display: block;
}

#sbl-hierarchy .list
{
	list-style: none;
	margin: 0px;
	padding: 0px;
	padding-left: 5px;
}

#sbl-hierarchy .item
{
	font-size: 14px;
	word-break: break-word;
	border-radius: 5px;
}

#sbl-hierarchy .item
{
	padding: 0px;
}

#sbl-hierarchy .item.link a, 
#sbl-hierarchy .item.subgroup header
{
	color: #000000;
	display: block;
	padding: 7px;
}

#sbl-hierarchy .item.link:hover
{
	background-color: rgba(255, 255, 255, 0.4);
}

#sbl-hierarchy .item.link.current
{
	background-color: #fff;
	border: 1px solid #ccc;
	font-weight: 700;
}

#sbl-hierarchy .item.link.current a
{
	padding: 6px;
}

#sbl-hierarchy .fad
{
	color: #4e99e4;
}

#sbl-hierarchy .item.link a
{
	display: flex;
	flex-direction: row;
}

#sbl-hierarchy .item.link a > .fad, #sbl-hierarchy .item.link a > .status-indicator
{
	flex-shrink: 0;
}

#sbl-hierarchy .item.link a > .fad
{
	padding-right: 5px;
	vertical-align: center;
	line-height: 16px;
}

/*
#sbl-hierarchy .item.link a > .title
{
	flex-grow: 1;
}
*/

#sbl-hierarchy .item.link a > .status-indicator
{
	max-height: 17px;
}

/* Right Sidebar */
#toc 
{
	list-style: none;
	padding-left: 10px;
}

#toc a
{
	color: rgb(113, 113, 113);
	font-size: 12px;
}

#toc a.active
{
	color: #4e99e4;
	font-weight: bold;
}

#toc:first-child 
{
	border-left: 1px solid rgb(190, 190, 190);
	padding: 10px;
}

/*
#info-container
{
	padding: 5px;
}
*/

#info-container header
{
	font-size: 1.25em;
	font-weight: 700;
	margin-bottom: 10px;
}

#authors ul
{
	padding: 0px;
	margin: 0px;
	list-style: none;
}

#authors .author
{
	display: flex;
	align-items: center;
}

#authors .avatar
{
	border-radius: 14px;
	width: 28px;
	height: 28px;
	vertical-align: center;
}

#authors .display-name
{
	margin-left: 10px;
}

@media all and (max-width: 1024px)
{
	.sidebar
	{
		max-height: calc(100vh - 50px);
	}
}

@media all and (max-width: 750px) 
{
	.sidebar
	{
		flex-grow: 1;
		min-width: 0px;
	}
}