
.badge {
	width: 2.5em;
}

.calendar-event-tooltip {
	height: auto;
}

.calendar-event-tooltip-text {
	font-size: .7em;
}

.calendar-event-tooltip-text-small {
	font-size: .5em;
}


.reservation-tooltip-badge {
	margin-top: -1.5em;
}


.reservation-calendar-badge {
	font-size: 8px;
	margin-top: -0.25em;
}




.calendar-container {
	float: left;
	paddding: 0;
	}


div.calendar-main {
	float:left;
	width:100%;
	height:auto;
	font-size:21px;
	line-height:100px;
	}

.calendar-hours {
	font-size: .5em;
	line-height: 2.5em;
	padding-top: .3em;
	float: left;
	}

.calendar-hours-special {
	font-weight: bold;
	}
.calendar-hours-date {
	float: right;
	}

div.calendar-small {
	font-size:12px;
	line-height:25px;
	width: 100%;
	min-height: 32em;
	}
	
	div.calendar {
		float:left;
		width:100%;
		height:auto;
		background-color: white;
		text-align:center;
		/*border: 1px solid #c5c5c7;*/
		background-color: #c5c5c7;
		}
		
		.calendar-head {
			float:left;
			width:100%;
			height:auto;
			padding: 2%;
			background-color: #d5ebf6;
			/*border: 1px solid #c5c5c7;*/
			}
			.calendar-prev-date {
				float:left;
				width:20%;
				}
			.calendar-current-date {
				float:left;
				width:60%;
				}
			.calendar-next-date {
				float:left;
				width:20%;
				}

		.calendar-days-names {
			float:left;
			width:100%;
			height:auto;
			}
			.calendar-day-name {
				float:left;
				padding: 2%;
				padding-left: 0;
				padding-right: 0;
				width: calc(100% / 7);
				font-weight: bold;
				color: #2E3192;
				background-color: white;
				box-sizing: border-box;
				}

		.calendar-body {
			float:left;
			width:100%;
			}
			.calendar-body-day {
				width: calc(100% / 7);
				min-height: 5em;
				/*height: auto;*/
				margin-right:0px;
				float: left;
				position: relative;	
				border-left: 1px solid #c5c5c7;
				box-sizing: border-box;
				border-bottom: none;
				}


				.calendar-body-day-color {
					position: absolute;
					width: 100%;
					height: 100%;
					top: 0;
					left: 0;
					background-color: white;
					}

				.calendar-body-day-head {
					width: calc(100% / 7);
					float: left;
					font-size: 1.5em;
					position: relative;
					border-left: 1px solid #c5c5c7;
					box-sizing: border-box;
					background-color: #edebeb;
					}
					.calendar-day-head-color {
						background-color: #f7f4f4;
					}
					.calendar-body-day-head > a{
						padding: 5%;
						padding-bottom:2%;
						color: #a4a4b9;
						position: relative;
						float: right;
						}
					 
				.calendar-body-day-body {
					position: relative;
					float: left;
					width: 100%;
					height: 100%;
					} 
				
				.calendar-body-day-today {
					font-weight: bold;	
					}
				.calendar-body-day-current {
					}
				.calendar-body-day-past {
					}
				.calendar-body-day-event {
					background-color: white;
					}
				.calendar-body-day-event > a {
					color: white;
					float: left;
					width: 100%;
					}
					
					

				.calendar-body-day-event {
					float: left;
					width: 100%;
					}
					
					
				.calendar-body-day-body-event-event {
					width: auto;
					float: left;
					display: block;
					text-align: left;
					height: auto;
					}	

				.calendar-body-day-body-event-special-hours {
					width: 100%;
					float: left;
					display: block;
					text-align: left;
					height: auto;
					line-height: 2.5em;
					font-size: .8em;
					}	


				.calendar-body-day-pad {
					margin-bottom: 4.15em;
					}


.calendar-large {
	float: left;
	width: 100%;
	height: auto;
	}


	.calendar-body-day-main {
		float: left;
		width: 100%;
		min-height: 5em;
		height: 100%;
		border: 1px solid #c5c5c7;
		box-sizing: border-box;
	}

	.calendar-large  .calendar-body-day {
		text-align: right;
		display: -webkit-box;   /* OLD - iOS 6-, Safari 3.1-6, BB7 */
		display: -ms-flexbox;  /* TWEENER - IE 10 */
		display: -webkit-flex; /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
		display: flex; 
		flex-direction: column;
		border-top: 0.5px solid #c5c5c7;
		border-bottom: 0.5px solid #c5c5c7;
		}
	.calendar-large .calendar-head {
		color: white;
		background-color: #2E3192;
		}	
		
		
	.calendar-event-block {
		flex: 1;
		position: relative;
		background-size: 0 0;
	}		

	.calendar-event-block-nogrow {
		position: relative;
		background-size: 0 0;
	}		

	.calendar-large .calendar-prev-date {
		float:left;
		width:20%;
		color: white;
		font-weight: bold;
		font-size: 1.5em;
		margin-top: .2em;
		}
	.calendar-large .calendar-current-date {
		float:left;
		width:60%;
		color: white;
		font-weight: bold;
		}
	.calendar-large .calendar-next-date {
		float:left;
		width:20%;
		color: white;
		font-weight: bold;
		font-size: 1.5em;
		margin-top: .2em;
		}

	.calendar-large .calendar-days-names {
		background-color: #A9D0F5;
		}
	.calendar-large .calendar-day-name {
		border-left: 1px solid #c5c5c7;
		border-bottom: 1px solid #c5c5c7;
		}
	.calendar-large .calendar-day > a {
					color: #2E3192;
					font-weight: bold;
					}
	.calendar-large .calendar-day-event > a {
					color: #2E3192;
					}



.calendar-large .no-left-border {
		border-left: none;
		}

.calendar-large .no-right-border {
		border-right: none;
		}

.calendar-large .calendar-day-name-no-border-right {
		border-right: none;
		}

.calendar-large .calendar-day-name-no-border-left {
		border-left: none;
		}

.calendar-small .calendar-day-name-no-border-right {
		border-right: none;
		}

.calendar-small .calendar-day-name-no-border-left {
		border-left: none;
		}

.calendar-small .calendar-day-name {
		border: 0.5px solid #c5c5c7;
		}

.calendar-small .calendar-body-day-head {
	padding: .5em;
	padding-left: 0;
	padding-right: 0;
	text-indent: -2em;
	min-height: 0;
	position: relative;
	border: 0.5px solid #c5c5c7;
	border-top: none;
	}					

.calendar-small .calendar-body-day-body {
	}					


.calendar-event-text {
	font-size: .8em;
	line-height: 1.2em;
	margin: 0;
	height: auto;
	flex: 1;
	float: left;
}

.calendar-event-text-auto {
	font-size: .8em;
	line-height: 1.2em;
	padding: 0.8em 0.5em;
	margin: 0;
	height: auto;
}




.calendar-event-class {
	background-color: #8dc63f;
	}
	.shadow-color-class {
		background: -moz-linear-gradient(top, rgba(46,49,146,0.84) 16%, rgba(46,49,146,0.73) 27%, rgba(255,255,255,0) 100%);
		background: -webkit-linear-gradient(top, rgba(46,49,146,0.84) 16%,rgba(46,49,146,0.73) 27%,rgba(255,255,255,0) 100%);
		background: linear-gradient(to bottom, rgba(46,49,146,0.84) 16%,rgba(46,49,146,0.73) 27%,rgba(255,255,255,0) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d62e3192', endColorstr='#00ffffff',GradientType=0 );
	}

.calendar-event-events {
	background-color: #A9F5F2;
	}
	.shadow-color-events {
		background: -moz-linear-gradient(top, rgba(46,49,146,0.84) 16%, rgba(46,49,146,0.73) 27%, rgba(255,255,255,0) 100%);
		background: -webkit-linear-gradient(top, rgba(46,49,146,0.84) 16%,rgba(46,49,146,0.73) 27%,rgba(255,255,255,0) 100%);
		background: linear-gradient(to bottom, rgba(46,49,146,0.84) 16%,rgba(46,49,146,0.73) 27%,rgba(255,255,255,0) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d62e3192', endColorstr='#00ffffff',GradientType=0 );
	}

.calendar-event-special-event {
	background-color: #2568af;
	}
	.shadow-color-special-event {
		background: -moz-linear-gradient(top, rgba(46,49,146,0.84) 16%, rgba(46,49,146,0.73) 27%, rgba(255,255,255,0) 100%);
		background: -webkit-linear-gradient(top, rgba(46,49,146,0.84) 16%,rgba(46,49,146,0.73) 27%,rgba(255,255,255,0) 100%);
		background: linear-gradient(to bottom, rgba(46,49,146,0.84) 16%,rgba(46,49,146,0.73) 27%,rgba(255,255,255,0) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d62e3192', endColorstr='#00ffffff',GradientType=0 );
	}


.calendar-event-art-camp {
	background-color: #c56bae;
	}
	.shadow-color-art-camp {
		background: -moz-linear-gradient(top, rgba(46,49,146,0.84) 16%, rgba(46,49,146,0.73) 27%, rgba(255,255,255,0) 100%);
		background: -webkit-linear-gradient(top, rgba(46,49,146,0.84) 16%,rgba(46,49,146,0.73) 27%,rgba(255,255,255,0) 100%);
		background: linear-gradient(to bottom, rgba(46,49,146,0.84) 16%,rgba(46,49,146,0.73) 27%,rgba(255,255,255,0) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d62e3192', endColorstr='#00ffffff',GradientType=0 );
	}


.calendar-event-employee {
	background-color: #6f685b;
	}


.calendar-event-reservation-blackout {
	background-color: #6f685b;
	}



.calendar-event-special-hours {
	background-color: #2e3192;
	}


.calendar-event-studio-time {
	background-color: #d8d8ff;
	}	
	.calendar-event-studio-time > p {
			color: #484545;
		}


.calendar-event-party {
	background-color: #F3E2A9;
	}	
	.calendar-event-party > p {
			color: #484545;
		}

.calendar-event-work-shift {
	background-color: #CEE3F6;
	}

.calendar-event-holiday {
	background-color: #e6e0e0;
	color: black;
	}
	.shadow-color-holiday {
		background: -moz-linear-gradient(top, rgba(46,49,146,0.84) 16%, rgba(46,49,146,0.73) 27%, rgba(255,255,255,0) 100%);
		background: -webkit-linear-gradient(top, rgba(46,49,146,0.84) 16%,rgba(46,49,146,0.73) 27%,rgba(255,255,255,0) 100%);
		background: linear-gradient(to bottom, rgba(46,49,146,0.84) 16%,rgba(46,49,146,0.73) 27%,rgba(255,255,255,0) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d62e3192', endColorstr='#00ffffff',GradientType=0 );
	}

.calendar-event-border {
	border: 0.5px solid #c5c5c7;
	border-bottom: 1px solid #c5c5c7;
}

.calendar-event-normal {
	background-color: white;
	}


.calendar-body-day-inactive {
	background-color: #E6E6E6;
	}




			
			
			
			
.calendar-week {
	width:100%;	
	}
	.calendar-week-head {
		height: auto;
		}
		.calendar-week-head-date {
			background-color: white;
			padding-top: 1em;
			padding-bottom: 1em;
			color: #2E3192;
			width: 12.5%;
			height: 4em;
			font-size: 0.8em;
			line-height: 1em;
			text-align: center;
			border: none;		
			border-left: 1px solid #c5c5c7;
			border-bottom: 1px solid #c5c5c7;
			float: left;
			width: 12.5%;
			}
		.calendar-week-body-time {
			background-color: white;
			padding: 1em;
			color: black;
			font-size: 0.8em;
			line-height: 1em;
			width: 12.5%;
			text-align: center;
			border: none;		
			}
		.calendar-week-body-date {
			border-left: 1px solid #c5c5c7;
			width: 12.5%;
			display: -webkit-box;   /* OLD - iOS 6-, Safari 3.1-6, BB7 */
			display: -ms-flexbox;  /* TWEENER - IE 10 */
			display: -webkit-flex; /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
			display: flex; 
			flex-direction: column;
			}
			.calendar-week-body-date-normal {
				background-color: white;
				}
			.calendar-week-body-date-inactive {
				background-color: #E6E6E6;
				}
			.calendar-week-body-date-event {
				float: left;
				width: 100%;
				min-height:3.5em;
				height: auto;
				border-top: 1px solid #A9D0F5;
				}
				
				.calendar-event-wrap {
					float: left;
					width: 100%;
					}
				
				.calendar-week-body-date-event-border {
					border-top: 1px solid #A9D0F5;
					}
				.calendar-week-body-date-event-calendar-event-title {
					float:left;
					text-align: left;
					font-size: 0.8em;
					line-height:1.2em;
					padding: 0.5em;
					min-height: 3em;
					}
				.calendar-week-events-badge {
					margin:.2em;
					}
				.calendar-week-body-date-event-calendar-event-details {
					clear:both;
					float:left;
					text-align: left;
					height:1.7em;
					margin-left:.5em;
					width: 100%;
					}


.calendar-week-event-event {
	float: left;
	width: 100%;
	background-size: 0 0;
	flex: 1;
}
			

.calendar-week-body-row {
	float: left;
	width: 100%;
	height: auto;
	display: -webkit-box;   /* OLD - iOS 6-, Safari 3.1-6, BB7 */
	display: -ms-flexbox;  /* TWEENER - IE 10 */
	display: -webkit-flex; /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
	display: flex; 
	border-bottom: 1px solid #c5c5c7;
}
			
			
.calendar-day {
	width:100%;	
	}
	.calendar-day-row {
		border-bottom: 1px solid #c5c5c7;
		}
		.calendar-day-row-row {
			}
		.calendar-day-row-head {
			background-color: white;
			color: black;
			width: 10%;
			font-size: 0.8em;
			line-height: 1em;
			text-align: center;
			}
		.calendar-day-row-body {
			width: 100%;
			line-height: 2.5em;
			min-height: 3em;
			height: auto;
			border-left: 1px solid #c5c5c7;
			display: block;
			float: left;
			}
			.calendar-day-row-body-inactive {
				background-color: #E6E6E6;
				}
			.calendar-day-row-body-event {
				float: left;
				width: 100%;
				}
				.calendar-day-row-body-event-border {
					border-top: 1px solid #A9D0F5;
					}


			.calendar-day-row-body-event-calendar-event-pic {
				float: left;
				width: 2.5em;
				max-height: 2.5em;
				}
			.calendar-day-row-body-event-calendar-event-title {
				float: left;
				text-align: left;
				padding: 0.5em;
				line-height: 1.25em;
				margin: 0;
				min-height: 3em;
				}
			.calendar-day-row-body-event-calendar-event-time {
				clear: both;
				float:left;
				margin-left:1em;
				font-size:.8em;
				}
			.calendar-day-row-body-event-calendar-event-details {
				clear:both;
				float:left;
				text-align: left;
				margin-left:1em;
				font-size:.8em;
				width: 100%;
				line-height: 1.5em;
				height: 2em;
				}
							
			
			
			
			
			
.calendar-event {
	float:left;
	width:100%;
	margin-top:10px;
	color: blue;
	background-color: white;
	line-height:normal;
	padding: 10px;
	}
	
	.calendar-event-date {
		float:left;
		width: 5em;
		height: auto;
		text-align: center;
		background-color: white;
		overflow: hidden;
		-webkit-box-shadow: 0px 0px 5px 0px rgba(50, 50, 50, 0.25);
		-moz-box-shadow:    0px 0px 5px 0px rgba(50, 50, 50, 0.25);
		box-shadow:         0px 0px 5px 0px rgba(50, 50, 50, 0.25);
		}

		.calendar-event-date-small {
			float: none;
			}

		.calendar-event-date-head {
			float: left;
			height: 2.25em;
			width: 100%;
			}	
			.calendar-event-date-head h4 {
				float: left;
				margin: 5px 0 0 0;
				width: 100%;
				font-size: 1.2em;
				color: white;
				}	
		.calendar-event-date-body {
			float: left;
			color: #a4a4b9;
			width: 100%;
			height: 3em;
			}
			.calendar-event-date-body h3 {
				float: left;
				padding: 5px;
				width: 100%;
				font-size: 1.5em;
				}													
		.calendar-event-date-content {
			float: left;
			margin-left: 1.25em;
			width: calc(100% - 7.5em);
			}					
			.calendar-event-date-content-small {
				margin: 0;
				width: 100%;
				}

			.calendar-event-date-content-head {
				float: left;
				width: 100%;
				overflow: hidden;
				height: 1em;
				margin-top: .5em;
				font-size: 1em;
				}			
			.calendar-event-date-content-head-small {
				height: 2.5em;
				}

			.calendar-event-date-content-body {
				float: left;
				border-top: 1px solid blue;
				padding-top: 5px;
				width: 100%;
				margin: 0;
				}
			.calendar-event-date-content-body-small {
				padding-top: 1em;
				}
				.calendar-event-date-content-body-body {
					float: left;
					color: white;
					width: 100%;
					}			

.calendar-event-reservations-badge {
	position: absolute;
	top: -3.8em;
	left: .5em;
	width: auto !important;
	}

	
#calendar-filter-dialog {
	padding-right: 1em;
	padding-bottom: 4em;
	height: 23em;
	float: left;
	}	
	.event-calendar-event-filter-group {
		width: 16em;
		height: 2em;
		float: left;
		margin-bottom: .5em;
		clear: both;
		}	
		.event-calendar-event-filter-label {
			width: 8em;
			margin-right: .5em;
			}	
			



.calendar-day-row-body > .calendar-event-block, 
.calendar-day-row-body > .calendar-event-block-nogrow {
	background-size: 0 0;
	background-image: none !important;
	text-align: left;
	min-height: 3em;
}

.calendar-day-row-body > .calendar-event-block > p, 
.calendar-day-row-body > .calendar-event-block-nogrow > p {
	text-align: left;
}


.calendar-week-body-date > .calendar-event-block, 
.calendar-week-body-date > .calendar-event-block-nogrow {
	flex: 1;
}


.calendar-day-row-body > .calendar-event-block > .calendar-shadow, .calendar-day-row-body > .calendar-event-block-nogrow > .calendar-shadow {
	display: none;
}

.event-details {
	font-size: 0.8em; 
}

.event-row-details {
	display: none;
}

.calendar-event-image {
	display: none;
}

.calendar-day-row-body > .calendar-event-block > .calendar-event-image {
	height: 2.5em;
	margin-right: 1em;
	display: block;
	float: left;
}

.calendar-day-row-body > .calendar-event-block > .calendar-event-text {
	float: left;
	text-align: left;
}
			
.calendar-day-row-body > .calendar-event-block > .calendar-event-text > .event-row-details {
	display: inline;
}


.table-bordered {
	border-bottom: none;
	border-left: none;
	border-right: none;
	}	
.table-bordered>tbody>tr.no-border, .table-bordered>tbody>tr>td.no-border {
	border: none;
	}
	


.calendar-shadow {
	float: left;
	position: relative;
	width: 100%;
	height : 4em;
	opacity: 0.8;
	background: -moz-linear-gradient(top, rgba(46,49,146,0.84) 16%, rgba(46,49,146,0.73) 27%, rgba(255,255,255,0) 100%);
	background: -webkit-linear-gradient(top, rgba(46,49,146,0.84) 16%,rgba(46,49,146,0.73) 27%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to bottom, rgba(46,49,146,0.84) 16%,rgba(46,49,146,0.73) 27%,rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d62e3192', endColorstr='#00ffffff',GradientType=0 );
	}




	
	
.calendar-head-row {
	width: 100%;
	height: auto;
	float: left;
	}	

.calendar-body-row {
	width: 100%;
	height: auto;
	float: left;
	display: -webkit-box;   /* OLD - iOS 6-, Safari 3.1-6, BB7 */
	display: -ms-flexbox;  /* TWEENER - IE 10 */
	display: -webkit-flex; /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
	display: flex; 
	}	
.calendar-hours-date {
	font-size: .6em;
	}	
	
.calendar-body-day-body-event-event-text {
	float: left;
	width: 100%;
	display: block;
	height: 1.5em;
	overflow: hidden;
	padding: .5em;
	padding-top: .2em;
	}	



.calendar-body-day-events-wrap {
	float: left;
	width: 100%;
	height: calc(100% - 3em);
}
	
.calendar-body-day-body-event-event-pic {
	width: 100%;
	position: relative;
    border-bottom: 1px solid #c5c5c7;	
	}
	.calendar-body-day-body-event-event-pic-stretch {
		}	
.calendar-body-day-body-event-event-pic-text {
	float: left;
	text-align: left;
	width: 100%;
	display: block;
	height: 4em;
	line-height: 1.1em;
	font-size: 1em;
	padding: .5em;
	padding-bottom: .7em;
	background: url(../images/blue.png);
	color: white;
	}	
.calendar-body-day-body-event-special-hours-text {
	float: left;
	width: 100%;
	display: block;
	height: auto;
	padding: .5em 0 .3em .5em;
	font-size: 1.1em;
	background: url(../images/blue.png);
	color: white;
	margin: 0;
	border-bottom: 1px solid gray;
	}	





.calendar-small-upcoming-inner {
	min-height: 10em;
}







@media (min-width: 668px) {
	.calendar-hours-date {
		font-size: .8em;
		}	
	
}
@media (min-width: 992px) {
.calendar-hours-date {
	font-size: 1em;
	}	
	
}

@media (min-width: 1200px) {
			
}
			
	
	
	
	