/* - - - - - - - - - - - - - - - - - - - - -

Title: Javelin v2.0 Global CSS
Author: Back40 Design, Inc.
URL: http://www.back40design.com

Created: May 2, 2008
Modified: May 7, 2008

- - - - - - - - - - - - - - - - - - - - - */

/* alignments */
.alignLeft {
	float: left;
}
.alignRight {
	float: right;
}
.alignCenter {
	text-align: center;
}
/* alignment in tables */
td.alignLeft, th.alignLeft {
	float: none;
	text-align: left;
}
td.alignRight, th.alignRight {
	float: none;
	text-align: right;
}

/* clearing floats */
.clearBoth {
	clear: both;
}

/* user messages */
.javelin.javelin_msg {
	padding: 5px;
	color: #000;
	border: 1px solid #fff;
	font-weight: normal;
}
.javelin.javelin_msg a { font-weight: normal; text-decoration: underline; }
.javelin.javelin_msg ul, .javelin.javelin_msg ul li {
	margin: 0;
	padding: 0;
	list-style: none;
}
.javelin.javelin_msgError {
	border-color: #990000;
	background-color: #FFDFDF;
}
.javelin.javelin_msgFlash {
	border-color: #4BAF00;
	background-color: #DAFFBF;
}
.javelin.javelin_msgNotice {
	border-color: #DDDF00;
	background-color: #FFFFCF;
}
.javelin.javelin_msgNotice a { color: #6F5B00; }

/* default form definiton list styling */
.formLayout dt {margin:8px 0 0 0; padding:0; clear:both;}
.formLayout dd {margin:0; padding:0;}
.formLayout .fieldStack {
	float: left;
	padding-right: 10px;
	font-size: 90%;
}
.formLayout dt .javelin_requiredField {
	padding-left: 3px;
	color: red;
}

/* Javelin user bar */
#javelin_userBar { position: fixed; width: 100%; z-index: 2000; height: 20px; background-color: #202020; color: #e4eded; text-align: right; }
	#javelin_userBar a { color: #e4eded; font-weight: normal; font-size: 11px; }
	.javelin_userBarGreeting { float: right; }
	.javelin_userBarLinks { float: left; }
	.javelin_userLoginRecovery { padding: 20px 0 10px 0; }
#javelin_userBar ul li { display: inline; padding: 0 5px 0 4px; border-right: 1px solid #e4eded; font-size: 11px; color: #e4eded; }
#javelin_userBar ul li.javelin_lastItem { border: 0; }
#javelin_userBar a { color: #e4eded; text-decoration: none; }
#javelin_userBar .javelin_userMessagesLink { display: none; }
#javelin_userBarSpacer  { position: relative; height: 20px; width: 900px; margin: 0 auto; }
	
	

/* modules */

/* gallery */
.javelin_gallery {clear: both;}
.javelin_gallery li.javelin_galleryItem {display: block; float: left; list-style: none; margin-right: 10px; text-align: center;}

/* staff */
.javelin_staffItemImage {float: left; margin: 0 1em 0 0;}
/*
.javelin_staff dl {clear: left;}
.javelin_staff dt {float: left; font-weight: bold;}
.javelin_staff dd {margin: 0 5em 1em 6em;}
.javelin_staff {display: block; clear: both; min-height: 100px; padding: 10px 0!important;}
*/
.javelin_staffItem {list-style: none; float: left; width: 100px; margin-right: 2em; text-align: center;}
.javelin_staffItem .javelin_staffItemName {font-weight: bold;}
.javelin_staffItem .javelin_staffItemTitle {font-size: .75em; font-style: italic;}

/* blog */
.javelin_blog h2 {margin-bottom: 0;}
.javelin_blogPostByline, .javelin_blogPostDate {margin-top: 0; font-size: 85%; font-style: italic;}
.javelin_blogPostByline .javelin_blogPostDate { font-size: 100%; }
.javelin_blogFeedRss {float: right;}
.javelin_blogFeedRss a {width: 25px; height: 25px; text-indent: -9999px; background: url(../images/icons/RSSicon.gif) no-repeat; display: block; outline: none;}
.javelin_blogCommentsLink {float: right;}
.javelin_blogPostMedia { padding: 16px 0 6px 0; }
.javelin_blogPostMediaTitle { font-style: italic; }
.javelin_blogPostMediaLink { }
.javelin_blogPostTags, .javelin_blogBackLink { padding: 8px 0; }

/* comments */
.javelin_comments {border-top: 1px solid #ccc;}
.javelin_comments .javelin_moduleItem {padding: 5px 0;}
.javelin_comments legend {font-weight: bold; padding-top: 10px;}
.javelin_comments dl {margin-top: 20px;}

/* Contact Module */
.javelin_module-contact {line-height: normal;}
.javelin_formFieldRequired:after {content: " *"; color: red;}

/* calendar */
/*
.calendar_class {width: 100%; clear: left; padding-bottom: 15px;}
.calendar_class {font-size: 1.2em;}
.calendar_class td {text-align: center;border: 1px solid #000;padding: 3px;}
.calendar_class th {font-size: 14px; text-align: center;}
.javelin_calendarMulti .calendar_class {width: 40%; float: left; margin: 0 2em 0 0;}
*/
.javelin_moduleClear {clear: both;}
.javelin_calendarMulti {clear: both; min-height: 150px;}

.javelin_calendarMonth { padding:0 20px; font-weight: bold; }
.javelin_calendarDayToday {background: #EEEFB3;}
.javelin_calendarList a {font-size: 1.2em;}

	/* mini with list */
	.javelin_calendarEventView .javelin_calendarEventDateRange {font-style: italic;}
	.javelin_calendarListView .javelin_calendarEventDateRange {margin: 0 0 4px 0; font-size: .9em;}
	
	/* mini */
	.javelin_calendarMulti .javelin_calendarList {float: left; width: 69%;}
	.javelin_calendarMulti .javelin_calendarMini {float: right; width: 30%;}
	.javelin_calendarTable {margin-bottom: 20px;}
	.javelin_calendarMini td {width: 28px; color: #b1aba2;border: 1px solid #000;font-size: .9em;font-weight: bold;text-align: center; padding: 5px;}
	.javelin_calendarMini th {font-weight: bold; height: 20px;}
	.javelin_calendarMini .javelin_calendarMonth {text-decoration: none;font-size: 1em; position: relative; left: -10px; font-weight: bold;} 
	.javelin_calendarMini .javelin_calendarPrev {display: block; width: 20px; float: left; text-decoration: none;}
	.javelin_calendarMini .javelin_calendarNext {display: block; width: 20px; float: right; text-decoration: none;}
	.javelin_calendarMini .javelin_calendarDayToday {border: 0;}
	.javelin_calendarMini .javelin_calendarDays {height: 25px;}
	.javelin_calendarEventTitle {padding:0; margin:0;}
	.javelin_calendarEventDateRange {font-size: .8em; font-style: italic; display: block;}

	/* full */
	.javelin_calendarFull .javelin_calendarTable { border-width: 0 1px 1px 0; border-style: solid; border-color: #000; }
	.javelin_calendarFull .javelin_calendarTable td { width: 14%; height: 70px; margin: 0 2px 2px 0; padding:3px; vertical-align: top; border-width: 1px 0 0 1px; border-style: solid; border-color: #000; }
	.javelin_calendarFull .javelin_calendarDayNumber { display: block; }
	.javelin_calendarFull .javelin_calendarTable th { border-width: 0; }
	
/* flash (admin) */
.javelin_flash_image {clear: both;}
.javelin_flash_image .preview {float:left; width:125px; padding: 10px;}
.javelin_flash_image .fields {float:left; width:70%;}
.javelin_flash_image .javelin_sortableHandle:hover {cursor:move;}

/* products (cart) */
.javelin_productsCartTotalsTotal td { border-top: 1px solid #000000; margin-top: 3px; }
/* view template */
.javelin_productsView .javelin_productsItemImage { width: 30%; float: right; }
.javelin_productsItemImage ul, .javelin_productsItemImage li { margin: 0; padding: 0; list-style: none; }
.javelin_productsItemImage li { padding: 5px; }
.javelin_productsItemImageCaption { text-align: center; font-size: 90%; }
h1.javelin_productsItemName { float: left; }
.javelin_productsItemDescription { clear: left; }
.javelin_productsItemPrice { padding: 10px 0; font-size: 140%; font-weight: bold; }
	/* product options */
	dl.javelin_productsItemOptions { margin: 0; padding: 0; }
	dl.javelin_productsItemOptions dt, dl.javelin_productsItemOptions dd { margin: 0; padding: 0; }

/* form module */
.javelin_formField, .javelin_formField dt, .javelin_formField dd {margin:0; padding:0;}
.javelin_formField dt {margin-top:8px;}

/* twitter module */
.javelin_twitter { font-size: 90%; }
.javelin_twitterUserImage { float:left; margin-right: 10px; }
.javelin_twitterTweets { clear: left; }
.javelin_twitterTweets li { margin:4px 0; list-style: none; }

/* datepicker */
.ui-datepicker {z-index:8999!important;} /* ensure datepicker is always above dialog */

/* jQuery lightBox plugin */
#jquery-overlay {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 9998!important;
	width: 100%;
	height: 500px;
}
#jquery-lightbox {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
	text-align: center;
	line-height: 0;
}
#jquery-lightbox a img { border: none; }
#lightbox-container-image-box {
	position: relative;
	background-color: #fff;
	width: 250px;
	height: 250px;
	margin: 0 auto;
}
#lightbox-container-image { padding: 10px; }
#lightbox-loading {
	position: absolute;
	top: 40%;
	left: 0%;
	height: 25%;
	width: 100%;
	text-align: center;
	line-height: 0;
}
#lightbox-nav {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 10;
}
#lightbox-container-image-box > #lightbox-nav { left: 0; }
#lightbox-nav a { outline: none;}
#lightbox-nav-btnPrev, #lightbox-nav-btnNext {
	width: 49%;
	height: 100%;
	zoom: 1;
	display: block;
}
#lightbox-nav-btnPrev { 
	left: 0; 
	float: left;
}
#lightbox-nav-btnNext { 
	right: 0; 
	float: right;
}
#lightbox-container-image-data-box {
	font: 10px Verdana, Helvetica, sans-serif;
	background-color: #fff;
	margin: 0 auto;
	line-height: 1.4em;
	overflow: auto;
	width: 100%;
	padding: 0 10px 0;
}
#lightbox-container-image-data {
	padding: 0 10px; 
	color: #666; 
}
#lightbox-container-image-data #lightbox-image-details { 
	width: 70%; 
	float: left; 
	text-align: left; 
}	
#lightbox-image-details-caption { font-weight: bold; }
#lightbox-image-details-currentNumber {
	display: block; 
	clear: left; 
	padding-bottom: 1.0em;	
}			
#lightbox-secNav-btnClose {
	width: 66px; 
	float: right;
	padding-bottom: 0.7em;	
}
#javelintoolbar_wrap {
        position: fixed;
        top: 0px;
        right: 0px;
        z-index: 5000;
		display: none;
}
#javelintoolbar {
	width: 350px;
	height: 67px;
	background: url(../images/login/javelintoolbar_background.png) no-repeat;
	font-family: Verdana; 
	font-size: 11px; 
	color: #ffffff; 
	position: relative;
}
#javelintoolbar dl {
	float: left; 
	padding-left: 10px;
        margin-top: 3px;
}
#javelintoolbar dl dd {
	padding: 0px; 
	margin: 0px; 
	margin-top: 6px;
}
#javelintoolbar #username {
	width: 155px; 
	height: 22px; 
	background: url(../images/login/javelintoolbar_inputbox.jpg) no-repeat; 
	color: #444444; 
	border: none;
}
#javelintoolbar #password {
	width: 155px; 
	height: 22px; 
	background: url(../images/login/javelintoolbar_inputbox.jpg) no-repeat; 
	color: #444444; 
	border: none;
}
#javelintoolbar button {
	background: url(../images/login/javelintoolbar_gobutton.jpg) no-repeat; 
	font-size: 11px; 
	width: 50px; 
	height: 26px;
	border: none; 
	color: #ffffff;
	position: absolute; 
	bottom: 7px; 
	right: 16px;
}

/* help tips */
.javelin_tip { font-size: 12px!important; color: #30759D; border-bottom: 1px dashed #30759D; text-decoration: underline; }
.javelin_tipContent { display: none; }

label.error {padding-left:5px; color: red;}
