body {
	margin: 2em;
}

nav {
	border: 1px solid rgba(127, 127, 0, 0.3);
	background-color: rgba(255, 255, 127, 0.3);
	padding: 0;
	font-size: 0.75em;
}

main {
	font-size: 1.2em;
}

table, td, th {
	border: 1px solid rgba(0, 0, 127, 0.2);
}

td, th {
	padding: 0.25em 0.5em;
}

details summary {
	padding: 0.75em;
	font-size: 1.4em;
}

details>summary * {
	display: inline-block;
	margin: 0;
	font-size: 1em;
}

.name {
	
}

.version, .size {
	font-family: monospace;
	text-align: right;
}

footer {
	border-top: 1px solid rgba(0, 0, 0, 0.3);
	font-style: italic;
	margin-top: 2em;
	padding: 1em 0;
}

code, pre {
	background: rgba(127, 127, 127, 0.1);
	border-radius: 0.25em;
	padding: 0.25em;
}

pre, .changelog {
	white-space: pre-wrap;
	background: rgba(127, 127, 127, 0.1);
	border-radius: 0.25em;
	padding: 0.25em;
}

code {
	white-space: nowrap;
}

.path {
	background: rgba(127, 127, 127, 0.1);
	font-family: monospace;
	font-size: 0.9em;
}

.cardinality {
	font-family: monospace;
	text-align: center;
}

.element {
	background: rgba(127, 127, 255, 0.1);
}

code.element::before {
	content: "<";
}

code.element::after {
	content: ">";
}

.attribute {
	background: rgba(255, 127, 127, 0.1);
}

.namespace {
	background: rgba(0, 0, 0, 0.1);
}

.type {
	background: rgba(127, 255, 127, 0.1);
}

code.type {
	font-weight: bold;
}

.category {
	background: rgba(127, 255, 127, 0.1);
}

code.group {
	font-style: italic;
}

.group {
	background: rgba(127, 255, 127, 0.1);
}

code.group {
	font-style: italic;
}

.type {
	background: rgba(255, 127, 255, 0.1);
}

.token {
	background: rgba(127, 255, 255, 0.1);
}

dl.element, dl.attribute, dl.type, dl.category {
	background: rgb(244, 244, 250);
	padding: 0.5em 1em;
	margin: 1em 0 0 0;
}

.annotation {
	padding: 0.5em 1em;
}

dl>dt {
	font-size: 1.05em;
}

dl>dd ul {
	list-style-type: none;
}

dl>dd p {
	margin: 0.25em 0 0.5em 2em;
}

.BNF {
	font-family: monospace;
}
/*
dl.element li,
dl.category li {
	display: inline-block;
}
dl.element li:first-child ~ li::before,
dl.category li:first-child ~ li::before {
	content: ", ";
}
*/
ul.toc ul {
	list-style-type: square;
	padding-left: 1.5em;
}