body {
	font-family: "Verdana", "Arial", "Helvetica", sans-serif;
	color: #ffc;
	background-color: #000;
	margin: 0;
}

img {
	border: 0;
}

a {
	color: #afc;
}

a:visited {
	color: #fca;
}

a:hover {
	color: #dbf;
}

a.external {
	background-image: url('images/external-new.png');
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 13px;
}

a.external:visited {
	background-image: url('images/external-visited.png');
}

a.external:hover {
	background-image: url('images/external-hover.png');
}

div#container {
	background-color: #002;
	max-width: 50em;
	margin: auto;
	padding: 1em;
}

p.message {
	font-family: "DejaVu Sans Mono", "Courier New", monospace;
	color: #abf;
}

p.error {
	font-family: "DejaVu Sans Mono", "Courier New", monospace;
	color: #f99;
}

textarea, input[type=text], input[type=file] {
	font-family: "DejaVu Sans Mono", "Courier New", monospace;
	background-color: #124;
	color: #fff;
	font-size: 90%;
	margin-top: 1ex;
}

div.code {
	font-family: "DejaVu Sans Mono", "Courier New", monospace;
	margin: 0 3em 0 3em;
	color: #fff;
	background-color: #110;
	font-size: 90%;
}

/* rule spacing and formatting */
div.code div.ruleGroup {
	margin-top: 2ex;
	margin-bottom: 2ex;
}

div.code p.comment {
	color: #aac;
	margin: 0;
}

div.code span.punctuation {
	color: #6ff;
}

div.code span.posLitPrefix {
	color: #9f9;
}

div.code span.negLitPrefix {
	color: #f99;
}

div.code span.constant {
	color: #ffc;
}

div.code span.variable {
	color: #9f9;
}

div.code span.function {
	color: #9df;
}

div.code span.predicate {
	color: #9df;
	font-weight: bold;
}

div.code p.rule {
	line-height: 1.5em;
	margin: 0 0 0 10.5ex;
	text-indent: -10.5ex;
}

/* nice model formatting -- all lines except for the first are indented */
div.code p.model {
	margin: 0 0 0 10.5ex;
	text-indent: -10.5ex;
}


div#footer {
	margin-top: 1em;
	padding: 1ex 0 1ex 1em;
	border-top: 1px dashed #0d0;
}

div#footer p {
	color: #cff;
	margin: 0 0 .5ex 0;
	font-size: .75em;
}

div#footer p.validation {
	float: right;
}
