.error {
	color:#F00;
}
.calendar-right-column {
	float:right;
	width:300px;
	padding:0px 0px 0px 10px;
}
.calendar-left-column {
	width:584px;
	float:left;
	height:auto;
	padding:1em;
}
/* Mini-calendar */

.calendar-small {
	margin-top:0.50em;
	line-height:1em;
	font-size:8pt;
}

.calendar-mini-header {
	height:30px;
	width:279px;
	margin:1em auto 0;
	line-height:30px;
	background:url('../images/layout/calendar-header-bg.gif') repeat-x;
	border-right:1px solid #FFF;
}
.calendar-mini-month {
	float:left;
	height:30px;
	line-height:30px;
	font-weight:bold;
	padding-left:6px;
	font-size:10pt;
}
.calendar-mini-nav {
	float:right;
	height:30px;
	line-height:30px;
	padding-right:6px;
	font-size:7.5pt;
	font-weight:bold;
}
.calendar-mini-month,
.calendar-mini-nav,
.calendar-mini-nav a {
	color:#D31145;
}
.calendar-mini-cells {
	clear:both;
	overflow:hidden;
	width:280px;
	margin:0 auto;
}
.calendar-mini-cell {
	float:left;
	position:relative;
	width:39px;
	height:43px;
	background:#F7F7F7;
	margin:1px 1px 0px 0px;
}
.calendar-mini-dow {
	position:absolute;
	top:-2px;
	left:2px;
	text-transform:uppercase;
	color:#C6C6C6;
	font-size:9px;
	font-weight:bold;
}
.calendar-mini-date {
	display:block;
	text-align:right;
	font-size:12px;
	color:#005188;
	padding:2px 3px 0px 0px;
}
.calendar-mini-event {
	display:block;
	overflow:hidden;
	height:3px;
	margin:1px 1px 0px;
}
.calendar-civilian      { background-color:#FCCA60; }
.calendar-state-local   { background-color:#005188; }
.calendar-defense       { background-color:#D31145; }
.calendar-intelligence  { background-color:#9B9B9B; }
.calendar-public-safety { background-color:#FC9611; }
.calendar-healthcare    { background-color:#4c8800; }
span.calendar-credits   { background-image:url('../images/icons/calendar-training-credits.gif'); }
span.calendar-online    { background-image:url('../images/icons/calendar-online-event.gif'); }

/* Legend */
.calendar-legend-title {
	text-transform:uppercase;
	color:#A8A8A8;
	font-size:8pt;
	line-height:9pt;
}
.calendar-legend {
	border:1px solid #D7D7D7;
	background:#FFF;
	padding:3px 0px 3px 7px;
}
.calendar-legend-item {
	display:block;
	float:left;
	margin-right:1.30em;
	color:#707070;
	font-size:7.5pt;
	font-weight:normal;
	letter-spacing:0.15ex;
	line-height:19px;
}
.calendar-legend a {
	color:#707070;
}
.calendar-legend .calendar-legend-item {
	text-transform:uppercase;
}
.calendar-legend-icon,
.calendar-legend-icon-credits,
.calendar-legend-icon-online {
	display:block;
	float:left;
	width:13px;
	height:13px;
	overflow:hidden;
	margin:3px 6px 0 0;
	background-image:url('../images/calendar_overlay_small.gif');
}
.calendar-legend-icon-credits {
	background:url('../images/icons/calendar-training-credits.gif') no-repeat;
}
.calendar-legend-icon-online {
	background:url('../images/icons/calendar-online-event.gif') no-repeat;
}

/* Upcoming Events */
.calendar-upcoming {
	border-top:1px dotted #CCC;
	padding:7px 0;
}
.calendar-upcoming p {
	margin-left:2em;
}
.calendar-upcoming-date,
.calendar-upcoming-link a {
	color:#D31145;
}
.calendar-upcoming-iconset {
	float:left;
	width:16px;
}

/* Month's Events */
.calendar-month .calendar-legend-icon {
	width:20px;
	height:20px;
	text-align:center;
	font-size:9pt;
	color:#FFF;
	letter-spacing:0;
	margin-top:0;
	background-image:url('../images/calendar_overlay_large.gif');
}
.calendar-month .calendar-legend-icon[class] {
	background-image:url('../images/calendar_overlay_large.png');
}
.calendar-month .calendar-legend-item {
	margin-top:3px;
	line-height:20px;
	width:120px;
}
.calendar-month .calendar-month-bigger {
	font-size:11.5pt;
}
.calendar-month-name {
	color:#369;
	font-size:11pt;
	font-weight:bold;
	line-height:20pt;
}
.calendar-month span.calendar-credits[class],
.calendar-month span.calendar-credits {
	background-image:url('../images/icons/calendar-training-credits-large.gif');
}
.calendar-month span.calendar-online[class],
.calendar-month span.calendar-online {
	background-image:url('../images/icons/calendar-online-event-large.gif');
}

/* Year's Events */
.calendar-year {
	width:185px;
	float:left;
	position:relative;
}
.calendar-year .calendar-legend-item {
	margin-right:0;
}
.calendar-year .header {
	text-transform:none;
	color:#005188;
	margin-top:1ex;
}
.calendar-year .header strong {
	font-size:8pt;
	color:#A1A1A1;
}
.calendar-year-separator {
	clear:left;
	height:0;
	overflow:hidden;
	border-bottom:1px solid #D7D7D7;
	padding-top:1ex;
}
.calendar-year-link {
	text-align:right;
}
.calendar-year-expand-link {
	display:block;
	clear:both;
	/*margin-bottom:1em;*/
	padding-top:1em;
	text-align:center;
}

/* Month Detail Page */
div.calendar-huge {
	color:#369;
	font-size:18pt;
	font-weight:normal;
	line-height:19pt;
	text-transform:none;
	margin-top:0;
}

.calendar-header-links {
	margin-top:1ex;
}

.calendar-header-links a {
	color:#D31145;
}

.calendar-book-trip {
	color:#005188;
	margin-bottom:0.5ex;
}

.calendar-event-date {
	color:#D31145;
}

.calendar-event-title {
	clear:both;
	color:#005188;
	font-size:13pt;
	border-top:1px dotted #CCC;
	margin-top:7px;
	padding:7px 0 0px;
}

.calendar-event-title .calendar-upcoming-iconset {
	margin:2px 3px 0 0;
	width:auto;
}

.calendar-event dl dt {
	display:block;
	float:left;
	width:75px;
	margin:0 0 1em 0;
	padding:0 0 0 30px;
	font-weight:normal;
}
.calendar-event dl dd {
	display:block;
	float:left;
	width:180px;
	margin:0 0 1em 0;
	padding:0;
}
.calendar-event dl dd.clear {
	clear:both;
	float:none;
	height:0;
	width:100%;
	overflow:hidden;
}
.calendar-event dl.wide dt {
	clear:left;
	width:90px;
}
.calendar-event dl.wide dd {
	width:455px;
}

/* Search */
.calendar-search-spacer {
	clear:both;
	height:1ex;
	overflow:hidden;
}
.calendar-search-label {
	float:left;
	width:80px;
}
.calendar-search-field {
	width:196px;
}

/* Homepage Stuff */
.portal_content .calendar-upcoming-title {
	font-size:13px;
	font-weight:bold;
}
.portal_content .calendar-upcoming-date,
.portal_content .calendar-upcoming-organization,
.portal_content .calendar-upcoming-location {
	font-size:11px;
}

