body
{
	font-family: monospace;

	background: #fff;
	color: #000;
}

h1
{
	font-size: 100%;
	text-align: center;
	border-bottom: 1px solid #000;
}

table
{
	width: 100%;
	counter-reset: line;
}

pre
{
	margin: 0;
}

ol.menu
{
	margin: 1em 0;
	list-style: none;
	text-align: center;
	padding: 0;
}

.menu li
{
	display: inline-block;
	text-align: center;
	min-width: 3em;
}

.lines
{
	margin: .5em 5ch 1em;
}

.lines p
{
	display: inline;
}

.lines ol
{
	display: inline-block;
	list-style: none;
	padding: 0;
	margin: 0;
}

.lines li
{
	display: inline;
}

.lines li + li:before
{
	content: '; ';
}

.warn
{
	background: #ffa;
}

.err
{
	background: #faa;
}

.log tr:target, .good
{
	background: #afa;
}

.log td:first-child
{
	text-align: right;
	padding-right: 1ch;
	min-width: 5ch;
	vertical-align: top;

	/* meaningless but aesthetics */
	-moz-user-select: none;
	-webkit-user-select: none;
	user-select: none;
}

.log td:first-child a:before
{
	counter-increment: line;
	content: counter(line);
}

.log td:first-child a span
{
	display: none;
}

.log pre
{
	white-space: pre-wrap;
}

address
{
	margin-top: 1em;
	font-size: 75%;
	text-align: center;
}