/*
	 .-----------------------------------------------------.
	 |                    CALENDAR NAV                     |
	 '-----------------------------------------------------'
*/

.date-nav {
	width: 100%;
	padding-bottom: 1.65em;
	overflow: hidden;
}

/* --- Date Nav --- */

.events-nav-date {
	float: left;
	padding-top: 8px;
}

.events-nav-date h2 {
	margin: 0;
	margin-top: -5px;
	padding: 0 27px;
	float: left;
	font-size: 1.200em;
	line-height: 1.2em;
	color: #3f526c;
}

.events-nav-date a.date-prev,
.events-nav-date a.date-next {
	float: left;
	width: 7px;
	height: 14px;
	overflow: hidden;
	text-indent: -9999px;
	background: url(images/arrows-2.png) left top no-repeat;
}

.events-nav-date a.date-prev {
	background-position: left top;
}

.events-nav-date a.date-next {
	background-position: right top;
}

.events-nav-date a.date-prev:hover {
	background-position: left bottom;
}

.events-nav-date a.date-next:hover {
	background-position: right bottom;
}

/* --- View Type Nav --- */

.events-nav-type {
	float: right;
}

.events-nav-type a {
	float: left;
	width: 30px;
	height: 30px;
	overflow: hidden;
	text-indent: -9999px;
	background: url(images/event-views.png) left top no-repeat;
}

.events-nav-type a.cal {
	background-position: 0 bottom;
}

.events-nav-type a.list {
	background-position: -30px bottom;
}

.events-nav-type a.ical {
	background-position: -60px bottom;
}

.events-nav-type a.cal:hover,
.events-nav-type a.cal.active {
	background-position: 0 top;
}

.events-nav-type a.list:hover,
.events-nav-type a.list.active {
	background-position: -30px top;
}

.events-nav-type a.ical:hover,
.events-nav-type a.ical.active {
	background-position: -60px top;
}

/* --- Calendar Category Nav --- */

.events-nav-cat {
	float: right;
	height: 30px;
	padding: 0 47px 0 12px;
	margin-right: 20px;
	background: #ff9200;
	color: #fff;
	line-height: 29px;
	text-transform: uppercase;
	position: relative;
	overflow: hidden;
	text-decoration: none;
	
	background: #4EA1DD;
	color: #F4FAFD;
	padding-right: 12px;
	cursor: default;
}

.events-nav-cat span.icon {
	display: block;
	height: 30px;
	width: 36px;
	position: absolute;
	top: 0;
	right: 0;
	background: #ff6b00 url(images/arrow-down-1.png) center center no-repeat;
	
	display: none;
}

a.events-nav-cat:hover {
	background: #ff7e00;
}

a.events-nav-cat:hover span.icon {
	background-color: #ff4b00;
}

/*
   .-----------------------------------------------------.
   |               EVENTS EXPOSED FILTERS                |
   '-----------------------------------------------------'
*/

.event-filters,
.no-events {
	margin-bottom: 30px;
	box-shadow: 0 0 2px rgba(0, 0, 0, 0.15);
	border: 1px solid #dfdee0;
	padding: 24px 29px 27px 29px;
	overflow: hidden;
	background: #fff;
}

.event-filters ul,
.event-filters li,
.event-filters .form-item {
	margin: 0;
	padding: 0;
	list-style: none;
	overflow: hidden;
}

/* full page <li> width */
.event-filters ul.bef-tree-depth-0 > li,
.event-filters.subcats-expanded ul.bef-tree-depth-0 > li > ul > li {
	float: left;
	width: 229.5px;
}

.event-filters ul li:nth-child(4n+1) {
	clear: left;
}

/* page with sidebar <li> width */
body.has-sidebar .event-filters ul.bef-tree-depth-0 > li,
body.has-sidebar .event-filters.subcats-expanded ul.bef-tree-depth-0 > li > ul > li {
	width: 291px;
}

body.has-sidebar .event-filters ul li:nth-child(4n+1) {
	/*clear: none;*/
}

body.has-sidebar .event-filters ul li:nth-child(3n+1) {
	/*clear: left;*/
}

.event-filters ul.bef-tree-depth-0 li ul {
	padding-bottom: 10px;
	color: #92A8C4;
}

.event-filters .form-type-bef-checkbox  {
	line-height: 1.3em;
	padding-bottom: 4px;
}

.event-filters ul.bef-tree-depth-1 .form-type-bef-checkbox {
	padding-right: 8px;
}

.event-filters .active-subcats {
	color: #4ea1dd;
	outline: 0;
}

/* Active subcategory label color */
.event-filters ul.bef-tree-depth-0 ul input:checked + label {
	color: #4ea1dd;
}

/* Expanded view of subcategories */

.event-filters.subcats-expanded ul.bef-tree-depth-0 > li,
body.has-sidebar .event-filters.subcats-expanded ul.bef-tree-depth-0 > li {
	float: none;
	width: auto;
	padding-bottom: 5px;
	margin-bottom: 8px;
	border-bottom: 1px solid #efeef0;
}

.event-filters.subcats-expanded ul.bef-tree-depth-0 > li:last-child {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: 0;
}

.event-filters.subcats-expanded ul.bef-tree-depth-0 li ul {
	padding-bottom: 0;
}

html.no-js .event-filters.subcats-expanded ul.bef-tree-depth-0 li ul {
	display: none;
}

html.no-js .event-filters.subcats-expanded ul.bef-tree-depth-0 li:hover ul {
	display: block;
}

/* --- Checkbox Coloring --- */

.event-filters .form-type-bef-checkbox input {
	position: absolute; 
    overflow: hidden; 
    clip: rect(0 0 0 0); 
    height: 1px; 
    width: 1px; 
    margin: -1px; 
    padding: 0;
    border: 0;
}

.event-filters .form-type-bef-checkbox label {
	display: inline-block;
	padding: 0 0 0 20px;
	min-height: 15px;/* 13px img + 2px bg pos*/
	background: url(images/checkbox/checkbox-default.png) -1px 2px no-repeat;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.event-filters .form-type-bef-checkbox label:hover {
	background-position: -1px -147px;
}

.event-filters .form-type-bef-checkbox input:checked + label {
	background-position: -1px -297px;
}

/* Seminars */
.event-filters .form-item-edit-cat-7 label {
	background-image: url(images/checkbox/checkbox-orange.png);
}

/* Webinars */
.event-filters .form-item-edit-cat-8 label {
	background-image: url(images/checkbox/checkbox-yellow.png);
}

/* RTO, ISO */
.event-filters .form-item-edit-cat-877 label {
	background-image: url(images/checkbox/checkbox-pink.png);
}

/* Federal Agencies */
.event-filters .form-item-edit-cat-879 label {
	background-image: url(images/checkbox/checkbox-blue.png);
}

/* FERC */
.event-filters .form-item-edit-cat-880 label {
	background-image: url(images/checkbox/checkbox-greenyellow.png);
}

/* State Commisions */
.event-filters .form-item-edit-cat-875 label {
	background-image: url(images/checkbox/checkbox-green.png);
}

/* State Regulatory Agencies */
.event-filters .form-item-edit-cat-881 label {
	background-image: url(images/checkbox/checkbox-greenlight.png);
}

/* Organizations */
.event-filters .form-item-edit-cat-882 label {
	background-image: url(images/checkbox/checkbox-navyviolet.png);
}

/* Standards and Codes */
.event-filters .form-item-edit-cat-876 label {
	background-image: url(images/checkbox/checkbox-torquoise.png);
}

/* Other State Activities */
.event-filters .form-item-edit-cat-878 label {
	background-image: url(images/checkbox/checkbox-violet.png);
}

/* Other Events */
.event-filters .form-item-edit-cat-9 label {
	background-image: url(images/checkbox/checkbox-gray.png);
}

/* --- Form Actions --- */

.event-filters .filters-actions {
	padding-top: 20px;
	overflow: hidden;
}

.event-filters .filters-actions > * {
	float: left;
	margin-right: 24px;
}

.event-filters .filters-actions .form-submit,
.event-filters .filters-actions a {
	height: 1.8em;
	line-height: 1.7em;
	font-size: 1em;
	outline: 0;
}

.event-filters .filters-actions #edit-reset {
	background: none;
	border: 0;
	padding: 0;
	color: #92a8c4;
	text-transform: none;
	font-family: inherit;
	height: auto;
	float: right;
	margin-right: 0;
}

.event-filters .filters-actions #edit-reset:hover {
	text-decoration: underline;
}

/*
	 .-----------------------------------------------------.
	 |                   CALENDAR TABLE                    |
	 '-----------------------------------------------------'
*/

 table.calendar {
	margin: 0;
	padding: 0;
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
	border: none;
	text-align: left;
	
	font-size: 13px;
	line-height: 1.35em;
}

/* Reset */
.calendar tr,
.calendar tr.odd,
.calendar tr.even {
	background-color: transparent;
	border-width: 0;
	padding: 0;
	margin: 0;
}

table.calendar tbody {
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
	border-top: none;
}

/* --- Table Header (Weekday Names) --- */

.calendar th.days,
/* day view */
.calendar.dayview th {
	margin: 0;
	padding: 0 0 0.75em 0;
	border: 0;
	background: none;
	text-align: left;
	
	color: #4ea1dd;
	text-transform: uppercase;
	font-size: 16px;
}

/* --- Table Body --- */

.calendar td {
	width: 14%;
	vertical-align: top;
	margin: 0;
	padding: 0;
	
	border: 1px solid #dfdee0;
	color: #5c6b84;
}

.calendar .inner {
	overflow: hidden;
}

/* --- Colors --- */

.calendar td[headers="Saturday"],
.calendar td[headers="Sunday"] {
	background-color: #fbfcfc;
}

.calendar td.past {
	
}

.calendar td.today {
	background-color: #f4fafd;
	border: 2px solid #cae1f7;
}

.calendar td.future {
	
}

.calendar td.no-entry {
	
}

/* -- Some cells must have no borders --- */

.calendar td.date-box,
.calendar td.multi-day {
	border-bottom: 0;
}

.calendar td.multi-day,
.calendar td.single-day {
	border-top: 0;
}

/*
	 .-----------------------------------------------------.
	 |               CALENDAR TABLE CONTENTS               |
	 '-----------------------------------------------------'
*/

/* --- Row Heights --- */

.calendar tr.date-box,
.calendar tr.date-box td,
.calendar tr.multi-day,
.calendar tr.multi-day td {
	height: 2.45em;
}

.calendar .cal-event {
	height: 2.45em;
}

.calendar td.date-box .inner,
.calendar td.multi-day .inner {
	min-height: inherit;
}

.calendar tr.single-day,
.calendar tr.single-day .inner {
	/*min-height: 6.15em;
	line-height: 6.15em;*/
}

.calendar tr.single-day .no-entry,
.calendar tr.single-day .no-entry .inner,
.calendar tr.single-day .noentry-multi-day,
.calendar tr.single-day .noentry-multi-day .inner {
	min-height: 6.15em;
	line-height: 6.15em;
}

.calendar td.multi-day.no-entry {
	/*min-height: 0;*/
}

/* --- Day Number Box --- */

.calendar td.date-box .day {
	float: left;
	padding: 0.4em 0.35em 0.3em 0.35em;
	width: 1.5em;
	line-height: 1.5em;
	clear: both;
	font-size: 16px;
	text-align: center;
	color: #3f526c;
}

.calendar td.date-box .day a {
	color: #4f92bc;
	text-decoration: underline;
}

/* --- Invidual Event --- */

.calendar .cal-event {
	margin-top: 0.2em;
	overflow: hidden;
	clear: both;
	position: relative;
}

.calendar .cal-event .contents {
	padding: 0.4em 8px 0.55em 8px;
}

/* Stripe */
.calendar .stripe {
	width: 100%;
	height: 3px;
	overflow: hidden;
	display: none;
}

/* no multiple stripes per single event */
.calendar .stripe:first-child {
	display: block;
}

.calendar td.single-day,
.calendar td.single-day a,
.calendar td-multi-day,
.calendar td.multi-day a {
	color: #5A6C83;
}

/* --- Single Day Event --- */

.calendar td.single-day .cal-event {
	width: 140px;
	margin-left: -1px;
	margin-bottom: -1px;
	background: rgba(0, 0, 0, 0.04);
}

.calendar td.single-day .cutoff {
	display: none;
}

.calendar td.single-day .cal-event-name {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* --- Multi Day Event --- */

.calendar td.multi-day .contents {
	padding-right: 0;
	position: absolute;
	width: 3000px;
	left: 0;
	padding-right: 0;
	background: rgba(0, 0, 0, 0.04);
	white-space: nowrap;
}

.calendar td.multi-day .continuation {
	float: left;
	margin-right: 3px;
}

.calendar td.multi-day .continues,
.calendar td.multi-day .cutoff {
	position: absolute;
	right: 0px !important;
	right: -1px;
	width: 6px;
	text-align: left;
	background: #f5f5f5;
	height: 1.85em;
	padding-left: 6px;
	z-index: 1;
}

.calendar td.multi-day .continues {
	padding: 0.25em 6px 0.4em 6px;
	height: auto;
}

.calendar td.multi-day .cutoff {
	padding-left: 0px;
	width: 8px;
}

/* --- Today --- */

.calendar td.single-day.today .cal-event,
.calendar td.multi-day.starts-today .contents,
.calendar td.multi-day.starts-today .cutoff,
.calendar td.multi-day.starts-today .continues {
	background-color: #f4fafd;
}

.calendar td.multi-day.starts-today {
	border-left: 2px solid #cae1f7;
}

/* --- Days that are not part of displayed month --- */

.calendar td.empty .day {
	opacity: 0.3;
}

/*
	 .-----------------------------------------------------.
	 |                      DAY VIEW                       |
	 '-----------------------------------------------------'
*/

/* The Day View inherits styles from .news list first (available in content.css) */

.day-events .cutoff,
.day-events .continuation {
	display: none;
}

.day-events ul.items li {
	position: relative;
}

.day-events ul.items .cal-event .news-meta {
	/*margin-left: 20px;*/
}

.day-events ul.items .stripe {
	/*position: absolute;
	top: 5px;
	left: 0;
	width: 11px;
	height: 11px;
	overflow: hidden;
	box-shadow: 0 0 1px rgba(0, 0, 0, 0.6) inset;*/
	display: none;
}