/************************************************
 ** (C) Copyright 2024 Lyndon Leverington      **
 ************************************************/

@viewport {
  width: device-width ;
  zoom: 1.0;
}

* {
  	box-sizing: border-box;
	padding: 0px;
    margin: 0px;
  	font-family: Calibri, Arial, "Times New Roman";
	letter-spacing: 0px;
}
body {
    background-color: #435165;
    color: #FFFFFF;
    text-align: center; /* So that IE will centre the mainPage div */
	font-size: 16px;
	font-style: normal;
    font-weight: normal;
    font-variant: normal;
	
	/* Below ensures footer is always at the bottom */
	display: flex;
	min-height: 100vh;
	flex-direction: column;
	justify-content: space-between;
}
div.left {
	text-align: left;
	margin: 10px 10px;
}
h1 {
    margin: 0px;
    font-variant:small-caps;    
    font-size: xx-large;
    font-family: Calibri, Arial, "Times New Roman";
    font-style: normal;
    font-weight: normal;
    color: #6B8E23;
    letter-spacing: 0px;
}
a { text-decoration: none; }
a:link { color: blue; }
a:visited { color: blue; }
a:hover { color: darkblue; }
input[type=button] { cursor: pointer; }
.RadBut-option-container {
	display: flex;
	flex-direction: column;
	margin-bottom: 10px;
}
.RadBut-label-container {
	display: flex;
	align-items: center;
	gap: 10px;
}
.RadBut-description {
	font-size: 0.9em;
	color: #555;
	margin-left: 25px;
}

/** ---------------------------------------------------------------------------
 * HEADER, FOOTER, AND NAVBAR
 --------------------------------------------------------------------------- */
.navbar {
	position: absolute;
	top: 0;
	left: 0;
	width: 100vw;
    height: 50px;
	padding: 10px 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #364151;
	border-bottom: 1px solid #BBBBBB;
}
.headerleft {
	display: flex;
	flex-direction: row;
}
.navbar img {
	margin-top: 5px;
	width: 35px;
	height: 35px;
	border-radius: 0.5rem;
}
#viewFilter {
	margin: 10px 15px;
	background-color: transparent;
	color: #EEEEEE;
	cursor: pointer;
}
#viewFilter option {
	background-color: #435165;
}
.nav-links input[type=checkbox] {
  display: none;
}

/* HAMBURGER MENU */
.hamburger {
  cursor: pointer;
  display: none;
  font-size: 24px;
  user-select: none;
}
.menu {
	z-index: 500;
	display: flex;
	gap: 1em;
	font-size: 18px;
}
.menu a {
	color: #F9F9F9;
	cursor: pointer;
	user-select: none;
}
.menu li:hover {
	background-color: #4c9e9e;
	border-radius: 5px;
	transition: 0.3s ease;
}
.menu li {
	padding: 5px 14px;
}
.header-buttons {
	display: flex;
	gap: 0.5rem;
    align-items: center;
    flex-wrap: nowrap;
}
.nav-links li {
	list-style: none;
}

@media only screen and (max-width: 760px) {
	.nav-links input[type=checkbox]:not(:checked) ~ .menu {
	  display: none;
	}
	.nav-links input[type=checkbox]:checked ~ .menu {
	  display: block;
	} 
	.menu {
		display: none;
		position: absolute;
		background-color:teal;
		right: 0;
		left: 0;
		text-align: center;
		padding: 16px 0;
	}

	.menu li:hover {
		display: inline-block;
		background-color:#4c9e9e;
		transition: 0.3s ease;
	}

	.menu li + li {
		margin-top: 12px;
	}

	input[type=checkbox]:checked ~ .menu {
		display: block;
	}

	.hamburger {
		display: block;
	}

	.dropdown {
		left: 50%;
		top: 30px;
		transform: translateX(35%);
	}

	.dropdown li:hover {
		background-color: #4c9e9e;
	}
}
div.content {
	z-index: 2;
	margin-top: 80px;
	margin-bottom: 20px;
}
div.footer {
	position: relative;
	bottom: 0;
	left: 0;
	width: 100vw;
	height: 20px;
	color: #364151;
	font-size: 1rem;
	text-align: right;
}
div.footer span {
	margin: 0px 10px;
	padding: 0px;
}


/** ---------------------------------------------------------------------------
 * APP SETTINGS
 --------------------------------------------------------------------------- */

div#overlayeditsettingsC {
	background-color: #FAFAFA;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-top: -250px;
	margin-left: -250px;
	width: 500px;
	height: 530px;
}

input#EditSettingsCancel, input#EditSettingsSubmit {
	margin: 10px;
	width: 100px;
	background-color: #E7E7E7;
	border: 2px solid #E7E7E7;
	border-radius: 3px;
	font-size: 1.1em;
	padding: 3px 15px;
	height: 33px;
	transition-duration: 0.4s;
}
input#EditSettingsCancel:hover, input#EditSettingsSubmit:hover {
	background-color: #FFFFFF;
}

table#EditSettingsTable1 {
	margin: auto;
	width: 450px;
	border-collapse: collapse;
}

table#EditSettingsTable1 th { vertical-align: top; }
table#EditSettingsTable1 td { padding: 3px 7px; vertical-align: top; }
table#EditSettingsTable1 td:nth-child(1) { width: 180px; user-select: none; text-align: right; } /* Setting Name */
table#EditSettingsTable1 td:nth-child(2) { width: 20px; text-align: center; } /* Setting Checkbox */
table#EditSettingsTable1 td:nth-child(2) input[type="checkbox"] { }
table#EditSettingsTable1 td:nth-child(3) { width: 240px; text-align: left; } /* Setting Value */
table#EditSettingsTable1 td:nth-child(3) input[type="text"] { width: 220px; }

table#EditSettingsTable1 tr {
    border: 0px;
    padding: 0px;
    margin: 0px;
}
table#EditSettingsTable1 tr:nth-child(even) {
    background-color: #FFF5EE;
}

table#EditSettingsTable1 span.PlaceholderExamples {
	display: block;
	font-size: 0.7em;
	color: #999999;
}

@media (max-width: 510px) {
	div#overlayeditsettingsC {
		width: 100vw;
		height: 90vh;
		margin-left: -50vw;
		margin-top: -45vh;
	}
	
	table#EditSettingsTable1, 
	table#EditSettingsTable1 caption,
	table#EditSettingsTable1 thead, 
	table#EditSettingsTable1 tbody, 
	table#EditSettingsTable1 th, 
	table#EditSettingsTable1 td, 
	table#EditSettingsTable1 tr { /* Force table to not be like tables anymore */
		display: block;
	}
	table#EditSettingsTable1 thead tr { /* Hide table headers (but not display: none;, for accessibility) */
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	table#EditSettingsTable1 { width: 100%; }
	table#EditSettingsTable1 tr { border: 1px solid #ccc; margin: none; }
	table#EditSettingsTable1 td { /* Behave like a row */
		width: 100vw;
		border: none;
		position: relative;
		padding: 5px;
		text-align: center;
		white-space: normal;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	
	table#EditSettingsTable1 tbody td:nth-child(1) /* Setting Name */
	{ min-width: 100%; max-width: 100%; text-align: center; } 
	table#EditSettingsTable1 tbody td:nth-child(2) /* Setting Checkbox */
	{ min-width: 100%; max-width: 100%; } 
	table#EditSettingsTable1 tbody td:nth-child(3) /* Setting Value */
	{ min-width: 100%; max-width: 100%; text-align: center; } 
	table#EditSettingsTable1 tbody td:nth-child(3) input[type="text"] { width: 95%; }

}

div#overlayeditsettingssuccessC {
	background-color: #FAFAFA;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-top: -20px;
	margin-left: -200px;
	width: 400px;
	height: 40px;
	overflow: hidden;
}
@media (max-width: 400px) {
	div#overlayeditsettingssuccessC {
		width: 100vw;
		margin-left: -50vw;
	}
}


/** ---------------------------------------------------------------------------
 * MY TV SERIES TABLES
 --------------------------------------------------------------------------- */
div#displayMySeries {
    height: auto;
	margin: 0px auto;
    padding: 0px;
    display: block;
} 

div.mySeriesAllWrapper {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-evenly;
	align-items: flex-start;
	/*gap: 2px 10px;*/
}
div.mySeriesAllWrapperLeft {
	padding: 10px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 10px 20px;
}

div.mySeriesItemWrapper {
	background: rgb(246,246,246);
	background: linear-gradient(180deg, rgba(230,230,230,1) 0%, rgba(255,255,255,1) 50%, rgba(230,230,230,1) 100%);
	margin: 10px 0px;
	min-height: 70px;
	border-radius: 20px;
	padding: 2px 12px;
	cursor: pointer; 
	user-select: none;
	box-shadow: 0 5px 7px -1px rgba(51, 51, 51, 0.23);
	transition: transform .25s cubic-bezier(.7,.98,.86,.98), box-shadow .25s cubic-bezier(.7,.98,.86,.98);
	&:hover {
		transform: scale(1.05);
		box-shadow: 0 9px 47px 11px rgba(51, 51, 51, 0.18);
	}
}
div.mySeriesItemPoster {
	float: left;
	width: 80px;
	height: 66px;
	overflow: none;
	font-size: 2.5em;
}
div.mySeriesItemPoster img { max-width: 100%; max-height: 100%; }
div.mySeriesItemDetails {
	float: left;
	width: 300px;
	min-height: 66px;
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-start;
	align-content: space-around;
	text-align: left;
	padding: 2px 5px;
}
span.mySeriesItemName {
	font-size: 1.2em;
	color: #000000;
	padding: 0px 0px 0px 5px;
	width: 300px;
	flex-grow: 1;
	font-family: Verdana, Arial;
	height: 30px;
	text-wrap: nowrap;
	overflow: ellipsis;
}
span.mySeriesItemYear, span.mySeriesItemProdStatus {
	font-size: 1em;
	color: #999999;
	padding: 0px 20px 0px 5px;
}

@media (max-width: 420px) {
	div#displayMySeries {
		width: 100vw;
	}
	span.NavLinks { font-size: 1.3em; }
	div.mySeriesItemPoster { display: none;	}
	div.mySeriesItemDetails { width: 100%; }
	span.mySeriesItemName { width: calc(100vw - 50px); }
}


/** ---------------------------------------------------------------------------
 * SEARCH FOR NEW TV SERIES
 --------------------------------------------------------------------------- */

div#overlayaddseriesC {
	background-color: #FAFAFA;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-top: -400px;
	margin-left: -450px;
	width: 900px;
	height: 800px;
}

div#SeriesSearchDiv {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	/*height: 50px;*/
	margin: auto;
}
input#SeriesSearchBox {
	width: 400px;
	background-color: white;
	margin: 10px;
	padding: 5px 5px 5px 40px;
	border: 2px solid #ccc;
	border-radius: 4px;
	height: 33px;
	font-size: 1em;
	background-image: url('/images/icon_search_tr.png');
	background-repeat: no-repeat;
	background-position: top 4px left 5px;
}
input#SeriesSearchBox:focus {
	border: 2px solid #999999;
}
input#SeriesSearchSubmit, input#SeriesSearchCancel {
	background-color: #E7E7E7;
	border: 2px solid #E7E7E7;
	border-radius: 3px;
	font-size: 1.1em;
	margin: 10px 5px;
	padding: 3px 15px;
	height: 33px;
	transition-duration: 0.4s;
}
input#SeriesSearchSubmit:hover, input#SeriesSearchCancel:hover {
	background-color: #FFFFFF;
}
 
div#SeriesSearchResults {
	width: 850px;
    height: auto;
	margin: 0px auto;
    padding: 0px;
    display: block;
} 
table.SearchResults {
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0px;
    border: 1px solid black;
    border-left: 0px; border-right: 0px;
    margin: 0px auto;
    padding: 0px;  
    background-color: #FFFFFF;
    text-align: left;
}

table.SearchResults thead th:nth-child(1), table.SearchResults tbody td:nth-child(1) /* Poster */
{ min-width: 100px; max-width: 100px; } 
table.SearchResults tbody td:nth-child(1) img { max-width: 100%; cursor: pointer; } /* Poster image */
table.SearchResults tbody td:nth-child(1) span { font-size: 50px; user-select: none; } /* TV Icon */
table.SearchResults thead th:nth-child(2), table.SearchResults tbody td:nth-child(2) /* Series ID */ 
{ display: none; } 
table.SearchResults thead th:nth-child(3), table.SearchResults tbody td:nth-child(3) /* Name */
{ min-width: 200px; max-width: 200px; }
table.SearchResults tbody td:nth-child(3) a { cursor: pointer; user-select: none; text-decoration: underline; }
table.SearchResults tbody td:nth-child(3) a:hover { text-decoration: underline dotted; }
table.SearchResults thead th:nth-child(4), table.SearchResults tbody td:nth-child(4) /* Year */
{ min-width: 70px; max-width: 70px; } 
table.SearchResults thead th:nth-child(5), table.SearchResults tbody td:nth-child(5) /* Overview */
{ min-width: 450px; max-width: 450px; } 

table.SearchResults tr {
    border: 0px;
    padding: 0px;
    margin: 0px;
}
table.SearchResults tr:nth-child(odd) {
    background-color: #FFFFFF;
}
table.SearchResults tr:nth-child(even) {
    background-color: #FFF5EE;
}
table.SearchResults th { 
	position: sticky;
	top: -10px;
	background-color: #FFFFFF;
	color: #000000;
    padding: 10px 15px;
    margin: 0px;
    vertical-align: middle;
	font-size: 1.2em;
	border-bottom: 1px solid black;
} 
table.SearchResults td { 
	color: #000000;
    padding: 10px 15px;
    margin: 0px;
    overflow: hidden;
    white-space: normal;
	vertical-align: top;
}
table.SearchResults td.norecords { 
	text-align: center;
}
table.SearchResults td div.truncate  { 
	display: -webkit-box;
    -webkit-box-orient: vertical;	
    -webkit-line-clamp: 5;
    line-clamp: 4;
	overflow: hidden;
	text-overflow: ellipsis;
} 
img.SearchPoster {
	width: 300px;
	height: 450px;
}
div#overlaysearchposterC {
	overflow: hidden;
}
table.SearchResults caption span a.NavLinks {
    color: #000000;
}
table.SearchResults caption span a.NavLinks.NavLinksDisabled {
    color: #999999;	
}
table.SearchResults caption span.NavLinksRecordCount {
	color: #999999;
}

@media (max-width: 900px) {
	div#overlayaddseriesC {
		width: 100vw;
		height: 90vh;
		margin-left: -50vw;
		margin-top: -45vh;
	}
	div#SeriesSearchDiv {
		width: 90%;
	}
	input#SeriesSearchBox {
		width: 100%;
	}
	input#SeriesSearchSubmit { 
		/*display: none;*/
	}
	div#SeriesSearchResults {
		width: 100%;
	}

	table#SearchResults, 
	table#SearchResults caption,
	table#SearchResults thead, 
	table#SearchResults tbody, 
	table#SearchResults th, 
	table#SearchResults td, 
	table#SearchResults tr { /* Force table to not be like tables anymore */
		display: block;
	}
	table#SearchResults {
		margin: 5px;
	}
	table#SearchResults caption {
		padding: 0px 5px;
	}
	table#SearchResults thead tr { /* Hide table headers (but not display: none;, for accessibility) */
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	table#SearchResults tr { border: 1px solid #ccc; margin: none; }
	table#SearchResults td { /* Behave like a row */
		width: 100vw;
		border: none;
		position: relative;
		padding: 5px;
		text-align: center;
		white-space: normal;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	
	table.SearchResults tbody td:nth-child(1) /* Poster */
	{ min-width: 100%; max-width: 100%; } 
	table.SearchResults tbody td:nth-child(1) img { max-width: 50px; cursor: pointer; } /* Poster image */
	table.SearchResults tbody td:nth-child(1) span { font-size: 50px; user-select: none; } /* TV Icon */
	table.SearchResults tbody td:nth-child(2) /* Series ID */ 
	{ height: 0px; font-size: 0em; opacity:0; } 
	table.SearchResults tbody td:nth-child(3) /* Name */
	{ min-width: 100%; max-width: 100%; font-size: 1.2em; }
	table.SearchResults tbody td:nth-child(4) /* Year */
	{ min-width: 100%; max-width: 100%; } 
	table.SearchResults tbody td:nth-child(5) /* Overview */
	{ min-width: 100%; max-width: 100%; } 

}


/** ---------------------------------------------------------------------------
 * ADD OR EDIT TV SERIES
 --------------------------------------------------------------------------- */

div#overlayviewseriesC {
	background-color: #FAFAFA;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-top: -330px;
	margin-left: -450px;
	width: 900px;
	height: 660px;
	scrollbar-gutter: stable both-edges; 
}

div.EditSeriesWrapper {
	margin-top: 10px;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-evenly;
	gap: 10px;
	position: relative;
	height: calc(100% - 50px);
	width: calc(100% - 150px);
}
div.EditSeriesLeft { width: 20%; }
div.EditSeriesRight { width: 80%; }

div.EditSeriesLeft > div { 
	width: 100%; 
	margin: 10px 0px
}

img#editSeries_Poster { max-width: 100%; }

input.EditSeriesButton {
	margin: 5px;
	width: 40px;
	background-color: #E7E7E7;
	border: 2px solid #E7E7E7;
	border-radius: 3px;
	font-size: 1.1em;
	padding: 3px 3px;
	height: 33px;
	transition-duration: 0.4s;
}
input.EditSeriesButton:hover {
	background-color: #FFFFFF;
}
input#EditSeriesCancel, input#EditSeriesSubmit { width: 80px; }

.editSeriesTabs { 
	position:absolute; 
	min-width:100%; max-width:100%; 
	min-height:100%; max-height:100%; 
	margin:0px 0; 
	background:#F1F1F1; overflow:auto;
	border:1px solid #ccc;	
}
.editSeriesTab { float:left; }
.editSeriesTab label.editSeriesTabLbl { 
	cursor: pointer;
	background:#F1F1F1;
	padding:10px;
	position:relative; top:5px;
	-webkit-user-select:none;
}
.editSeriesTab label.editSeriesTabLbl:hover{ background:#CCCCCC; }
.editSeriesTab [type=radio]{ display:none; }
.editSeriesTabContent { border-top:1px solid #ccc; position:absolute; top:25px; left:0; right:0; bottom:0; background:white; padding:15px; overflow:auto; }
[type=radio].editSeriesRadio:checked ~ label.editSeriesTabLbl { background:#616161; color:#FFFFFF; border-bottom:1px solid white; }
[type=radio].editSeriesRadio:checked ~ label.editSeriesTabLbl ~ .editSeriesTabContent { z-index:1; }

table.EditSeries {
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0px;
    border: 1px solid black;
    border-left: 0px; border-right: 0px;
    margin: 0px auto;
    padding: 0px;  
    background-color: #FFFFFF;
	color: #000000;
    text-align: left;
	font-size: 1em;
	width: 100%;
}
table.EditSeries tr {
    border: 0px;
    padding: 0px;
    margin: 0px;
}
table.EditSeries tr:nth-child(odd) {
    background-color: #FFFFFF;
}
table.EditSeries tr:nth-child(even) {
    background-color: #FFF5EE;
}
table.EditSeries th { 
	width: 150px;
    padding: 5px 10px;
    margin: 0px;
	vertical-align: top;
} 
table.EditSeries td { 
    padding: 5px 10px;
    margin: 0px;
	vertical-align: top;
}

table#EditSeries span.PlaceholderExamples {
	display: block;
	font-size: 0.7em;
	color: #999999;
}

input#editSeries_ID { width: 90px; }
input#editSeries_Name { width: 300px; }
input#editSeries_Sortname { width: 300px; }
input#editSeries_BaseFolder { width: 400px; }
input#editSeries_SeasonFolder { width: 200px; }
input#editSeries_Alias { width: 350px; }

div#EditSeriesStatus {
	font-weight: bold;
	color: red;
}

div.EditSeriesRight h2 {
	clear: left;
	margin-top: 20px;
	margin-bottom: 5px;
	text-align: left;
}
div.displayMedia {
	margin: auto;
	text-align: left;
}
div.displayMediaSeason {
	text-align: left;
}
label.labelDisplayMediaSeason {
	font-size: 1.2em;
	cursor: pointer;
	user-select: none;
}
input[type=checkbox].ckbDisplayMediaSeason { display: none; }
div.displayMediaSeasonFiles { 
	display: none; 
	padding: 10px 10px;
}
input[type=checkbox].ckbDisplayMediaSeason:checked ~ div.displayMediaSeasonFiles { 
	display: block; 
}
input[type=checkbox].ckbDisplayMediaSeason + label:after {
	margin-left: 10px;
	content: url(/images/icon_add.png);
}
input[type=checkbox].ckbDisplayMediaSeason:checked + label:after {
	margin-left: 10px;
	content: url(/images/icon_rem.png);
}

table.MediaFilesTable {
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0px;
    border: 1px solid black;
    border-left: 0px; border-right: 0px;
    margin: 10px auto;
    padding: 0px;  
    background-color: #FFFFFF;
	color: #000000;
    text-align: left;
	font-size: 1em;
}
table.MediaFilesTable tr {
    border: 0px;
    padding: 0px;
    margin: 0px;
}
table.MediaFilesTable tr:nth-child(odd) {
    background-color: #FFFFFF;
}
table.MediaFilesTable tr:nth-child(even) {
    background-color: #FFF5EE;
}
table.MediaFilesTable th { 
    padding: 5px 10px;
    margin: 0px;
	vertical-align: top;
} 
table.MediaFilesTable td { 
    padding: 5px 10px;
    margin: 0px;
	vertical-align: top;
}

table.MediaFilesTable td:nth-of-type(1) { width: 350px; }
table.MediaFilesTable td:nth-of-type(2) { width: 130px; }
table.MediaFilesTable td:nth-of-type(3) { width: 100px; }

@media (max-width: 580px) {
	table.MediaFilesTable, 
	table.MediaFilesTable tbody, 
	table.MediaFilesTable th, 
	table.MediaFilesTable td, 
	table.MediaFilesTable tr { /* Force table to not be like tables anymore */
		display: block;
	}
	table.MediaFilesTable {
		margin: 0px;
	}
	table.MediaFilesTable tr { border: 1px solid #ccc; margin: none; }
	table.MediaFilesTable th { display: none; }
	table.MediaFilesTable td { /* Behave like a row */
		border: none;
		position: relative;
		padding-left: 25%;
		padding-right: 5px;
		width: 100%;
		text-align: left;
		/*white-space: nowrap;*/
		overflow: hidden;
		/*text-overflow: ellipsis;*/
	}
	table.MediaFilesTable td:before {
		position: absolute;
		top: 5px;
		left: 5px;
		width: 20%;
		padding-right: 5px;
		white-space: nowrap;
		font-weight: 600;
	}
	table.MediaFilesTable td:nth-of-type(1), 
	table.MediaFilesTable td:nth-of-type(2), 
	table.MediaFilesTable td:nth-of-type(3) { width: 100%; }
	table.MediaFilesTable td:nth-of-type(1):before { content: "File"; }
	table.MediaFilesTable td:nth-of-type(2):before { content: "Resolution"; }
	table.MediaFilesTable td:nth-of-type(3):before { content: "Runtime"; }
}

@media (max-width: 900px) {
	div#overlayviewseriesC {
		width: 100vw;
		height: 90vh;
		margin-left: -50vw;
		margin-top: -45vh;
		overflow: scroll;
	}
	div.EditSeriesWrapper {
		margin: 10px 0 10px 0;
		flex-direction: column;
		gap: 10px;
		width: 100%;
	}
	div.EditSeriesLeft { width: 100%; }
	div.EditSeriesLeft > div { width: 100%; }
	div.EditSeriesPoster { width: 100%; }
	div.EditSeriesRight { width: 100%; }

	table#EditSeries, 
	table#EditSeries caption,
	table#EditSeries thead, 
	table#EditSeries tbody, 
	table#EditSeries th, 
	table#EditSeries td, 
	table#EditSeries tr { /* Force table to not be like tables anymore */
		display: block;
		text-align: center;
	}
	table#EditSeries {
		margin: 0px;
	}
	table#EditSeries caption {
		padding: 0px 5px;
	}
	table#EditSeries thead tr { /* Hide table headers (but not display: none;, for accessibility) */
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	table#EditSeries tr { border: 1px solid #ccc; margin: none; }
	table#EditSeries td { /* Behave like a row */
		width: 100vw;
		border: none;
		position: relative;
		padding: 5px;
		text-align: center;
		white-space: normal;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	
	table.EditSeries tbody th { min-width: 100%; max-width: 100%; font-size: 1.2em; }
	table.EditSeries tbody td { min-width: 100%; max-width: 100%; } 
	input#editSeries_ID { width: 95%; }
	input#editSeries_Name { width: 95%; }
	input#editSeries_Sortname { width: 95%; }
	input#editSeries_BaseFolder { width: 95%; }
	input#editSeries_SeasonFolder { width: 95%; }
	input#editSeries_Alias { width: 95%; }
}


/** ---------------------------------------------------------------------------
 * APP TOOLS
 --------------------------------------------------------------------------- */

div#overlayshowtoolsC {
	background-color: #FAFAFA;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-top: -120px;
	margin-left: -400px;
	width: 800px;
	height: 240px;
}

input#ShowToolsCancel {
	margin: 10px;
	width: 100px;
	background-color: #E7E7E7;
	border: 2px solid #E7E7E7;
	border-radius: 3px;
	font-size: 1.1em;
	padding: 3px 15px;
	height: 33px;
	transition-duration: 0.4s;
}
input#ShowToolsCancel:hover {
	background-color: #FFFFFF;
}

ul.toolsLinks {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-evenly;
	align-self: center;
    list-style: none;
	margin: 0; 
	cursor: pointer;
	user-select: none;
}
ul.toolsLinks li {
	padding: 3px 15px;
	border-radius: 7px;
	transition-duration: 0.4s;
	width: 120px;
	height: 100px;
}
ul.toolsLinks li a {
	font-size: 2em;
}
ul.toolsLinks li label {
	display: block;
	color: #333333;
	cursor: pointer;
	
}
ul.toolsLinks li:hover {
	background-color: #E7E7E7;
}


@media (max-width: 510px) {
	div#overlayshowtoolsC {
		width: 100vw;
		height: 90vh;
		margin-left: -50vw;
		margin-top: -45vh;
	}
	
}

div#overlayshowtoolssuccessC {
	background-color: #FAFAFA;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-top: -20px;
	margin-left: -200px;
	width: 400px;
	height: 40px;
	overflow: hidden;
}
@media (max-width: 400px) {
	div#overlayshowtoolssuccessC {
		width: 100vw;
		margin-left: -50vw;
	}
}


/** ---------------------------------------------------------------------------
 * VIEW SERIES STATUSES
 --------------------------------------------------------------------------- */
 
div#overlayviewstatusC {
	background-color: #FAFAFA;
	margin-top: -45vh;
	margin-left: -45vw;
	width: 900px;
	height: 800px;
	text-align: center;
	overflow: hidden;
}

.statusTabs { 
	position:relative; min-width:100%; max-width:100%; min-height:calc(100%  - 50px); max-height:calc(100%  - 50px); margin:0px 0; 
	background:#F1F1F1; overflow:auto;
	border:1px solid #ccc;
}
.statusTab { float:left; }
.statusTab label { 
	cursor: pointer;
	background:#F1F1F1;
	padding:10px;
	position:relative; top:5px;
	-webkit-user-select:none;
}
.statusTab label:hover{ background:#CCCCCC; }
.statusTab [type=radio]{ display:none; }
.statusTabContent { border-top:1px solid #ccc; position:absolute; top:25px; left:0; right:0; bottom:0; background:white; padding:15px; overflow:auto; }
[type=radio].statusRadio:checked ~ label { background:#616161; color:#FFFFFF; border-bottom:1px solid white; }
[type=radio].statusRadio:checked ~ label ~ .statusTabContent { z-index:1; }

div.statusMissingWrapper {
	display: row;
	flex-direction: column;
	justify-content: flex-start;
	flex-wrap: wrap;
	text-align: left;
}
div.statusMissingSeries {
/*	margin: 5px 10px;
	background-color: blue;*/
}
div.statusMissingName {
	float: left;
	width: 150px;
	height: 100%;
	margin: 5px 10px;
	text-align: left;
	font-weight: 700;
}
div.statusMissingSeasons {
	float: left;
	width: 600px;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin: 5px 10px;
	user-select: none;
	cursor: default;
	text-align: center;
}

div.statusMissingSeasons span {
	min-width: 55px;
	border-radius: 3px;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin: 3px;
}
span.statusMissingNoneFlag {
	background-color: #33F577;
}
span.statusMissingButNotReleasedSeasonFlag {
	background-color: #71797E;
	color: #FFFFFF;
	cursor: pointer;
}
span.statusMissingSomeSeasonFlag {
	background-color: #FFC000;
	color: #000000;
	cursor: pointer;
}
span.statusMissingAllSeasonFlag {
	background-color: #FA5320;
	color: #FFFFFF;
	cursor: pointer;
}
span.statusMissingSeason {
	font-weight: 600;
	pointer-events: none;
}
span.statusMissingReport {
	pointer-events: none;
}

@media (max-width: 900px) {
	div#overlayviewstatusC {
		width: 100vw;
		height: 90vh;
	}
	div.statusMissingSeasons {
		width: 100%;
	}
	div.statusMissingName {
		width: 100%;
	}
}

/** ---------------------------------------------------------------------------
 * DISPLAY MISSING EPISODES STATUS
 --------------------------------------------------------------------------- */
 
div#overlayshowmissingepsC {
	background-color: #FAFAFA;
	margin-top: -300px;
	margin-left: -300px;
	width: 600px;
	height: 600px;
	text-align: center;
	overflow: auto;
}

table.MissingEpsTable {
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0px;
    border: 1px solid black;
    border-left: 0px; border-right: 0px;
    margin: 10px auto;
    padding: 0px;  
    background-color: #FFFFFF;
	color: #000000;
    text-align: left;
	font-size: 1em;
}
table.MissingEpsTable tr {
    border: 0px;
    padding: 0px;
    margin: 0px;
}
table.MissingEpsTable tr:nth-child(odd) {
    background-color: #FFFFFF;
}
table.MissingEpsTable tr:nth-child(even) {
    background-color: #FFF5EE;
}
table.MissingEpsTable th { 
    padding: 5px 10px;
    margin: 0px;
	vertical-align: top;
} 
table.MissingEpsTable td { 
    padding: 5px 10px;
    margin: 0px;
	vertical-align: top;
}

table.MissingEpsTable td:nth-of-type(1) { width: 60px; }
table.MissingEpsTable td:nth-of-type(2) { width: 350px; overflow: ellipsis; }
table.MissingEpsTable td:nth-of-type(3) { width: 100px; }

@media (max-width: 600px) {
	div#overlayshowmissingepsC {
		width: 100vw;
		height: 90vh;
		margin-left: -50vw;
		margin-top: -45vh;
		overflow: scroll;
	}
	
	table.MissingEpsTable, 
	table.MissingEpsTable tbody, 
	table.MissingEpsTable th, 
	table.MissingEpsTable td, 
	table.MissingEpsTable tr { /* Force table to not be like tables anymore */
		display: block;
	}
	table.MissingEpsTable {
		margin: 0px;
	}
	table.MissingEpsTable tr { border: 1px solid #ccc; margin: none; }
	table.MissingEpsTable th { display: none; }
	table.MissingEpsTable td { /* Behave like a row */
		border: none;
		position: relative;
		padding-left: 25%;
		padding-right: 5px;
		width: 100%;
		text-align: left;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	table.MissingEpsTable td:before {
		position: absolute;
		top: 5px;
		left: 5px;
		width: 20%;
		padding-right: 5px;
		white-space: nowrap;
		font-weight: 600;
	}
	table.MissingEpsTable td:nth-of-type(1), 
	table.MissingEpsTable td:nth-of-type(2), 
	table.MissingEpsTable td:nth-of-type(3) { width: 100%; }
	table.MissingEpsTable td:nth-of-type(1):before { content: "Episode"; }
	table.MissingEpsTable td:nth-of-type(2):before { content: "Title"; }
	table.MissingEpsTable td:nth-of-type(3):before { content: "Airdate"; }
}

/** ---------------------------------------------------------------------------
 * DISPLAY ACTIVITY LOG
 --------------------------------------------------------------------------- */
 
div#overlayshowlogC {
	background-color: #FAFAFA;
	margin-top: -45vh;
	margin-left: -45vw;
	width: 90vw;
	height: 90vh;
	text-align: left;
	overflow: hidden;
}
div.displayLogFileWrapper {
	width: 90vw; height: 90vh;
	overflow: auto;
}


/** ---------------------------------------------------------------------------
 * INFORMATION ICONS AND ACCOMPANYING TOOLTIPS
 --------------------------------------------------------------------------- */

.infoIcon {
	cursor: pointer;
	user-select: none;
	margin-left: 10px;
	color: #0e86ff;
	font-size: 0.8em;
}
.mediaAuditInfoTooltip {
	pointer-events: none;
	opacity: 0;
	transition: opacity 0.3s ease;
	width: 180px;
	background-color: #ECECEC;
	color: #000000;
	text-align: center;
	border: 1px solid #CCCCCC;
	border-radius: 6px;
	padding: 5px;
	
	position: absolute;
	z-index: 10000;
	display: flex;
	flex-direction: column;
}
.mediaAuditInfoTooltip > span {
	margin: 2px;
	padding: 3px;
	font-weight: normal;
	font-size: 0.7em;
}
.mediaAuditInfoIcon:hover .mediaAuditInfoTooltip { 
	opacity: 1;
} 


/** ---------------------------------------------------------------------------
 * TABLE NAVBAR DEFAULTS
 --------------------------------------------------------------------------- */

caption.NavLinks {
    clear: both;	
}
span.NavLinks {
    float: left;
	user-select: none;
	color: #CECECE;
}
a.NavLinks {
    text-decoration: none;
    color: #CECECE;
    font-weight: bold;
	cursor: pointer;
}
a.NavLinksDisabled {
    pointer-events: none;
    cursor: default;
    color: #999999;	
}
span.NavLinksRecordCount {
    float: right;
	color: #CECECE;
	font-size: small;
	font-style: italic;
	font-variant: small-caps;
	user-select: none;
}
input[type='text'].NavLinksIndex, 
input[type='text'].NavLinksCurrPage,
input[type='text'].NavLinksPageLimit {
	display: none;
}


/** ---------------------------------------------------------------------------
 * OVERLAY STANDARD DESIGN
 --------------------------------------------------------------------------- */
div.overlayA {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    zoom: 1;
	background-image: url(./images/overlay.png);
	background-color: #000000;
    filter: alpha(opacity=50);
    opacity: 0.5;
	/*backdrop-filter: blur(3px);*/
    display: block;
}
div.overlayB {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 50%;
    display: block;
}
div.overlayC {
    position: fixed;
    top: 50%;
    left: 50%;
    padding: 10px;
    overflow: auto;
    border: 1px solid #D0D0D0;
    border-radius: 10px;
	box-shadow: 5px 10px 8px #2F4F4F;
    background-color: #FFFAF0;
    color: #000000;
    text-align: center;
}
p.overlaywindowclose {
	position: absolute;
	top: 0px;
	right: 5px;
	margin: 0px;
	padding: 0px;
	font-family: Arial Black,Arial Bold,sans-serif;
	font-weight: bold;
	font-size: 1.1rem;
	color: white;
	text-shadow: 1px 1px 2px black, 0 0 25px blue, 0 0 5px darkblue;
	cursor: pointer;
	user-select: none;
}

span.dialogSuccess::before {
	content: '\2705'; /* Hex code - https://www.w3schools.com/charsets/ref_emoji.asp */
	font-size: 1.2em;
	margin-right: 10px;
}
span.dialogFail::before {
	content: '\274C'; /* Hex code - https://www.w3schools.com/charsets/ref_emoji.asp */
	font-size: 1.2em;
	margin-right: 10px;
}