body {
	margin: 0.5em 1em 0 1em;
	padding: 0.5em;
	padding: 0;
	color: #303c3c;
	background-color: #fafafa;
}

h1 {
	margin: 0;
	padding: 0;
}

h1, h2, h3 {
	font-family: serif;
	clear: both;
}

a {
	text-decoration: none;
	border-bottom: 1px dotted;
	color: #303c3c;
}

a:hover {
	border-bottom: 1px solid
}

p {
	line-height: 1.5;
	text-align: justify;
}

sup.footnote {
	font-size: x-small;
}

.section-separator {
	text-align: center;
}

.multicolumn > section {
	display: inline-block;
	vertical-align: top;
	max-width: 500px;
	margin: 0 2em 0 2em;
}

code {
	white-space: pre;
	color: black;
	border: 1px solid black;
	background-color: white;
	padding: 2px 4px 4px 4px;
}

code[data-language] {
	display: block;
	overflow: auto;
	padding: 1em;
}

code[title]:before{
	content: attr(title);
	color: black;
	background-color: #B0E0B0;
	display: block;
	position: relative;
	padding: 0.5em 2em 0 0;
	margin: -1em 0 1em -1em;
	width: 100%;
	height: 1.5em;
	overflow: visible;
	text-indent: 0.5em;
	font-family: sans-serif;
	font-weight: bold;
	border-bottom: 1px solid green;
}

#table-of-contents {
	padding: 0 0 0 0.5em;
	overflow: auto;
	display: inline-block;
	vertical-align: top;
	max-width: 500px;
	color: #303c3c;
	background-color: #fafafa;
}

.shared-navigation {
	display: none;
}

@media (min-width: 750px) {
	body {
		margin: 0;
		padding: 0;
	}

	.shared-navigation {
		display: block;
	}

	#table-of-contents {
		float: left;
		width: 13em;
		height: 100%;
		position: fixed;
		top: 0px;
		left: 0px;
		box-shadow: 5px 0 5px -5px #333;
		padding: 0 0 0 1.5em;
	}

	#table-of-contents hr {
		width: 5em;
		text-align: left;
		margin-left: 0em;
	}

	#article-container {
		padding: 0.5em 0 0 0.5em;
	}
	#article-title, #article-content {
		margin: 0 0 0 0.5em;
	}
	.article-with-sidebar #article-title,
	.article-with-sidebar #article-content {
		margin: 0 0 0 15.5em;
	}
	#article-content {
		max-width: 60em;
		padding: 0 1.5em 0 0;
	}

	div.overscroll {
		height: 500px;
	}

}

#table-of-contents > ul {
	margin: 0;
}

#table-of-contents ul {
	padding: 0;
	list-style-type: none;
}

#table-of-contents li {
	margin: 1em 0 1em 0;
}

#table-of-contents li > ul {
	padding: 0 0 0 1.5em;
}

#instantclick {
	display: none;
}

table, tr, td, th {
	border: 1px solid black;
	border-collapse: collapse;
}
td, th {
	padding: 0.5em;
	white-space: nowrap;
}

#article-content p {
	text-align: justify;
}

#article-content ul, #article-content ol {
	line-height: 1.75;
}

div.chroma-chroma {
	line-height: 1.2;
}

blockquote {
	border-left: 5px solid #eaecf0;
	padding-left: 0.5em;
}
