
/**
 * The Events Calendar Pro Skeleton Stylesheet
 * (Only includes enough css to achieve complex layouts like calendar and week view.)
 *
 * To add your own custom styles, create a stylesheet with the name
 * tribe-events-pro.css in the tribe-events/pro/ directory of your theme.
 * Your new stylesheet will be loaded after our own stylesheet.
 *
 * To replace our stylesheet altogether, you can use the 'tribe_events_pro_stylesheet_url' filter.
 *
 * @package TribeEventsCalendar
 *
 */


/* Events Loop */
.tribe-events-loop {
	.tribe-events-loop .type-tribe_events {
		margin: 0;
	}

	h2.tribe-events-page-title {
		padding-left: 0;
	}

	.published {
		margin-top: 0;
	}

	.entry-title {
		color: #333;
		text-decoration: none;
		font-size: 18px;
		margin: 15px 0 6px;
		padding: 0;
		line-height: 1em;
		font-weight: bold;
	}
}

/* = Week Grid Template Styles
   @ Template: Week.php
=============================================*/
/* grid structure */
.tribe-events-grid {
	width: 100%;
	position: relative;
	margin: 0 auto .6em;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;

	* {
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
	}
}

/* grid header */
.tribe-grid-header {
	.column {
		text-align: center;
		text-transform: uppercase;
		padding: 1em 0;
		letter-spacing: 1px;
	}

	.column a {
		color: #333;
		font-weight: bold;
	}
}

/* columns & structure */
.tribe-week-grid-wrapper {
	height: 500px;
	overflow-y: scroll;
	position: relative;
}

.tribe-grid-body {
	overflow: visible;
	position: relative;
}

.tribe-week-grid-hours {
	position: relative;
	z-index: 20;
}

.tribe-events-grid .column.first,
.tribe-week-grid-hours {
	float: left;
	width: 40px;
	margin-right: -40px;
	border-left: 0;
}

.tribe-grid-allday .column.first,
.tribe-week-grid-hours div {
	height: 60px;
	position: relative;
	font-weight: bold;
	font-size: 10px;
	line-height: 1.25;
	text-align: center;
}

.tribe-events-grid {
	.tribe-scroller {
		position: relative;
		width: 100%;
		height: 500px;
		overflow: hidden;

		& > .scroller-content {
			position: absolute;
			overflow: scroll;
			overflow-x: hidden;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;

			&:focus {
				outline: thin dotted;
			}

			&::-webkit-scrollbar {
				display: none;
			}
		}

		& > .scroller-pane {
			background: rgba(0,0,0,.25);
			position: absolute;
			width: 10px;
			right: 0;
			top: 0;
			bottom: 0;
			visibility: hidden\9; /* Target only IE7 and IE8 with this hack */
			opacity: .01;
			-webkit-transition: .2s;
			-moz-transition: .2s;
			-o-transition: .2s;
			transition: .2s;
			-moz-border-radius: 5px;
			-webkit-border-radius: 5px;
			border-radius: 5px;
			z-index: 1000;

			&  > .scroller-slider {
				background: #444;
				background: rgba(0,0,0,.5);
				position: relative;
				margin: 0 1px;
				-moz-border-radius: 3px;
				-webkit-border-radius: 3px;
				border-radius: 3px;
			}
		}

		&:hover > .scroller-pane {
			visibility: visible\9; /* Target only IE7 and IE8 with this hack */
			opacity: 0.99;
		}
	}

	.scroller-pane.active {
		visibility: visible\9; /* Target only IE7 and IE8 with this hack */
		opacity: 0.99;
	}

	.has-scrollbar > .scroller-content::-webkit-scrollbar {
		display: block;
	}
}

.scroller-pane.flashed {
	visibility: visible\9; /* Target only IE7 and IE8 with this hack */
	opacity: 0.99;
}

.tribe-grid-content-wrap {
	width: 100%;
	float: left;
	padding-left: 40px;
}

.tribe-events-grid .tribe-grid-content-wrap .column {
	display: inline-block;
	zoom: 1;
	float: left;
	vertical-align: top;
	width: 14.2857%;
	text-align: center;
	border-left: 1px solid #bbb;
}

.tribe-grid-body .tribe-grid-content-wrap .column {
	position: relative;
}

/* Global Week Event Styles */
.tribe-events-grid {
	div[id*='tribe-events-event-'] {
		visibility: hidden;
	}

	.type-tribe_events h3.entry-title {
		padding: 4px 6px;
		margin: 0;
		text-transform: none;
		letter-spacing: 0;
		text-align: left;
		overflow: hidden;
		height: 100%;
	}

	.type-tribe_events a {
		display: block;
		font-size: 12px;
		height: 100%;
		outline: none;
		padding: 0;
		width: 100%;
	}
}

.tribe-grid-allday .type-tribe_events > div,
.tribe-grid-body .type-tribe_events .tribe-events-week-hourly-single {
	width: 100%;
	border-radius: 3px;
	cursor: pointer;
}

/* All day */
.tribe-grid-allday {
	position: relative;

	.column {
		min-height: 60px;
	}

	.column.first {
		top: 0;
	}

	.column.first span {
		position: absolute;
		top: 50%;
		margin-top: -12px;
		width: 30px;
		left: 50%;
		margin-left: -15px;
	}

	.type-tribe_events {
		margin: 0;
		position: relative;
		padding: 4px;
	}

	.type-tribe_events ~ .type-tribe_events,
	.tribe-event-placeholder ~ .type-tribe_events {
		padding: 0 4px 4px;
	}

	.type-tribe_events h3.entry-title {
		padding: 0;

		/* Truncated all day titles */
		a.url {
			padding: 8px 6px;
			display: inline-block;
			zoom: 1;
			overflow: hidden;
			text-overflow: ellipsis;
			white-space: nowrap;
			position: relative;
			z-index: 1;
		}
	}

	.type-tribe_events.tribe-dayspan2 > div {
		width: 200%;
	}

	.type-tribe_events.tribe-dayspan3 > div {
		width: 300%;
	}

	.type-tribe_events.tribe-dayspan4 > div {
		width: 400%;
	}

	.type-tribe_events.tribe-dayspan5 > div {
		width: 500%;
	}

	.type-tribe_events.tribe-dayspan6 > div {
		width: 600%;
	}

	.type-tribe_events.tribe-dayspan7 > div {
		width: 700%;
	}
}


/* Actual Event Styles */
.tribe-grid-body {
	.type-tribe_events {
	 	width: 100%;
	 	height: 100%;
		padding: 4px;
	}

	div[id*="tribe-events-event-"] {
	 	font-weight: bold;
		line-height: 1.25;
	 	position: absolute;
	 	z-index: 3;
	 	width: 100%;
	 	padding: 4px;
	}

	div[id*="tribe-events-event-"]:hover {
	 	z-index: 4;
	}

	.tribe-events-tooltip {
		.tribe-events-event-body {
			position: relative;
		}

		.tribe-events-arrow {
			width: 11px;
			height: 18px;
			background-position: -33px 0;
			bottom: auto;
			left: -11px;
			top: 6px;
		}
	}

	.tribe-events-right .tribe-events-tooltip .tribe-events-arrow {
		left: auto;
		right: -11px;
		background-position: -20px 0;
	}
}

/* Tooltip */
.tribe-events-grid div[id*="tribe-events-tooltip-"] {
	text-align: left;
}

/* Specific Classes */

/* Week view grid background */
.tribe-week-grid-outer-wrap {
	position: relative;
	z-index: 10;
}

.tribe-week-grid-inner-wrap {
	position: absolute;
	width: 100%;
}

.tribe-week-grid-block {
	height: 60px;
	padding: 0;
	margin: 0;

	div {
		height: 30px;
		margin-bottom: 30px;
		border-bottom: 1px dotted #ddd;
		border-top: 1px solid #ddd;
	}
}

/* = Photo View Template Styles
   @ Template: Photo.php
=============================================*/

/* CSS3 Transitions */
#tribe-events-content.tribe-events-list {
	padding: 1px 0 !important;
}

.isotope,
.isotope .isotope-item {
	-webkit-transition-duration: 0.2s;
       -moz-transition-duration: 0.2s;
        -ms-transition-duration: 0.2s;
         -o-transition-duration: 0.2s;
          	transition-duration: 0.2s;
}

.photo-loader {
	position: absolute;
	top: 200px;
	left: 50%;
}

/* Tile Styling */
.tribe-events-photo-event {
	padding: 0;
	position: relative;

	.tribe-events-event-image {
		float: none;
		margin: 0;
		width: 100%;
	}

	.tribe-events-event-cost {
		display: none;
	}

	.date-divider {
		padding: 0 5px;
	}
}

#tribe-events-photo-events {
	opacity: 1;
	margin: 18px -4.5% 18px 0;
	-webkit-transition-property: height, width;
       -moz-transition-property: height, width;
        -ms-transition-property: height, width;
         -o-transition-property: height, width;
          	transition-property: height, width;

	.isotope-item {
	  	-webkit-transition-property: -webkit-transform, opacity;
	       -moz-transition-property:    -moz-transform, opacity;
	        -ms-transition-property:     -ms-transform, opacity;
	         -o-transition-property:         top, left, opacity;
	          	transition-property:         transform, opacity;
	}

	.tribe-events-photo-grid-sizer {
		width: 32%;
	}

	.tribe-events-photo-gutter-sizer {
		width: 2%;
	}

	.type-tribe_events.tribe-events-photo-event {
		float: left;
		width: 29.2%;
		margin: 0 4% 30px 0;
		padding: 0;
		border: 0;
	}

	&.photo-two-col .type-tribe_events.tribe-events-photo-event {
		width: 46%;
	}

	&.photo-hidden {
		opacity: 0 !important;
	}

	.tribe-events-photo-event {
		border-bottom: 0;
		box-sizing: border-box;
		margin-bottom: 20px;
		padding: 0;
		width: 32%;

		&:before,
		&:after {
			content: '';
			display: table;
		}

		&:after {
			clear: both;
		}
	}
}

.tribe-events-list .tribe-events-photo-event {
	.tribe-events-event-details {
		float: none;
		width: 100%;
		padding: 0;
		word-wrap: break-word;
	}

	.tribe-events-event-image + .tribe-events-event-details {
		padding: 8% 0 0;
	}
}

.tribe-events-loop .tribe-events-photo-event .entry-content {
	float: none;
	margin-top: 10px;
}

.tribe-events-photo .tribe-events-loop .type-tribe_events .tribe-events-event-meta {
	margin: 0;
	padding-right: 0;
}

.tribe-events-list {
	#tribe-events-photo-events .tribe-events-event-details h2 {
		padding-right: 0;
	}

	.tribe-events-loop .tribe-events-event-meta .event-is-recurring img {
		display: inline;
	}
}

.tribe-events-photo-event .entry-title a {
	-webkit-transition: .2s ease-in;
  	   -moz-transition: .2s ease-in;
  	     -o-transition: .2s ease-in;
  			transition: .2s ease-in;
}

/* = Map View Template Styles
   @ Template: Map.php
=============================================*/
/* tribe geolocation map area */
#tribe-geo-map-wrapper {
	position: relative;
	z-index: 2;
	margin-bottom: 20px;
}

#tribe-geo-map {
	width: 100%;
	height: 400px;
	position: relative;
	z-index: 3;

	label {
		width: auto;
		display: inline;
	}

	img {
		max-width: none;
	}
}

/* tribe geo location option links (displayed when multiple locations found) */
#tribe-geo-results h2,
#tribe-geo-options h2 {
	color: #222;
	font-size: 18px;
	font-weight: bold;
	line-height: 1em;
	margin: 0 0 6px;
	padding: 0;
}

#tribe-geo-results h2 a,
#tribe-geo-options h2 a {
	color: #222;
}

#tribe-geo-links {
	margin-top: 20px;
	border-top: 1px solid #eee;
	border-right: 1px solid #eee;
	border-left: 1px solid #eee;
}

#tribe-geo-options {
	display: none;
	margin-bottom: 20px;
}

.tribe-geo-option-link {
	display: block;
	text-decoration: none;
	color: #444;
	border-bottom: 1px solid #eee;
	padding: 3px 6px;
	-webkit-transition: 0.1s ease-in-out;
	   -moz-transition: 0.1s ease-in-out;
	     -o-transition: 0.1s ease-in-out;
			transition: 0.1s ease-in-out;
}

.tribe-geo-option-link {
	&:hover {
		background: #f5f5f5;
	}

	&:hover,
	&:focus {
		text-decoration: none;
	}
}

.tribe-option-loaded,
.tribe-geo-option-link.tribe-option-loaded:hover {
	background: #666;
	color: #fff;
}

/* tribe geo location results list formatting */
#tribe-geo-results .tribe-events-notices {
	text-align: center;
	margin: 2.25em 0 0 0;
}

.tribe-geo-result-entry {
	position: relative;
	overflow: auto;
	border-bottom: 1px solid #ddd;
	padding: 2.25em 0;
}

.tribe-geo-result-last {
	border-bottom: none;
	padding-bottom: none;
}

.tribe-geo-result-thumb {
	float: left;
	width: 30%;
	margin-right: 2%;
}

.tribe-geo-result-thumb a {
	display: block;
	border: 1px solid #ddd;
	padding: 2px;
	-webkit-transition: 0.1s ease-in-out;
	   -moz-transition: 0.1s ease-in-out;
	     -o-transition: 0.1s ease-in-out;
			transition: 0.1s ease-in-out;
}

.tribe-geo-result-thumb a img {
	max-width: 100%;
	width: 100%;
	display: block;
}

.tribe-geo-result-data {
	float: right;
	width: 68%;
}

.tribe-geo-result-date {
	display: block;
	font-size: 16px;
	font-style: italic;
	margin: 10px 0 0 0;
	text-transform: none;
}

.tribe-geo-result-venue {
	display: block;
	margin: 10px 0 0 0;
	font-size: 16px;
}

.tribe-geo-result-excerpt {
	margin: 10px 0 0 0;
}

.tribe-geo-result-entry {
	.tribe-geo-result-excerpt p {
		font-size: 14px;
	}

	h2 {
		float: left;
		width: 80%;
	}
}

.tribe-geo-result-cost {
	width: 18%;
	float: right;

	span {
		display: block;
		font-weight: bold;
		padding: 8px 10px;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
		text-align: center;
	}
}

.timer {
	text-align: center;
	width: 100%;
	color: red;
	margin: 20px 0;
}

/* = View Loading / Pagination Styles
   @ Template: Map.php & Photo.php
=============================================*/
#tribe-geo-loading/*,
#tribe-photo-loading*/ {
	display: none;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: #fff;
	background: rgba(255, 255, 255, 0.2);
	z-index: 4;
	webkit-transition: all 1s linear;
	-moz-transition: all 1s linear;
	-o-transition: all 1s linear;
	-ms-transition: all 1s linear;
	transition: all 1s linear;
}

#tribe-geo-loading img {
	position: absolute;
	left: 50%;
	top: 50%;
	margin: -16px 0 0 -16px;
}

/* = Single Organizer Template Styles (Pro Version)
   @ Template: Single_Organizer.php
=============================================*/
#tribe-events-content.tribe-events-organizer {
	padding: 0;
}

.single-tribe_organizer  .tribe_organizer h2.entry-title {
	margin: 0 0 .5em 0;
	padding: 0;
}

/* = Related Events
   @ Template: Single_Event.php
=============================================*/
ul.related-events {
	display: block;
	margin: 0;

	li {
		display: block;
		min-width: 160px;
		vertical-align: text-bottom;
		position: relative;
		float: left;
		list-style-type: none;
	}
}

.related-event-date {
	font-size: .75em;
	text-transform: uppercase;
}

h3.tribe-events-related-events-title {
	margin-bottom: 4%;
}

.tribe-events-single ul.tribe-related-events {
	margin: 0 -4% 8% 0;
	border: none;

	li {
		float: left;
		width: 29.333333%;
		margin: 0 4% 2% 0;
		padding: 0;
		border: none;
		list-style: none;

		.date-divider {
			padding: 0 5px;
		}
	}

	.tribe-related-events-thumbnail {
		margin-bottom: 4%;

		img {
			width: 100%;
			max-width: 100%;
			height: auto;
		}
	}

	.tribe-related-events-title {
		margin-bottom: 4%;
	}
}

/* = Events Calendar Widget Styles (Sidebar)
   @ Template: widgets/calendar-widget.php
=============================================*/
.tribe-events-calendar-widget {
	#tribe-events-calendar-wrap {
		width: 100%;
	}

	.tribe-events-calendar {
		.tribe-events-tooltip {
			width: 100px;
			left: 0;
			text-align: left;
			padding: 5px 10px;
			margin-bottom: 1.625em;
		}
	}

	table.tribe-events-calendar {
		width: 100%;
		table-layout: fixed;
		margin-top: 0;
		border-collapse: collapse;
	}

	table.tribe-events-calendar,
	.tribe-events-calendar td {
		border: 1px solid #bbb;
	}

	th {
		font-size: 10px;
		background-color: #e8e8e8;
		color: #555;
		width: 14.28%;
	}

	td {
		height: auto;
		text-align: center;

		div[id*="tribe-events-daynum-"] {
			padding: 6px 0;
			background-color: #f9f9f9;
		}

		a.tribe-events-day-has-event {
			color: #06c;
			cursor: default;
		}
	}

	div[id*="tribe-events-daynum-"],
	td a {
		font-size: 10px;
	}

	.tribe-events-tooltip .tribe-events-arrow {
		left: 2px;
	}

	.tribe-events-right .tribe-events-tooltip {
		right: 0;
		left: auto;

		.tribe-events-arrow {
			left: auto;
			right: 2px;
		}
	}

	h5.entry-title {
		font-size: 11px;
		line-height: 1.5;
		padding: 0;
	}
}

.tribe-view-all-events {
	float: right;
}

.tribe-events-widget-link {
	margin-top: 8px;
}

#ajax-loading-mini {
	display: none;
}

/* = Events Countdown Widget
   @ Template: widgets/countdown-widget.php
=============================================*/
.tribe-countdown-timer {
	span.tribe-countdown-seconds,
	span.format,
	h3.tribe-countdown-complete {
		display: none;
	}
}

div.tribe-countdown-timer {
	text-align: center;
	padding-top: 10px;
	line-height: 1;
}

div.tribe-countdown-number {
	float: left;
	color: #000;
	font-size: 32px;
}

span.tribe-countdown-under {
	font-size: 10px;
	color: #666;
	text-transform: uppercase;
	font-weight: 500;
	position: relative;
	top: -10px;
}

div.tribe-countdown-colon {
	float: left;
	color: #666;
	font-size: 1.5em;
	padding: 0 4px;
}

div.tribe-countdown-right {
	float: left;
}

div.tribe-countdown-text {
	clear: both;
}

/* = "Month View" Generated from [tribe_events] Shortcode
=========================================================*/

.tribe-events-shortcode .tribe-events-month table .type-tribe_events {
	margin: 0 5%;
	padding: 6px 8px;
	border-bottom: 1px solid #e7e7e7;
}

.tribe-events-shortcode .tribe-events-month table .tribe-events-last {
	border-bottom: 0;
}

