html {
	padding: 0 20px 0 20px;
	margin: 0;
	background: #444;
	min-height: 100%;
}
body {
	margin: 0;
	background: #fff;
	padding: 0 16px 0 16px;
	height: 100%;
}

#surround {
	background: #efefef;
	padding: 16px;
}

#footer {
	clear: both;
	margin-top: 1em;
	border-top: solid #ddd 1px;
}
#footer p {
	color: #666;
	font-size: 85%;
	padding: 1em;
	margin: 0;
}

body.default h1 {
	display: block;
	height: 160px;
	margin: 0;
	background: #000;
	-moz-border-radius-topleft: 6px;
	-webkit-border-top-left-radius: 6px;
	-moz-border-radius-topright: 6px;
	-webkit-border-top-right-radius: 6px;
	position: relative;
	text-indent: -11000em;
}
body.default #logo {
	position: absolute;
	display: block;
	top: 16px;
	left: 16px;
	width: 128px;
	height: 128px;
	background: url('logo128.png') 0 0 no-repeat;
	z-index: 5;
}
body.default #caption {
	position: absolute;
	display: block;
	top: 8px;
	right: 8px;
	width: 300px;
	height: 142px;
	background: url('caption.png') 100% 0 no-repeat;
	z-index: 10;
}
body.draft h1, body.ns h1 {
	background: #000;
	color: #fff;
	-moz-border-radius-topleft: 6px;
	-webkit-border-top-left-radius: 6px;
	-moz-border-radius-topright: 6px;
	-webkit-border-top-right-radius: 6px;
	margin: 0;
	padding: 16px;
}

a:link, a:visited {
	color: #700;
	text-decoration: none;
	font-weight: bold;
}
a:hover, a:active {
	text-decoration: underline;
}
#contents {
	background: #444;
	border-bottom: solid #222 1px;
	margin: 0;
	display: block;
}
p#contents {
	line-height: 2em;
	padding: 0 1em 0 1em; 
}
#contents li {
	display: inline-block;
	line-height: 2em;
	height: 2em;
	margin: 0;
	padding: 0;
	list-style: none;
}
#contents a {
	display: block;
	padding: 0 0.75em 0 0.75em;
	color: #efefef;
	font-weight: normal;
	height: 2em;
	color: #ccc;
}
#contents a:hover, #contents a:active {
	background: #333;
	color: #fff;
	text-decoration: underline;
}
#contents li.active {
	background-color: #000;
	color: #fff;
	font-weight: bold;
}
#contents li.active a {
	color: #fff;
	font-weight: bold;
}
#contents li.active a:hover {
	background: #000;
}
.section {
	padding: 1em;
	background: #fff;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	margin: 16px 0 16px 0;
}
.section h2 {
	margin: 0 0 0.75em 0;
	color: #444;
}

.section p {
	margin: 1em;
}

.section p.internal-nav {
	font-size: 93%;
	color: #888;
	padding-left: 0;
	margin-left: 0;
}

.section dt {
	font-size: 108%;
}
.section dd {
	border-left: solid #ccc 1px;
}

.section li {
	margin: 1em;
}

.section h4 {
	color: #444;
}

pre {
	overflow: auto;
	background: #d0d0d0;
	padding: 1em;
	margin: 1em 4em 1em 4em;
}

code {
	color: #007;
}

blockquote {
	margin: 1em;
	padding: 0 0 0 0.5em;
	border-left: solid #eee 4px;
	color: #666;
}

.optional {
	font-style: italic;
}
.optional:before {
	content: '[';
}
.optional:after {
	content: ']';
}

table.refs {
	border: none;
}

