body {
	margin: 1em auto 1em auto;
	padding: 0 1em 0 1em;
	max-width: 800px;
}

a.image {
	border: none;
}

.comments {
	display: block;
	background: url('balloon.png') top left no-repeat;
	float: left;
	margin-left: -55px;
	width: 36px;
	height: 48px;
	line-height: 0;
	color: black;
	text-decoration: none !important;
	border: none !important;
}

#toc .comments {
	margin-top: 0.25em;
}

.sect1 .comments {
	margin-top: 0.5em;
}

.sect2 .comments {
	margin-top: 1.15em;
}

.sect3 .comments {
	margin-top: -1em;
}

.comments.empty {
	opacity: 0.2;
}

.comments.empty:hover,
.comments.nonempty {
	opacity: 1;
}

.comments .count {
	display: block;
	font-size: 80%;
	padding-top: 12px;
	text-align: center;
	text-shadow: 1px 1px 2px white;
}

#comments_lightbox_shadow {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: black;
	opacity: 0.7;
	z-index: 10;
}

#comments_lightbox_contents {
	position: fixed;
	top: 10%;
	left: 20%;
	right: 20%;
	bottom: 10%;
	background: white;
	overflow: auto;
	z-index: 11;
}

#comments_lightbox_contents > .shell {
	margin: 2em;
}

pre {
	overflow: auto;
}

@media print {
	body {
		font-size: 18pt;
	}
	
	#header h1 {
		page-break-after: always;
		font-size: 500%;
		vertical-align: middle;
	}
	
	#header {
		page-break-after: always;
	}
	
	#toctitle {
		font-size: 200%;
		margin-bottom: 1em;
	}
	
	div.toclevel1 {
		font-size: 100%;
	}
	
	div.toclevel2 {
		font-size: 90%;
	}
	
	div.toclevel3 {
		font-size: 80%;
	}
	
	#content .comments {
		display: none;
	}
	
	@page :left {
		@bottom-left {
			content: counter(page);
		}
	}
}
