/* Standard html elements */

td {
	vertical-align: top;
}

.brclear {
	clear: both;
}

.nobr {
	white-space: nowrap;
}

/* Styles for the login area */
#user_controls {
	padding: 6px;
	text-align: right;
	font-size: small;
/*	font-weight: bold; */
	margin: 0px;
}

#user_controls form {
	margin: 0px;
}

#user_controls form input {
	font-size: 6pt;
}

#user_contols a, #user_contols a:hover {
	font-weight: bold;
}

/* Styles for status messages */
.msg_success, .msg_info, .msg_error, .msg_debug {
	margin: 0;
	margin-top: 5px;
	border-top: solid 2px #000000;
	border-bottom: solid 2px #000000;
	padding: 3px;
	text-align: left;
}

.msg_success {
	color: #006600;
	border-color: #009900;
	background-color: #ccffcc;
}
.msg_info {
	color: #666600;
	border-color: #999900;
	background-color: #ffffcc;
}
.msg_error {
	color: #660000;
	border-color: #990000;
	background-color: #ffcccc;
}
.msg_debug {
	color: #663300;
	border-color: #996600;
	background-color: #ffeecc;
	font-size: 10pt;
}

/* Styles for admin toolbars */
.toolbar {
	margin: 5px 0px 5px 0px;
	margin-top: 10px;
	padding: 3px;
	color: #660000;
	background-color: #eeee77;
	font-size: x-small;
}

.toolbar input {
	font-size: xx-small;
}

.toolbar form {
	margin: 0px;
	padding: 0px;
	display: inline;
}

/* Styles for managed list tables */
.managedtable {
	width: 100%;
	border: solid 1px grey;
	border-collapse: collapse;
}

.managedtable thead th {
	background-color: #003366;
	border: solid 1px #cccccc;
	color: #ffffff;
}

.managedtable tbody td {
	border: solid 1px #cccccc;
	font-size: x-small;
	text-align: left;
}

.managedtable tbody tr.odd td {
	background-color: #ffffff;
}

.managedtable tbody tr.even td {
	background-color: #eeeeee;
}

.managedtable tfoot td {
	background-color: #cccccc;
	text-align: center;
}

/** Tableless forms **/
fieldset.tabular {
  margin-bottom: 10px;
}
fieldset.tabular legend {
  padding: 0 2px;
  font-weight: bold;
}
fieldset.tabular label {
  display: inline-block;
  line-height: 1.8;
  vertical-align: top;
  font-size: small;
  font-weight: bold;
  text-align: left;
}
fieldset.tabular ol {
  margin: 0;
  padding: 0;
}
fieldset.tabular li {
  list-style: none;
  padding: 5px;
  margin: 0;
}
fieldset.tabular li.odd
{
	background-color: #f3f3ff;
}
fieldset.tabular li.even
{
	background-color: #f6f8ff;
}
fieldset.tabular li div.control_block label {
	font-weight: normal;
}
fieldset.tabular fieldset {
  border: none;
  margin: 3px 0 0;
}
fieldset.tabular fieldset legend {
  padding: 0 0 5px;
  font-weight: normal;
}
fieldset.tabular fieldset label {
  display: block;
  width: auto;
}
fieldset.tabular em {
  font-weight: bold;
  font-style: normal;
  color: #f00;
}
fieldset.tabular label {
  width: 120px; /* Width of labels */
}
fieldset.tabular fieldset label {
  margin-left: 123px; /* Width plus 3 (html space) */
}

/* Tristate styles */
.complete {
	color: #009900;
}

.partly_complete {
	color: #ee9900;
}

.incomplete {
	color: #cc0000;
}

/* Box management styles */
.area_controls {
	background-color: #eeee77;
	font-size: x-small;
	padding: 2px;
	font-weight: bold;
	margin: 0px 5px 5px 5px;
}

.box_controls {
	background-color: #eeee77;
	font-size: x-small;
	padding: 2px;
	font-weight: bold;
}

.box_controls img {
	vertical-align: middle;
	border: none;
}

.area_controls a, .box_controls a {
	color: #000066;
}

.area_controls form, .box_controls form {
	margin: 0px;
	padding: 0px;
}

.area_controls input, .area_controls select, .box_controls input, .box_controls select {
	font-size: xx-small;
}

.horiz_box_area, .vert_box_area {
	display: block;
	padding: 0px;
}
.horiz_box_area {
	margin: 0px;
}

.vert_box_area {
	margin: 10px;
}


/* Box Style */
.horiz_box, .vert_box {
	display: block;
	margin: 0px;
	padding: 0px;
	font-size: xx-small;
}

.horiz_box h2, .vert_box h2 {
	font-size: 14pt;
	color: grey;
	font-weight: bold;
}

.horiz_box h3, .vert_box h3 {
	font-size: 12pt;
	color: grey;
	font-weight: bold;
}

.horiz_box {
	float: left;
}

.vert_box {
	margin-bottom: 10px;
}

/* Event styles */
img.event_image {
	float: left;
	margin-top: 5px;
	margin-right: 5px;
}

img.event_thumb {
	float: right;
	margin-left: 5px;
}

p.event_prices {
	font-size: small;
	color: #6699cc;
}

p.event_times {
	font-size: small;
	color: #6699aa;
}

/* Directory styles */
img.entry_image {
	margin-top: 5px;
	margin-left: 5px;
}

img.entry_thumb {
	float: left;
	margin-right: 5px;
}


h2 img.category_image {
	float: right;
	margin-left: 2px;
	border: 0px;
}

/* Search box */
.searchbox {
	font-size: 8pt;
	text-align: center;
}

/* Shopping Cart */
table.cart_view {
	font-size: small;
	width: 100%;
}

table.cart_view thead {
	background-color: #eeeeee;
}


table.cart_view tfoot {
	background-color: #eeeeee;
	font-weight: bold;
}

table.cart_view td {
	vertical-align: top;
}

.error {
	background-color:#FFC4CE;
}

span.error {
	border: solid 2px red; 
}

/* Calendar Styles */
table.calendar_box {
	width: 200px;
	margin: auto;
	border-collapse: collapse;
}

table.calendar_box th, table.calendar_box td {
	text-align: center;
	vertical-align: middle;
	height: 25px;
	width: 25px;
	border: solid 1px #999999;
	font-size: 8pt;
}

table.calendar_box th
{
	color: #666666;
}

table.calendar_box td.blank {
	background-color: #dddddd;
}

table.calendar_box td.event {
	background-color: #bbddff;
}

table.calendar_box td.noevent {
	background-color: #eef6ff;
}


table.calendar_year {
	margin: 5px;
	border-collapse: collapse;
	display: inline;
}

table.calendar_year th, table.calendar_year td {
	text-align: center;
	vertical-align: middle;
	height: 20px;
	width: 20px;
	padding: 0px;
	border: solid 1px #999999;
	font-size: 8pt;
}

table.calendar_year th
{
	color: #666666;
}

table.calendar_year td.blank {
	background-color: #dddddd;
}

table.calendar_year td.event {
	background-color: #bbddff;
}

table.calendar_year td.noevent {
	background-color: #eef6ff;
}


table.calendar_month {
	margin: 5px;
	border-collapse: collapse;
}

table.calendar_month th, table.calendar_month td {
	height: 75px;
	width: 75px;
	padding: 0px;
	border: solid 1px #999999;
	font-size: 8pt;
}

table.calendar_month th {
	text-align: center;
	vertical-align: middle;
	height: 30px;
	font-size: 10pt;
}

table.calendar_month th
{
	color: #666666;
}

table.calendar_month td.blank {
	background-color: #dddddd;
}

table.calendar_month td.event {
	background-color: #bbddff;
}

table.calendar_month td.noevent {
	background-color: #eef6ff;
}

table.calendar_month td div.entry {
	background-color: #3333bb;
	color: #ffffff;
	font-size: 6pt;
	margin-bottom: 1px;
	text-align: left;
	font-weight: normal;
}

table.calendar_day {
	width: 500px;
}

table.calendar_day td, table.calendar_day th {
	border-bottom: solid 1px #cccccc;
	height: 75px;
}

table.calendar_day th {
	border-top: solid 1px #cccccc;
	height: 30px;
}
	
table.calendar_day td.time {
	width: 70px;
	font-weight: bold;
}


.calendar_list_event
{
	font-size: 10pt;
	border: solid 1px #eeeeee;
	margin-bottom: 5px;
}

.calendar_list_event .title
{
	font-weight: bold;
	background-color: #eeeeee;
}

.calendar_list_event .controls
{
	float: right;
}


/* Event Box Rollover */

.eventbox_rollover a {
	margin: 0px;
	padding: 0px;
}

.eventbox_rollover_mainbox {
	float: left;
	margin: 0px;
	padding: 0px;
}

.eventbox_rollover_title {
	color: #ffffff;
	position: absolute;
	top: 260px;
	left: 3px;
	width: 315px;
	font-weight: bold;
	font-size: 12pt;
	background-color: #000000;
	padding-left: 10px;
	border-top: solid 2px #666666;
	border-bottom: solid 2px #666666;
	
	filter:alpha(opacity=50);
	-moz-opacity:0.5;
	-khtml-opacity: 0.5;
	opacity: 0.5;
}

.eventbox_rollover_image {
	margin: 0px;
	border: solid 3px #ddd;
}

.eventbox_rollover_thumbnail {
	margin: 0px;
	padding: 0px;
	border: solid 3px #ddd;
}

/* Horizontal menu box */

/* Top Level */
li.horiz_box ul.menubox {
	margin: 0px;
	padding: 0px;
	list-style: none;
	line-height: 1.2;
}

li.horiz_box ul.menubox li {
	padding: 0 0 0 10px;
	margin: 0px;
	float: left;
}

li.horiz_box ul.menubox li a {
	font-size: 16px;
	color: #336699;
	text-decoration: none;
	font-weight: bold;
	padding: 3px;
	display: block;
	width: 130px;
}

li.horiz_box ul.menubox li:hover a {
	background-color: #336699;
	color: #ffffff;
}

/* First level */
li.horiz_box ul.menubox li ul {
	width: 140px;
	position: absolute;
	left: -5000px;
}


li.horiz_box ul.menubox li:hover ul {
	left: auto;
	background-color: #ddeeff;
	list-style: none;
	margin: 0;
	padding: 0;
}


li.horiz_box ul.menubox li:hover ul li {
	left: auto;
	margin: 0;
	padding: 0;
}

li.horiz_box ul.menubox li:hover ul li a {
	display: block;
	width: 140px;
	background-color: #ddeeff;
	color: #336699;
	font-size: 12px;
	padding: 5px 0 5px 3px;
}

li.horiz_box ul.menubox li:hover ul li:hover a {
	background-color: #336699;
	color: #ffffff;
}

/* Second Levels */
li.horiz_box ul.menubox li ul ul, li.horiz_box ul.menubox li:hover ul ul {
	margin: -22px 0 0 140px;
	left: -5000px;
}

li.horiz_box ul.menubox li ul ul, li.horiz_box ul.menubox li:hover ul li:hover ul {
	left: auto;
}

li.horiz_box ul.menubox li:hover ul li:hover ul li a {
	display: block;
	width: 140px;
	background-color: #ddeeff;
	color: #336699;
}

li.horiz_box ul.menubox li:hover ul li:hover ul li:hover a {
	background-color: #336699;
	color: #ffffff;
}

