/* Radio Station Pro Views */

.show-user-time {
	display: none;
	font-style: italic;
}


/* Grid View Styles */
/* ---------------- */

.master-schedule-grid {
	border: none; 
	padding: 0;
	margin: 0;
	width: 100%;
	min-width: 300px;
	text-align: center;
}

.master-schedule-grid .master-schedule-grid-loader {
	margin: 0 auto;
	min-width: 300px;
}

.master-schedule-grid .master-schedule-grid-arrow-left {
	display: inline-block;
	width: 50%;
}

.master-schedule-grid .master-schedule-grid-arrow-right {
	display: inline-block;
	width: 49%;
}

.master-schedule-grid .master-schedule-grid-arrow {
	font-size: 2em;
	line-height: 1em;
	width: 1em;
	cursor: pointer;
	padding-bottom: 5px;
	text-align: center;
}

.master-schedule-grid .master-schedule-grid-arrow-left .master-schedule-grid-arrow {
	float: left;
}

.master-schedule-grid .master-schedule-grid-arrow-right .master-schedule-grid-arrow {
	float: right;
}

.master-schedule-grid .master-schedule-grid-arrow:hover {
	background-color: rgba(128,128,128,0.5);
	border-radius: 1em;
}

.master-schedule-grid .grid-shift-arrow-left {
	float: left;
}

.master-schedule-grid .grid-shift-arrow-right {
	float: right;
}

.master-schedule-grid .grid-shift-arrow-left, .master-schedule-grid .grid-shift-arrow-right, 
.master-schedule-grid .first-day.day-0 .grid-shift-arrow-left, .master-schedule-grid .last-day.day-6 .grid-shift-arrow-right {
	display: none;
	padding: 0;
}

.master-schedule-grid .grid-shift-arrow-left a, .master-schedule-grid .grid-shift-arrow-right a {
	text-decoration: none;
}

.master-schedule-grid .first-day .grid-shift-arrow-left, .master-schedule-grid .last-day .grid-shift-arrow-right {
	display: inline-block;
	padding: 5px;
	font-size: 2.5em;
	font-weight: bold;
	line-height: 1em;	
}

.master-schedule-grid .master-schedule-grid-day {
	display: inline-block;
	position: relative;
	margin: 0;
	padding: 0;
	vertical-align: top;
	text-align: left; 
	list-style: none;
	max-width: 300px;
}

.master-schedule-grid .master-schedule-grid-header {
	text-align: center;
	background-color: #eeeeee;
	color: #444444;
	font-size: 1em;
	font-weight: bold;
	border: 1px solid #000000;
	list-style: none;
	border-bottom: 0;
	border-top: 0;
}

.master-schedule-grid .master-schedule-grid-day.start-day,
.master-schedule-grid .master-schedule-grid-day.first-day {
	margin-left: 0;
}

.master-schedule-grid .master-schedule-grid-day.current-day {
	background-color: rgba(255,255,235,0.5);
}

.master-schedule-grid .master-schedule-grid-headings {
	display: inline-block;
	padding: 5px 10px 5px 10px;
}

.master-schedule-grid .master-schedule-grid-day-name {
	/* display: inline-block;
	padding: 5px 10px 5px 10px; */
	display: block;
	font-size: 1em;
}

.master-schedule-grid .master-schedule-grid-date {
	display: block;
	font-size: 0.75em;
}

.master-schedule-grid .master-schedule-grid-day.current-day .master-schedule-grid-header {
	background-color: transparent; 
	color: #000000;
	border: 1px solid red;
}

.master-schedule-grid .master-schedule-grid-day .master-schedule-day-bottom {
	display: none;
}

.master-schedule-grid .master-schedule-grid-selected {
	display: none;
	padding: 10px 10px 0 10px;
	margin: 0;
}

.master-schedule-grid .master-schedule-grid-show {
	padding: 10px 10px;
	margin: 0 5px;
	clear: both;
	list-style: none;
	margin-top: 30px;
}

.master-schedule-grid .master-schedule-grid-show.nowplaying {
	border: 1px solid #F00000;
}

.master-schedule-grid .master-schedule-grid-show.first-show {
	margin-top: 20px;
}

.master-schedule-grid .master-schedule-grid-show.last-show {
	margin-bottom: 20px;
}

.master-schedule-grid .master-schedule-grid-no-shows {
	padding-top: 30px; padding-bottom: 30px;
}

.master-schedule-grid .master-schedule-grid-show.before-current {
	opacity: 0.8;
}

.master-schedule-grid .master-schedule-grid-show .show-info {
	text-align: center;
	width: 100%;
}

.master-schedule-grid .master-schedule-grid-show .show-info,
.master-schedule-grid .master-schedule-grid-show .show-image,
.master-schedule-grid .master-schedule-grid-show .show-desc {
	display: inline-block;
	vertical-align: top;
	font-size: 1em;
}

.master-schedule-grid .master-schedule-grid-show .show-title {
	font-size: 1em;
	width: auto;
}

.master-schedule-grid .master-schedule-grid-show .show-image {
	width: 100%;
	text-align: center;
	padding: 5px;
}

.master-schedule-grid .master-schedule-grid-show .show-image.no-show-image {
	display: none;
}

.master-schedule-grid .master-schedule-grid-show .show-host-names {
	font-size: 0.9em;
	text-align: center;
	margin: 5px auto 0 auto;
	width: fit-content;
}

.master-schedule-grid .master-schedule-grid-show .show-time,
.master-schedule-grid .master-schedule-grid-show .show-user-time {
	font-size: 0.7em;
	text-align: center;
	margin: 5px auto 0 auto;
	width: fit-content;
}

.master-schedule-grid .master-schedule-grid-show .show-encore {
	font-size: 0.7em;
	font-style: italic;
	text-align: center;
	margin: 5px auto 0 auto;
	width: fit-content;
}

.master-schedule-grid .master-schedule-grid-show .show-file,
.master-schedule-grid .master-schedule-grid-show .show-genres {
	font-size: 0.6em;
	text-align: center;
	margin: 5px auto 0 auto;
	width: fit-content;
}

.master-schedule-grid .master-schedule-grid-show .show-desc {
	font-size: 0.75em;
	margin: 10px auto 0 auto;
	width: fit-content;
}

.master-schedule-grid .master-schedule-grid-show.highlighted {
	border: 1px dashed orange;
	background-color: rgba(235,235,0,0.4);
}

.master-schedule-grid .master-schedule-grid-spacer {
	display: none;
	margin: 0 !important;
	padding: 0 !important;
	background-color: rgba(128,128,128,0.5);
}

.master-schedule-grid .master-schedule-grid-show.background-image {
	margin: 0;
	padding: 0;
	overflow: hidden;
}

.master-schedule-grid .master-schedule-grid-show.background-image.nowplaying .show-info {
    margin-top: -2px;
}

.master-schedule-grid .master-schedule-grid-show.background-image .show-title {
	margin-top: 10px;
}

.master-schedule-grid .master-schedule-grid-show.background-image .show-title,
.master-schedule-grid .master-schedule-grid-show.background-image .show-host-names,
.master-schedule-grid .master-schedule-grid-show.background-image .show-time,
.master-schedule-grid .master-schedule-grid-show.background-image .show-user-time,
.master-schedule-grid .master-schedule-grid-show.background-image .show-encore,
.master-schedule-grid .master-schedule-grid-show.background-image .show-genres,
.master-schedule-grid .master-schedule-grid-show.background-image .show-file {
	background-color: rgba(0,0,0,0.85);
	color: #FFFFFF;
}

.master-schedule-grid .master-schedule-grid-show.background-image .show-title a,
.master-schedule-grid .master-schedule-grid-show.background-image .show-time a {
	color: #FFFFFF;
}

.master-schedule-grid .master-schedule-grid-show.background-image .show-title a:hover,
.master-schedule-grid .master-schedule-grid-show.background-image .show-time a:hover {
	text-decoration: underline;
}

.master-schedule-grid .master-schedule-grid-show.background-image .show-desc {
	/* TODO: desciption tooltip popup? */
	display: none;
}


/* Calendar View Styles */
/* -------------------- */

.master-schedule-calendar {
	width: 100%;
	border: 0;
}

.master-schedule-calendar th, .master-schedule-calendar tr {
	border: 0;
	padding: 0;
}

.master-schedule-calendar td {
	padding: 0;
    text-align: center;
	vertical-align: top;
	overflow: hidden;
}

.master-schedule-calendar-arrow-cell {
	cursor: pointer;
	vertical-align: middle;
	max-width: 25px;
}

.master-schedule-calendar-arrow {
	font-size: 2em;
	font-weight: bold;
	width: 1em;
	line-height: 1em;
	text-align: center;
	padding-bottom: 5px;
}

.master-schedule-calendar-arrow:hover {
	background-color: rgba(128,128,128,0.5);
	border-radius: 1em;
}

.master-schedule-calendar-day-cell {
	vertical-align: middle;
}

.master-schedule-calendar-day-cell, .master-schedule-calendar-header, .master-schedule-calendar-footer {
	min-width: 100px;
}

.master-schedule-calendar-day-name {
	font-size: 1.1em;
	width: 100%;
	text-align: center;
}

.master-schedule-calendar td.master-schedule-calendar-month {
	padding: 0;
	width: 30px;
	position: relative;
	text-align: center;
	vertical-align: middle;
}

.master-schedule-calendar-month-name.left-side {
	transform: rotate(-90deg);
	-webkit-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	-ms-transform: rotate(-90deg);
	-o-transform: rotate(-90deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}

.master-schedule-calendar-month-name.right-side {
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
}

.master-schedule-calendar-header, .master-schedule-calendar-footer {
	padding: 0;
	border-top: 1px solid #999999;
}

.master-schedule-calendar-header {
	border-right: 1px solid #999999;
}

.master-schedule-calendar-header.even-day {
	background-color: rgba(235,235,235,0.3);
}

.master-schedule-calendar-header.odd-day {
	background-color: rgba(196,196,196,0.3);
}

.master-schedule-calendar-header.active-date {
	background-color: rgba(255,255,235,0.5);
	border: 1px solid #999999;
	border-bottom: 0;
	border-radius: 15px 15px 0 0;
}

.master-schedule-calendar-header.active-date.current-date {
	border-bottom: 0;
	border-radius: 0;
}

.master-schedule-calendar-header.first-date {
	border-left: 1px solid #999999;
	border-top: 3px solid #999999;
}

.master-schedule-calendar-header.last-date {
	border-right: 2px solid #999999;
}

.first-day .master-schedule-calendar-headings {
	border-left: 1px solid #999999;
}

.master-schedule-calendar-headings {
	position: relative;
	padding: 15px 10px;	
	min-height: 70px;
	padding-bottom: 1015px;
	margin-bottom: -1000px;
}

.active-date .master-schedule-calendar-headings {
	border-left: 0;
	border-right: 0;
}

.master-schedule-calendar-header.current-date {
	border-bottom: 1px solid red;
}

.master-schedule-calendar-header.current-date.active-date {
	border-bottom: 0px;
}

.current-date .master-schedule-calendar-headings {
	border: 1px solid red;
	border-radius: 15px 15px 0 0;
}

.active-date.current-date .master-schedule-calendar-headings {
	border-bottom: 0;
}

.active-date .master-schedule-calendar-date-bottom {
	position: absolute;
	display: block;
	bottom: 0;
	left: 0;
	height: 1px;
	width: 100%;
	background-color: rgba(255,255,235,1);
	margin-bottom: -1px;
	z-index: 999;
}

.current-week .active-date .master-schedule-calendar-date-bottom {
	margin-bottom: -3px;
}

.current-week .active-date.current-date .master-schedule-calendar-date-bottom {
	margin-bottom: -1px;
}
	
.master-schedule-calendar-date, .master-schedule-calendar-header .show-add-link {
    display: inline-block;
	border-top: 0 !important;
	vertical-align: middle;
}

.master-schedule-calendar-date {
	font-size: 1.3em;
	font-weight: bold;
	text-align: center;
	padding: 3px;
	cursor: pointer;
}

.master-schedule-calendar-date.highlighted {
	border: 1px dashed orange;
	background-color: rgba(235,235,0,0.4);
}

.master-schedule-calendar-date-count {
	text-align: center;
	margin-top: 10px;
	cursor: pointer;
}

.master-schedule-calendar-show-count, .master-schedule-calendar-show-label {
	display: inline-block;
}

.master-schedule-calendar-show-label {
	margin-left: 5px;
}

.master-schedule-calendar-show-count {
	line-height: 1.8em;
	width: 1.8em;
	background-color: rgba(128,128,128,0.3);
	border: 1px solid #999;
	border-radius: 1em;
	font-weight: bold;
}

.master-schedule-calendar-show-count.zero-count {
	border: none;
}

.master-schedule-calendar-shows {
	display: none;
}

.master-schedule-calendar-shows.active-week {
	display: table-row;
}

.master-schedule-calendar-shows-cell {
	padding: 0;
	border: 0;
}

/* Shows List/Slider */
/* ----------------- */

.master-schedule-calendar-shows-list, .master-schedule-calendar-shows-slider {
	display: none;
	border: 1px solid #999999;
	border-radius: 15px;
	margin: 0;
	padding: 10px 20px;
}

.master-schedule-calendar-shows-list {
	padding: 10px 20px;
}

.master-schedule-calendar-shows-slider {
	padding: 10px 0;
}

/* .master-schedule-calendar-shows-list.active-date, */
.master-schedule-calendar-shows-slider.active-date {
	display: block;
	background-color: rgba(255,255,235,0.5);
	border: 1px solid #999999;
}

.master-schedule-calendar-shows-list.current-date.active-date, .master-schedule-calendar-shows-slider.current-date.active-date {
	border: 1px solid red;
}

.master-schedule-calendar-show {
	list-style: none;
	display: inline-block;
	margin: 0 10px;
	min-width: 120px;
}

.master-schedule-calendar-show.highlighted {
	border: 1px dashed orange;
	background-color: rgba(235,235,0,0.4);
}

.master-schedule-calendar-show.nowplaying, .master-schedule-calendar-show.nowplaying.highlighted {
	border: 1px solid red;
}

.master-schedule-calendar-show .show-info {
	text-align: center;
	padding: 10px 20px;
}

.master-schedule-calendar-show .show-image, .shows-slider-item .show-image {
	max-width: 120px;
	margin: 0 auto;
}

.master-schedule-calendar-show .show-image.no-show-image, .shows-slider-item .show-image.no-show-image {
	padding-top: 50px;
}

.master-schedule-calendar-show .show-title, .shows-slider-item .show-title {
	font-size: 1em;
}

.master-schedule-calendar-show .show-time, .shows-slider-item .show-time, .shows-slider-item .show-user-time,
.master-schedule-calendar-show .show-dj-names, .shows-slider-item .show-dj-names {
	font-size: 0.8em;
}

.master-schedule-calendar-show .show-encore, .shows-slider-item .show-encore {
	font-size: 0.7em;
	font-style: italic;
}

/* Shows Slider */
/* ------------ */

.shows-slider {
	padding: 0;
	margin: 0 auto;
	width: 100%;
	text-align: center;
}

.shows-slider-wrapper {
	display: inline-block;
	width: 100%;
}

.shows-slider-mask {
	float: left;
	margin: 0;
	display: inline-block;
	overflow: hidden;
	max-width: 800px;
	height: auto;
}

.shows-slider-items {
	margin: 0;
	display: block;
	width: 2000%;
}

.shows-slider-item {
	float: left;
	display: inline-block;
	width: 200px;
	text-align: center; 
	height: auto;
}

.shows-slider-item:first-child, .shows-slider-item:last-child {
	width: 198px;
}

.shows-slider-item.highlighted {
	border: 1px dashed orange;
	background-color: rgba(235,235,0,0.4);
	width: 198px;
}

.shows-slider-item.nowplaying, .shows-slider-item.nowplaying.highlighted {
	border: 1px solid red;
	width: 198px;
}

.shows-slider-item.before-current {
	opacity: 0.8;
}

/* Slider Arrows */
/* ------------- */
.shows-slider-arrow-wrapper {
	float: left;
	display: inline-block;
	width: 50px;
	height: 200px;
	vertical-align: middle;
	cursor: pointer;
}

.narrow .shows-slider-arrow-wrapper {
	width: 25px;
}

.shows-slider-arrow-wrapper:hover {
	background-color: rgba(128,128,128,0.5);
}

.shows-slider-arrow-wrapper.inactive {
	background-color: transparent;
	cursor: unset;
}

.shows-slider-arrow {
	font-size: 4em;
	font-weight: bold;
	line-height: 2em;
}

.shows-slider-arrow-wrapper.inactive .shows-slider-arrow {
	color: transparent;
}

.shows-slider-arrow-left {
	border-radius: 20px 0 0 20px;
}

.shows-slider-arrow-right {
	border-radius: 0 20px 20px 0;
}

/* Calendar Media Queries */
/* ---------------------- */
@media only screen and (max-width: 799px) {
	.master-schedule-calendar-show-label {display: block; margin-left: 0;}
	.master-schedule-calendar-day-name, .master-schedule-calendar-month-name {font-size: 0.8em;}
	.master-schedule-calendar-date {font-size: 1em;}
	.master-schedule-calendar-date-count {font-size: 0.8em;}
	.master-schedule-calendar .shows-slider-arrow {font-size: 3.5em; line-height: 1.75em;}
}

@media only screen and (max-width: 599px) {
	.master-schedule-calendar-arrow {font-size: 1.5em; width: 0.75em; line-height: 0.75em;}
	.master-schedule-calendar-day-name, .master-schedule-calendar-month-name {font-size: 0.6em;}
	.master-schedule-calendar-date {font-size: 0.8em;}
	.master-schedule-calendar-show-count {font-size: 0.8em;}
	.master-schedule-calendar-show-label {font-size: 0.7em;}
	.master-schedule-calendar td.master-schedule-calendar-day-cell {height: 80px; vertical-align: middle;}
	.master-schedule-calendar-day-name {
		transform: rotate(90deg);
		-webkit-transform: rotate(90deg);
		-moz-transform: rotate(90deg);
		-ms-transform: rotate(90deg);
		-o-transform: rotate(90deg);
		filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
		margin-bottom: 10px;
	}
	.master-schedule-calendar .shows-slider-arrow {font-size: 3em; line-height: 1.5em;}
}

@media only screen and (max-width: 499px) {
	.master-schedule-calendar-arrow {font-size: 1em; width: 0.5em; line-height: 0.5em;}
	.master-schedule-calendar-date {font-size: 0.7em;}
	.master-schedule-calendar-show-count {font-size: 0.7em;}
	.master-schedule-calendar-show-label {font-size: 0.6em;}
}
