body {
	background-color: white;
	font-family: cantarell, sans-serif;
	text-align: justify;
	margin-top: 2.8em;
	max-width: 35em;
}

h1, h2, h3, h4 {
	color: #005a9c;
	margin: 1.5em 0 0 0;
}

h3 { border-top: solid 0.5em #eee; }

h4 { border-top: solid 0.2em #eee; }

p { margin: 0 0 1em 0; }

a:link, a:visited, a:hover, a:active {
	color: #005a9c;
	text-decoration: none;
}

.toc {
	font-weight: bold;
	font-size: 120%;
	line-height: 1.8;
	max-width: 19em;
}

.toc li {
	list-style-type: none;
}

.toc li li {
	font-size: 80%;
}

.toc a {
	display:block;
	border-radius: 0.4em;
	padding-left: 0.4em;
}

.toc a:hover, .toc a:focus {
	background-color: #ddd;
}

h3 {
	/* ensure anchors don't vanish below the fixed header */
	padding-top: 1.4em;
}

.header {
	background-color: #005a9c;
	font-weight: bold;
	padding: .35em;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 1.4em;
}

.header a {
	color: white;
}

div.note {
	border: 3px solid #005a9c;
	padding: 1em;
	margin: 0 2em 1em 2em;
}

div.note p, div.note h4 {
	margin: 0;
}

pre {
	background-color: #eee;
	border: 1px solid black;
	border-radius: 4px;
	padding: .5em 1em;
	margin: 0 0 1em 0;
}

.o-box { padding: 1.2em;
	margin: 0 0 1em 0;
	line-height: 1.5;
}
.c-program { background-color: #f5f5f5;
	border: 2px solid #ca8;
	border-radius: 4px;
	font-family: monospace;
	white-space: pre-wrap;
}
.c-program-type { color: #533; }
.c-program-token { color: #000;
	font-weight: bold;
}
.c-program-methodname { color: #520;
	font-style: italic;
}
.c-program-phrase { color: #161; }

.c-informaltable { border: solid 2px #ccc;
	border-radius: 4px;
}
.c-informaltable td { border-bottom: solid 1px #ccc;
	border-right: solid 1px #ccc;
}
.c-informaltable td:last-child { border-right: none; }
.c-informaltable tr:last-child td { border-bottom: none; }
.c-informaltable tr:nth-child(even) { background-color: #f5f5f5; }

.c-rules { border: solid 2px #729fcf;
	border-radius: 4px;
	background-color: #f5f5f5;
	white-space: pre-wrap;
}

blockquote span.literal {
	font-family: monospace;
	font-weight: bold;
	font-size: 110%;
	padding-right: 0.5em;
}
