/* === basics ===================== */

/* === typography ================= */

/* --- design     ----------------- */

body {
	font:  100%/1.4 "Liberation Sans", sans-serif;
	color: #123;
	width: 90%;
	max-width: 80em;
	margin: 0 auto;
}

p {
	margin: 0.6em 0;
}

ol {
	padding-left: 1.6em;
	margin: 0;
	list-style-type: none;
	counter-reset: ol-counter;
}
ol > li:before {
	display: inline-block;
	font-family: "Liberation Serif", serif;
	font-style: italic;
	width: 1.2em;
	content: counter(ol-counter, lower-roman) ')';
	counter-increment: ol-counter;
}

#toc .lvl2 {
	margin-left: 2em;
}
#toc .lvl3 {
	margin-left: 4em;
}

#content h1 {
	border-bottom: 2px solid #678;
}

#content h1 ,
#content h2 ,
#content h3 {
	position: relative;
}

#content h1 > a ,
#content h2 > a ,
#content h3 > a {
	display: block;
	position: absolute;
	left: 0;
	bottom: 0.2em;
	padding-right: 1.2em;
	margin-left: -1.2em;
	text-decoration: none;
	font-size: 0.8em;
	visibility: hidden;
}
#content h1:hover > a ,
#content h2:hover > a ,
#content h3:hover > a {
	visibility: visible;
}

.footnotes {
	margin-top: 2em;
	border-top: 1px solid #678;
}
.footnotes ol {
	list-style-type: decimal;
}
.footnotes ol > li:before {
	content: none;
}

/* --- functional ----------------- */

em { /* used for notes */
	margin: 0 1em;
	color: #678;
}

dl dt {
  margin: .6em 0 0;
  color: #08e;
}
dl dd {
  margin: 0.2em 0 0.2em 1px;
  padding-left: 0.5em;
  border-left: 2px solid #08e;
}
dl dd.def { border-color: #380; }
dl dt.def { color: #380; }

p.proof:before {
	display: inline-block;
	content: 'D';
	font-size: 0.8em;
	font-weight: bold;
	width: 1.3em;
	height: 1.3em;
	padding: 0.05em 0 0.05em 0.1em;
	text-align: center;
	color: #fff;
	background: #345;
}

.todo {
	color: red;
	font-weight: bold;
}
