body { background: #fff; color: #333;  margin: 0; font-size: 1em; font-family: Palatino Linotype, Book Antiqua, Palatino, serif; padding: 5px 0 20px 0; }

/* override default styling */
p, ul, dl, form { margin: 0; padding: 0; }
ul { list-style: none; }
h3 { margin: 0; }
/*#header h1, #header h3 { font-family: Helvetica, Arial, sans-serif;}*/
#header h1 { margin: 20px 0 10px 0; text-align: center; clear: both; font-size: 1.5em; }
#header h3 { margin: .4em 0 0 0; font-weight: normal; font-size: 1.1em; color: #888; text-align: center; }
#header a img { border: none;}

#header ul li, #footer ul li { font-family: helvetica, arial, sans-serif; font-size: .8em; }
#header ul { float: right; }
#header ul li { float: left; margin-left: 5px;}

#footer { border-top: 1px solid #ccc; padding-top: 6px; }

#content { padding-bottom: 20px; }
#content, #footer { clear: both; }
#content, #header, #navContent, #footer { width: 45em; margin: 0 auto; max-width: 80%; }

#nav { background: #4847c2; width: 100%; float: left; font-family: verdana, arial, helvetica, sans-serif; letter-spacing: .1em; }
#nav ul { float: left; }
#nav li { float: left; padding: 5px 8px; margin: 4px; height: 100%; font-size: 1.1em;font-weight: bold; font-variant: small-caps;}
#nav li a { color: white; text-decoration: none;}
#nav li.first { margin-left: 0; }
#nav li.last { margin-right: 0; }
#nav li a:hover { color: #000; text-decoration: underline; }
#nav li a.current, div#nav li a.current:visited, #nav li a.current:hover { color: #090; text-decoration: underline; }

/* font size manipulation */
div#fontSize { float: right; padding: 6px 0; }
div#fontSize a { display: block; float: left; border: 1px white solid; color: white; text-decoration: none; padding: 2px; font-weight: bold; margin: 0 3px; }
div#fontSize a.small { font-size: .8em; margin-left: 0; }
div#fontSize a.medium { font-size: 1em; }
div#fontSize a.large { font-size: 1.2em; margin-right: 0; }


div.column { float: left; margin: 0 10px; width: 10em; }

div.category { float: left; margin: 0 10px; width: 10em; }
div.category ul { margin: 0; padding: 0; font-size: .95em; text-indent: -.7em; padding-left: .7em;}
div.category li { margin: 3px 0; padding-right: 20px; }
div.category a { text-decoration: none; }
div.category h3 { font-size: 1em; }
div.category h3, h2 { border-top: solid 2px #333; border-bottom: solid 1px #ccc; padding: 5px 0;}

form#search { margin-left: 20%; }
input.search { height: 25px; width: 350px;}
/*input.button { height: 30px; width: 70px; border: 1px solid black; background-color: wheat;}*/

.clear { clear: both; }
.right { float: right; }
.left { float: left; }

div.spacer { clear: both; height: 1em; }


/* listings pages */

h2 { font-size: 1.3em; clear: both; }
#breadcrumbs, #search { font-size: .85em; margin: 23px 0 8px 0 }
#breadcrumbs { float: left; margin-left: 10px; }
#search { float: right; position: relative; top: -4px; margin-right: 10px; }
p, dl, ol { font-size: .95em; line-height: 1.6em; margin: 0 15px; }
dl dt { font-weight: bold;}
a.remove { display: block; height: 16px; width: 16px; text-indent: -4000px; background: url(/images/cross.png) 0 0 no-repeat; }
#categories {
	float: left;
	border-bottom: 1px solid #ccc;
	padding-bottom: .9em;
	margin-bottom: 1.1em;
	width: 100%;
}
#categories li {
	float: left;
	margin: .5em;
	font-size: .9em;
}
h3 {
	font-size: 1em;
	margin-bottom: 5px;
}
/* flashes */

.flash { border: 1px solid black; padding: 10px; font-family: Helvetica, Arial, sans-serif; font-size: .9em; font-weight: bold; position: relative; top: 8px;}
.flash.notice { background: #AFA; }
.flash.error { background: #FAA; }

.error { font-family: Helvetica, Arial, sans-serif; font-size: .9em; font-weight: bold; color: red; }


/* static pages */

div.static { padding-top: 10px; }
div.static h3 { margin-top: 15px; }
div.static p { width: 50%; text-indent: 1em;}
div.static p.block { text-indent: 0; }

/* rails stuff */
.fieldWithErrors {
  padding: 2px;
  background-color: red;
  display: table;
}

#errorExplanation {
  width: 400px;
  border: 2px solid red;
  padding: 7px;
  padding-bottom: 12px;
  margin-bottom: 20px;
  background-color: #f0f0f0;
}

#errorExplanation h2 {
  text-align: left;
  font-weight: bold;
  padding: 5px 5px 5px 15px;
  font-size: 12px;
  margin: -7px;
  background-color: #c00;
  color: #fff;
}

#errorExplanation p {
  color: #333;
  margin-bottom: 0;
  padding: 5px;
}

#errorExplanation ul li {
  font-size: 12px;
  list-style: square;
}