/* Site Layout */
div {
	margin:0;
	padding:0;
}

#wrapper:after,
#site_header:after, #header:after, #header_right:after,
#site_content:after
{/* Clearing without presentational markup */
    display:block;
    clear:both;
    content:" ";
}
#wrapper {
	margin:0 auto;
	border-style:solid;
	border-width:0 1px;
	border-color:#7C7C7C;
	max-width:1280px;
}

/* HEADER AREA */

#site_header {/* Wraps all header elements */
	border-bottom:2px solid #FFF;
}
#logo {/* Contains the site logo */
	display:block;
	background:url(../images/logo_bg.jpg) 100% 0 no-repeat;
	line-height:80px;
	/*text-indent:-8000px;*/
	text-indent:35px;
	height:80px;
}
#header {/* Wraps all header elements that follow */
	background:url(../images/nav_bg.jpg) repeat-x;
	height:141px;
}
#header_left {
	float:left;
	clear:left;
	background:url(../images/stuff.jpg) 0 100% no-repeat;
	width:49%;
	min-width:470px;
	height:141px;
}
#header_right {
	float:right;
	clear:right;
	width:51%; /* FIXME: this'll probably cause problems */
}
#search {/* Holds the "quick search" form */
	margin:1px 0 0 auto;
	background:#D2D2D2;
	line-height:30px;
	width:250px;
	height:30px;
}
#sub_menu {/* Container for static secondary navigation items */
	background:url(../images/nav_bg.jpg) repeat-x;
	border-left:1px solid #FFF;
	line-height:56px;
}
#login_area {/* User pane (displays the current user, sign in, sign out and register links)  */
	border-left:1px solid #FFF;
	height:55px;
}
#login_area h3 {
	margin:0;
	padding:0;
	color:#FFF;
	background:#D2D2D2;
	font-family:tahoma, arial, sans-serif;
	font-size:12px;
	text-transform:uppercase;
	text-indent:20px;
	line-height:25px;
	width:100%;
	border:none;
}
#login_area p {
	margin:0;
	padding:0;
	text-indent:20px;
	line-height:30px;
}

/* CONTENT AREA */

#site_content {
	background:#EDEDED url(../images/site_content_bg.jpg) repeat-x;
	border-style:solid;
	border-width:0 2px;
	border-color:#FFF;
}
#content {
	float:left;
	clear:left;
	padding:25px 15px;
	width:73%;
}
#sidepane_content {
	float:right;
	clear:right;
	margin:30px 20px 30px 0;
	background:url(../images/sidepane_content_bg.jpg) 50% 2% repeat-y;
	width:22%;
}
#sidepane {
	margin:-4px auto -2px;
	padding:10px;
	background:#FFF;
	border-width:1px;
	border-style:solid;
	border-color:#E0E0E0 #E0E0E0 #CDCDCD;
	width:196px;
}

#home_content {
	clear:both;
	padding:15px 25px;
	background:#BEBEBE;
}
#forum_content {
	clear:both;
	padding:20px 25px;
}

/* FOOTER AREA */

#site_footer {
	background:url(../images/site_footer_bg.jpg) repeat-x;
	font-family:tahoma, verdana, sans-serif;
	font-size:0.9em;
	text-align:center;
	clear:both;
}
#footer_menu {
	color:#FFF;
	height:28px;
}
#copyright_etc {
	padding:10px 0;
	color:#666;
}
#copyright_etc a, #copyright_etc a:active, #copyright_etc a:visited {
	color:#333;
}

/* FAQs */
.faq-list {list-style:none;}
.faq-header {border-bottom:none;}
.faq-question {border-bottom:none; font-weight:normal;}
.faq-answer {
	margin:6px 0 15px 10px;
	width:60%;
}

/* Calendar */
.calendarbox {
	margin:5px auto;
	font-size:11px;
	width:16em;
	text-align:center;
	background:white;
	position:relative;
	border:1px solid #93B9D9;
}
.calendar {
	margin:0;
	padding:0;
}
.calendar table {
	margin:0;
	padding:0;
	border-collapse:collapse;
	background:white;
	width:100%;
}
.calendar caption {
	margin: 0;
	padding:2px 4px;
	font-size:11px;
	text-align:center;
	border-top:none;
	color:#FFFFFF;
	background: #C9DBED url(../images/default-bg.gif) top left repeat-x;
	width:inherit;
}
.calendarbox h2 { margin: 0; font-size:11px; text-align:center; border-top:none; }
.calendar th { font-size:10px; color:#666; padding:2px 3px; text-align:center; background:#e1e1e1 url(../images/table_header_bg.gif) 0 50% repeat-x; border-bottom:1px solid #ddd; }
.calendar td { font-size:11px; text-align: center; padding: 0; border-top:1px solid #eee; border-bottom:none; }
.calendar td.selected a { background: #C9DBED; }
.calendar td.nonday { background:#efefef; }
.calendar td.today a { background:#ffc; }
.calendar td a { display: block; padding:4px; text-decoration: none; color:#444; }
.calendar td a:hover { background: #5b80b2; color:white; }
.calendar td a:active { background: #036; color:white; }
.calendarnav { font-size:10px; text-align: center; color:#ccc; margin:0; padding:1px 3px; }
.calendarnav a:link, #calendarnav a:visited, #calendarnav a:hover { color: #999; }
.calendar-shortcuts { background:white; font-size:10px; line-height:11px; border-top:1px solid #eee; padding:3px 0 4px; color:#ccc; }
.calendarbox .calendarnav-previous, .calendarbox .calendarnav-next {
	display:block;
	position:absolute;
	padding:1px 4px 2px 4px;
	font-weight:bold;
	font-size:10px;
	text-decoration:none;
	background:#C9DBED url(../images/default-bg.gif) bottom left repeat-x;
	color:white;
}
.calendarnav-previous:hover, .calendarnav-next:hover { background:#036; }
.calendarnav-previous { top:0; left:0; }
.calendarnav-next { top:0; right:0; }
.calendar-cancel { margin:0 !important; padding:0; font-size:10px; background:#e1e1e1 url(../images/table_header_bg.gif) 0 50% repeat-x;  border-top:1px solid #ddd; }
.calendar-cancel a { padding:2px; color:#999; }

/* Posts */
ul.posts {
	list-style:none;
}
h2 a:link, h2 a:visited,
h3 a:link, h3 a:visited {
	color:#000;
}
h2 a:hover, h3 a:hover {
	color:#0000CC;
}

dl.posts {
	color:#333;
}
dl.posts dt {
	font-style:normal;
	font-size:1.1em;
}

/* Comments */
.comments {
	width:50%;
}
.comments li {
	margin:0 0 0.8em 0;
	padding:0.8em 1em;
	font-size:0.9em;
	border-color:#999;
	border-style:solid;
	border-width:0 0 0 3px;
	vertical-align:top;
}
.comments li.row {
	background:#F3F3F3;
}
.comments li.alt-row {
	background:#F9F9F9;
}
.comments li a {
	font-family:verdana, 'trebuchet ms', sans-serif;
	font-weight:bold;
}
.comments li p {
	margin:0;
	padding:0;
}

.comments li.author-comment {
	background:#000;
	border-color:#FFF;
}
.comments li.author-comment a,
.comments li.author-comment p {
	color:#FFF;
}

/* TABULAR DATA (from the list, search results and resume view pages) */

table.search-results, table.signup-table {
	margin:0 auto 10px;
	width:90%;
	background:#EFEFEF;
	border:1px solid #BCBCBC;
}
table.resume-table {
	margin:0 auto 10px;
	width:90%;
	border-width:1px 0;
	border-style:solid;
	border-color:#BCBCBC;
}

table.search-results thead, table.signup-table thead {
	/*background:url(../images/table_header_bg.gif) left bottom repeat-x;*/
	background:url(../images/nav_bg.jpg) 0 50% repeat-x;
}
tbody th {
	background-color:#333;
}
table.search-results th {
	margin:0 1px;
	padding:6px 10px;
	color:#FFF;
	border-bottom:1px solid #CCC;
	font-family:arial, verdana, sans-serif;
	font-size:0.95em;
	text-align:left;
	text-transform:capitalize;
}
table.search-results th select {
	color:#333;
	font-size:0.95em;
}
table.signup-table th {
	margin:0 1px;
	padding:6px 3px 6px 10px;
	color:#FFF;
	border-bottom:1px solid #CCC;
	font-family:arial, verdana, sans-serif;
	font-size:1em;
	text-align:center;
	text-transform:uppercase;
}
table.resume-table th {
	padding:6px 3px 6px 10px;
	background:url(../images/nav_bg.jpg) 0 50% repeat-x;
	color:#FFF;
	border-bottom:1px solid #CCC;
	font-family:arial, verdana, sans-serif;
	font-size:0.95em;
	text-align:left;
	text-transform:capitalize;
}
/*
table.search-results tbody tr:hover {
	background:#E6E6E6;
}*/
table.search-results tbody tr.alt-row {
	background:#E6E6E6;
}
table.resume-table tbody tr.row {
	background:#FCFCFC;
}
table.resume-table tbody tr.alt-row {
	background:#F3F3F3;
}
table.resume-table tbody tr.private {
	background:#FFEFEF;
}
table.resume-table tbody tr.private td {
	border-bottom:1px solid #FFF;
}
table.resume-table tbody tr.private th {
	padding-left:25px;
	background:#000 url(../images/lock.gif) 10px 50% no-repeat;
}
table.search-results tbody td {
	padding:2px 10px;
	font-size:0.9em;
	text-align:left;
}
table.search-results tbody td.no-padding {
	padding:0 10px;
}
table.resume-table td.row-spacer {
	border-width:1px 0 0 0;
	border-style:solid;
	border-color:#BCBCBC;
}
table.resume-table td {
	padding:2px 10px;
	font-size:0.95em;
	border-width:0 1px;
	border-style:solid;
	border-color:#BCBCBC;
}

table.search-results tfoot td {
	padding:5px 10px;
	color:#333;
	font-family:verdana, sans-serif;
	text-align:right;
	vertical-align:middle;
}
table.search-results tfoot td a {
	padding:3px 4px;
	color:#333;
	font-size:0.8em;
	text-decoration:none;
	border:1px solid transparent;
}
table.search-results tfoot td a:hover {
	background:#F9F9F9;
	border:1px outset #CCC;
}
button {
	padding:1px 4px;
	font-size:0.9em;
	text-decoration:none;
	opacity:0.9;
	cursor:pointer;
}

/* Notes */
div.note {
	margin:10px 3px;
	padding:10px 0 0;
	border-top:1px dotted #999;
}
div.note h3 {
	padding-left:20px;
	background:url(../images/icon_generic.gif) 0 50% no-repeat;
	border-bottom:none;
	font-size:1.25em;
}

table.notes {
	margin: 10px 0;
}
table.notes h3 {
	margin-bottom: 5px;
}
table.notes th {
	padding: 3px 3px 3px 25px;
	background: transparent url(../images/icon_generic.gif) 0 18px no-repeat;
	color: #000;
	font-weight: normal;
	vertical-align: top;
	width: 25%;
	border-top: 1px solid #ddd;
	border-bottom: none;
}
table.notes td {
	padding: 3px;
	width: 75%;
	border-top: 1px solid #ddd;
}
table.notes td p {
	font-family: verdana, sans-serif;
	font-size: 1.06em;
}

/* Button bar (shown on job detail pages) */
#buttons, .buttons {
	font-family:verdana, sans-serif;
	vertical-align:middle;
	width:90%;
}
#buttons form, .buttons form {
	display:inline;
}
div.buttons {
	margin-left:auto;
	margin-right:auto;
}

/* PAGER */

.pager {
	display:block;
	clear:both;
	margin:10px auto;
	width:85%;
}
.pager .current-page {
	float:left;
	clear:left;
}
.pager .navigation {
	float:right;
	clear:right;
}
.pager .navigation a {
	display:inline-block;
	padding:2px 6px;
	border:1px solid #000066;
	background-color:#FFF;
	text-decoration:none;
	vertical-align:middle;
}

/* SITE MENU */

ul#site_menu {
	margin:0;
	padding:0;
	list-style:none;
	font-family:arial, sans-serif;
	font-size:11px;
	width:100%;
}
ul#site_menu:after {
    display:block;
    clear:both;
    content:" ";
}

/* Top-level menu items */
ul#site_menu li {
	float:left;
	position:relative;
	padding:0;
	text-transform:capitalize;
}
ul#site_menu a {
	display:block;
	padding:20px 20px 8px 20px;
	font-weight:bold;
	text-decoration:none;
	border:none;
	cursor:pointer;
}
ul#site_menu a, ul#site_menu a:active, ul#site_menu a:visited, ul#site_menu a:hover {
	color:#FFF;
}

/* Applies to all child menu items */
ul#site_menu li ul {
	position:absolute;
	visibility:hidden;
	margin:0;
	padding:0;
	list-style:none;
	text-align:left;
	background:#424242;
	border:1px solid #FFF;
	z-index:100;
}
ul#site_menu li ul li {
	text-transform:none;
}
ul#site_menu li ul li a {
	display:block;
	padding:0 30px;
	line-height:1.92em;
	/*font-weight:normal;*/
	text-decoration:none;
	border:none;
	cursor:pointer;
}
ul#site_menu li ul li a, ul#site_menu li ul li a:active, ul#site_menu li ul li a:visited {
	color:#FFF;
}

/* 2nd level items */
ul#site_menu li:hover ul, /* Should work for all standards-compliant browsers */
ul#site_menu li.menu-hover ul /* We'll use JQuery to simulate the hover behavior in IE */
{
	left:0;
	top:3.5em;
	visibility:visible;
	white-space:nowrap;
}
ul#site_menu li ul li {
	clear:right;
	border:none;
	width:100%;
}
ul#site_menu li ul li a.has_children {
	background:url(../images/arrow_right.gif) 95% 50% no-repeat;
}
ul#site_menu li ul li a.has_children:hover {
	background:#ECECE2 url(../images/arrow_right.gif) 95% 50% no-repeat;
	color:#000;
}
/* 3rd level items */
ul#site_menu li:hover ul li ul,
ul#site_menu li.menu-hover ul li ul
{
	visibility:hidden;
}
ul#site_menu li:hover ul li:hover ul,
ul#site_menu li.menu-hover ul li.menu-hover ul
{
	left:95%;
	top:0.3em;
	visibility:visible;
	white-space:nowrap;
}

ul#site_menu li ul li a {
	padding:0 15px;
}
ul#site_menu li ul li a:hover {
	background:#848484;
}
