/* ============================= */
/* Radio Station Schedule Styles */
/* ============================= */

.radio-clear {
	display: block;
	clear: both;
}

.show-user-time {
	display: none;
	font-style: italic;
}

/* Edit / Add Links */
/* ---------------- */
.show-title, .show-edit-link {
	display: inline-block;
	vertical-align: middle;
}

.show-edit-link, .show-add-link, .shift-edit-link {
	text-decoration: none;
	cursor: pointer;
}

.show-edit-link span, .show-add-link span {
	color: #777777;
	opacity: 0.9;
}

.show-edit-link span {
	font-size: 18px;
}

.show-add-link span {
	font-size: 16px;
}

.show-edit-link:hover span, .show-add-link:hover span {
	opacity: 1;
}

/* Schedule Controls */
/* ----------------- */
.master-schedule-controls-wrapper {
	width: 100%;
}

.master-schedule-clock-wrapper, .master-schedule-timezone-wrapper, .master-schedule-selector-wrapper {
	font-size: 0.8em;
	vertical-align: top;
	text-align: left;
	margin-top: 10px;
}


/* Genre Selector */
/* -------------- */
.master-genre-list {
	font-size: 1em;
	float: left;
}

.master-genre-list span.heading {
	font-weight: bold;
}

.master-genre-list .genre-highlight.highlighted {
    font-weight: bold;
    background-color: rgba( 235, 235, 0, 0.4 );
    border: 1px dashed orange;
    padding-left: 4px;
    padding-right: 2px;
}

/* Table View Styles */
/* ----------------- */
.master-program-schedule {
	width: 100%;
	height: 100%;
}

.master-program-schedule tr {
	height: 100%;
}

.master-program-schedule .master-program-hour-heading {
	max-width: 120px;
}

.master-program-schedule .master-program-hour-heading, .master-program-schedule  .master-program-hour-row {
	width: 100px;
}

.master-program-schedule th {
	width: auto;
	text-align: center;
	vertical-align: top;
	padding: 0.5em 0;
	min-width: 80px;
}

.master-program-schedule .master-program-day {
    min-width: 125px;
    max-width: 250px;
}

.master-program-schedule th.master-program-hour {
	min-width: 80px;
}

.master-program-schedule .master-program-day.current-day {
	border: 1px solid #F00000;
}

#master-program-schedule th .headings {
	display: inline-block;
}

.master-program-schedule th .day-heading {
	font-size: 1em;	
}

.master-program-schedule th .date-subheading {
	font-size: 0.75em;
}

.master-program-schedule th a {
	text-decoration: none;
}

.master-schedule-table-arrow-left, .master-schedule-table-arrow-right {
	display: inline-block;
	font-size: 2em;
	line-height: 1em;
	vertical-align: top;
	cursor: pointer;
}

.master-schedule-table-arrow-left .master-schedule-table-arrow,
.master-schedule-table-arrow-right .master-schedule-table-arrow {
	width: 1em;
}

.master-schedule-table-arrow-left .master-schedule-table-arrow:hover,
.master-schedule-table-arrow-right .master-schedule-table-arrow:hover {
	background-color: rgba(128,128,128,0.5);
	border-radius: 1em;
}

.master-program-schedule th .shift-left-arrow {
	float: left;
	font-size: 2em;
	font-weight: bold;
	line-height: 0.5em;
}

.master-program-schedule th .shift-right-arrow {
	float: right;
	font-size: 2em;
	font-weight: bold;
	line-height: 0.5em;
}

.master-program-schedule th .shift-left-arrow, .master-program-schedule th .shift-right-arrow {
	display: none;
}

.master-program-schedule th.first-column .shift-left-arrow, .master-program-schedule th.last-column .shift-right-arrow {
	display: inline-block;
	vertical-align: middle;
}

.master-program-schedule .master-program-day .headings {
	display: inline-block;
	vertical-align: middle;
}

.master-program-schedule .master-program-hour-row th {
	padding-top: 0;
}

.master-program-schedule td {
	vertical-align: top;
	font-size: 1em;
	text-align: center;
	padding: 0;
	height: 100%;
}

.master-program-schedule td {
	border: 1px solid #222222;
}

.master-program-schedule td.show-info {
	padding: 0;
}

.master-program-schedule td div {
	border-top: 1px solid #EEEEEE;
	font-size: 0.9em;
}

.master-program-schedule .master-program-hour.current-hour {
	border: 1px solid #F00000;
}

.master-program-schedule .master-program-hour div {
	padding-bottom: 1em;
}

.master-program-schedule .show-wrap {
	position: relative;
	display: -ms-grid;
	display: grid;
	min-height: 50px;
	height: 100%;
}

.master-program-schedule .show-title, .master-program-schedule .show-desc {
    max-width: 120px;
    text-align: center;
}

.master-program-schedule .show-image {
    max-width: 120px;
	margin: 0 auto;
}

.master-program-schedule .show-info.overflow {
    border-bottom: transparent !important;
	position: relative;
}

.master-program-schedule .show-info.continued {
    border-top: transparent !important;
}

.master-program-schedule .show-info .master-show-entry {
	position: relative;
	display: block;
	/* height: 100%; */
}

.master-program-schedule .show-info .master-show-entry.finished {
	height: 99%;
}

.master-program-schedule .show-info .master-show-entry.nowplaying {
    border: 2px solid #F00000;
}

.master-program-schedule .show-info .master-show-entry.overflow,
.master-program-schedule .show-info .master-show-entry.nowplaying.overflow {
	border-bottom: 1px solid transparent;
}

.master-program-schedule .show-info .master-show-entry.continued,
.master-program-schedule .show-info .master-show-entry.nowplaying.continued {
	border-top: 1px solid transparent;
}

.master-program-schedule .show-info .master-show-entry.continued.overflow,
.master-program-schedule .show-info .master-show-entry.nowplaying.continued.overflow {
	border-bottom: 1px solid transparent;
}

.master-program-schedule .master-show-entry.highlighted {
	border: 1px dashed orange;
	background-color: rgba(235,235,0,0.4);
}

.master-program-schedule .master-show-entry.before-current {
	opacity: 0.8;
}

.master-program-schedule span.show-title,
.master-program-schedule span.show-file,
.master-program-schedule span.show-time,
.master-program-schedule span.show-encore {
	display: block;
}

.master-program-schedule .show-host-names {
	font-size: 0.8em;
}

.master-program-schedule .show-time, .master-program-schedule .show-user-time {
	font-size: 0.8em;
}

.master-program-schedule .show-encore {
	font-size: 0.8em;
	color: #EE8E66;
}

.master-program-schedule .show-file {
	margin-bottom: 5px;
	margin-top: 5px;
	font-size: 0.6em;
}

.master-program-schedule .show-file a {
	width: 95%;
	height: 20px;
	background-color: #931B25;
	padding: 3px;
	text-decoration: none;
	color: #ffffff;
	margin-bottom: 3px;
}

.master-program-schedule .show-file a:hover {
	background-color: #C51D2E;
	color: #ffffff;
}

.master-program-schedule .show-desc {
	font-size: 0.6em;
}


/* List View Styles */
/* ---------------- */
.master-list .master-list-day-item.highlighted {
	border: 1px dashed orange;
	background-color: rgba(235,235,0,0.4);
}


/* Tabbed View Styles */
/* ------------------ */

.master-schedule-tabs {
	border: none; 
	padding: 0;
	margin: 0;
	width: 100%;
}

.master-schedule-tabs .shift-left-arrow {
	float: left;
}

.master-schedule-tabs .shift-right-arrow {
	float: right;
}

.master-schedule-tabs .shift-left-arrow, .master-schedule-tabs .shift-right-arrow, 
.master-schedule-tabs .first-tab.day-0 .shift-left-arrow, .master-schedule-tabs .last-tab.day-6 .shift-right-arrow {
	display: none;
	padding: 0;
}

.master-schedule-tabs .shift-left-arrow a, .master-schedule-tabs .shift-right-arrow a {
	text-decoration: none;
}

.master-schedule-tabs .first-tab .shift-left-arrow, .master-schedule-tabs .last-tab .shift-right-arrow {
	display: inline-block;
	font-size: 2em;
	font-weight: bold;
	line-height: 0.5em;
	padding: 5px;
}

.master-schedule-tabs-loader {
	list-style: none;
	display: inline-block;
	margin: 0;
	padding: 0;
	font-size: 50px;
	line-height: 35px;
	vertical-align: top;
	cursor: pointer;
}

.master-schedule-tabs-loader .master-schedule-tabs-arrow {
	width: 50px;
	text-align: center;
	padding-bottom: 15px;
}

.master-schedule-tabs-arrow-right {
	margin-left: 5px;
}

.master-schedule-tabs-loader .master-schedule-tabs-arrow:hover {
	background-color: rgba(128,128,128,0.5);
	border-radius: 25px;
}

.master-schedule-tabs .master-schedule-tabs-day {
	display: inline-block;
	position: relative;
	min-width: 100px;
	margin: 0px; 
	cursor: pointer; 
	text-align: center; 
	background-color: #eeeeee; 
	color: #444444;
	font-size: 1em;
	font-weight: bold;
	border-radius: 7px 7px 0 0;
	border: 1px solid #000000;
	list-style: none;
	margin-left: 20px;
	border-bottom: 0;
}

.master-schedule-tabs .master-schedule-tabs-day.start-tab,
.master-schedule-tabs .master-schedule-tabs-day.first-tab {
	margin-left: 0;
}

.master-schedule-tabs .master-schedule-tabs-day.current-day {
    border: 1px solid #F00000;
    border-bottom: 0;
}

.master-schedule-tabs .master-schedule-tabs-headings {
	display: inline-block;
	padding: 5px 10px 5px 10px;
}

.master-schedule-tabs .master-schedule-tabs-day-name {
	/* display: inline-block;
	padding: 5px 10px 5px 10px; */
	display: block;
	font-size: 1em;
}

.master-schedule-tabs .master-schedule-tabs-date {
	display: block;
	font-size: 0.75em;
}

.master-schedule-tabs .master-schedule-tabs-day.active-day-tab {
	font-weight: bold; 
	background-color: #ffffff; 
	color: #000000;
	/* border-bottom: 0; */
}

.master-schedule-tabs .master-schedule-tabs-day .master-schedule-tab-bottom {
	display: none;
}

.master-schedule-tabs .master-schedule-tabs-day.active-day-tab .master-schedule-tab-bottom {
	position: absolute;
	display: block;
	bottom: 0;
	height: 1px;
	width: 100%;
	background-color: #FFF;
	margin-bottom: -1px;
	z-index: 999;
}

.master-schedule-tab-panels {
	min-width: 300px;
}

.master-schedule-tab-panels .master-schedule-tabs-selected {
	display: none;
	padding: 10px 10px 0 10px;
	margin: 0;
}

.master-schedule-tab-panels .master-schedule-tabs-panel {
	display: none; 
	float: left; 
	margin: 0;
	padding: 0;
	position: relative; 
	text-align: left; 
	width: 100%;
	list-style: none;
}

.master-schedule-tab-panels .master-schedule-tabs-panel .master-schedule-tabs-show {
	padding: 10px 10px;
	margin: 0 10px;
	clear: both;
	list-style: none;
}

.master-schedule-tab-panels .master-schedule-tabs-panel .master-schedule-tabs-show.nowplaying {
	border: 1px solid #F00000;
}

.master-schedule-tab-panels .master-schedule-tabs-panel .master-schedule-tabs-show.first-show {
	margin-top: 20px;
}

.master-schedule-tab-panels .master-schedule-tabs-panel .master-schedule-tabs-show.last-show {
	margin-bottom: 20px;
}

.master-schedule-tab-panels .master-schedule-tabs-panel .master-schedule-tabs-no-shows {
	padding-top: 30px; padding-bottom: 30px;
}

.master-schedule-tab-panels .master-schedule-tabs-panel.active-day-panel {
	display: block; 
	border: 1px solid #333333; 
	background-color: #ffffff;
	/* border-top: 0; */
	border-radius: 7px;
}

.master-schedule-tab-panels .master-schedule-tabs-show.before-current {
	opacity: 0.8;
}

.master-schedule-tab-panels.hide-past-shows .master-show-entry.before-current {
	display: none;
}

.master-schedule-tab-panels .master-schedule-tabs-show .show-info,
.master-schedule-tab-panels .master-schedule-tabs-show .show-image,
.master-schedule-tab-panels .master-schedule-tabs-show .show-desc {
	display: inline-block;
	vertical-align: top;
	font-size: 1em;
}

.master-schedule-tab-panels .master-schedule-tabs-show .show-image {
	margin-right: 10px;
	width: 180px;
	text-align: center;
}

.master-schedule-tab-panels .master-schedule-tabs-show .show-image.right-image {
	margin-right: 0;
	margin-left: 10px;
}

.master-schedule-tab-panels .master-schedule-tabs-show .show-info {
	min-width: 260px;
}

.master-schedule-tab-panels .master-schedule-tabs-show .show-info.has-show-desc {
	width: 260px;
}

.master-schedule-tab-panels .master-schedule-tabs-show .show-info.left-image {
	text-align: left;
}

.master-schedule-tab-panels .master-schedule-tabs-show .show-info.right-image {
	text-align: right;
}

.master-schedule-tab-panels .master-schedule-tabs-show .show-desc {
	max-width: 400px;
}

.master-schedule-tab-panels .master-schedule-tabs-show .show-time,
.master-schedule-tab-panels .master-schedule-tabs-show .show-user-time,
.master-schedule-tab-panels .master-schedule-tabs-show .show-host-names {
	font-size: 0.9em;
}

.master-schedule-tab-panels .master-schedule-tabs-show .show-encore,
.master-schedule-tab-panels .master-schedule-tabs-show .show-file,
.master-schedule-tab-panels .master-schedule-tabs-show .show-genres {
	font-size: 0.8em;
}

.master-schedule-tab-panels .master-schedule-tabs-show .show-desc {
	font-size: 0.75em;
	margin-left: 20px;
}

.master-schedule-tab-panels .master-schedule-tabs-show.highlighted {
	border: 1px dashed orange;
	background-color: rgba(235,235,0,0.4);
}


/* Div View Styles */
/* --------------- */
#master-schedule-divs {
	width: 100%;
}

#master-schedule-divs .master-schedule-hour {
	width: 100%;
	clear: both;
}

#master-schedule-divs .master-schedule-hour-header {
	width: 12%;
	float: left;
	text-align: center;
	font-weight: bold;
	font-size: 0.7em;
}

#master-schedule-divs .master-schedule-weekday {
	width: 10%;
	float: left;
	border: 1px solid #dddddd;
}

#master-schedule-divs .master-schedule-weekday-header {
	text-align: center;
	font-weight: bold;
	font-size: 0.7em;
	display: block;
}

#master-schedule-divs .master-show-entry {
	padding: 8px 5px 5px 5px;
	position: relative;
}

#master-schedule-divs .show-dj-names,
#master-schedule-divs .show-time,
#master-schedule-divs .show-title {
	display: block;
	font-size: 0.6em;
	line-height: 1em;
}


#master-schedule-divs .show-image img {
	width: 100%;
	height: auto;
}

#master-schedule-divs .rowspan {
	background-color: #dddddd;
	margin-left: -1px;
	position: absolute;
	width: 50px;
	z-index: 5;
}

/* Media Queries */
@media screen and (max-width: 782px) {
	.master-schedule-tab-panels .master-schedule-tabs-show .show-image {width: 120px;}
}

@media screen and (max-width: 599px) {
	.master-program-schedule .show-image,
	.master-schedule-tab-panels .master-schedule-tabs-show .show-image {width: 90px;}
	.master-program-schedule .master-program-hour-heading, .master-program-schedule .master-program-hour-row {width: 75px;}
	#master-schedule-controls-wrapper .radio-station-server-clock,
	#master-schedule-controls-wrapper .radio-station-user-clock {margin-bottom: 10px;}
	#master-schedule-controls-wrapper .radio-clock-title {display: block; min-height: auto; margin-bottom: 5px;}
}

@media screen and (max-width: 299px) {
	.master-program-schedule .master-program-hour-heading, .master-program-schedule .master-program-hour-row {width: 50px;}
}
