/* Copyright 2026 - Herber eDevelopment - Jaroslav Herber */

.mouse-controls {
	position: absolute;
	z-index: 21;
	width: 60px;
	opacity: 0;
	color: #fff;
	text-align: center;
	line-height: 70px;
}

#nav_activator {
	left: 4px;
	top: 6px; bottom: 6px;
	height: auto;
	transition: opacity 0.2s;
	background: url('data:image/svg+xml;charset=UTF-8,<svg viewBox="0 0 24 24" fill="white" xmlns="http://www.w3.org/2000/svg"><rect x="3" y="6" width="18" height="2" rx="1"/><rect x="3" y="11" width="18" height="2" rx="1"/><rect x="3" y="16" width="18" height="2" rx="1"/></svg>') no-repeat center center;
	background-size: 24px 24px;
}

#epg_activator {
	left: 6px; right: 6px;
	top: 0;
	height: 70px;
	width: auto;
	z-index: 5;
}

	.epg-enabled #epg_activator {
		z-index: 2;
	}

#controls_activator {
	height: 100px;
	width: auto;
	left: 6px; right: 6px;
	bottom: 0;
	z-index: 3;
	transition: opacity 0.2s;
}

.android #controls_activator {
	display: none;
}

.mousemove .mouse-controls {
	opacity: 1;
}

#playback_controller {
	display: block;
	position: absolute;
	z-index: 22;
	bottom: 0;
	left: 0;
	padding-top: 14px;
	width: 100%;
	height: 100px;
	text-align: center;
	color: #fff;
	transform: translateY(400px);
	transition: transform 0.5s;
	background: rgba(0,0,0,0.8);
}

#custom_controls {
	display: flex;
	width: 100%;
	padding: 0 3%;
	box-sizing: border-box;
	font-size: 13px;
	align-items: center;
	opacity: 0;
	transition: all 0.2s;
}

#controls_arrow {
	text-shadow: 0 0 4px #000;
}

.controls .control-item {
	border: none;
	height: 32px;
	width: 32px;
	margin: 10px;
	padding: 1px 2px;
	box-sizing: border-box;
	cursor: pointer;
	opacity: 0;
	transition: opacity 0.2s;
}

.controls .control-item svg {
	display: none;
	fill: #fff;
}

#backwards, #forwards {
	/*display: none;*/
}

.volume-100 .icon-volume-100,
.volume-50 .icon-volume-50,
.volume-0 .icon-volume-0,
.icon-off, .icon-visible,
.active .icon-on {
	display: block !important;
}

.active .icon-off {
	display: none !important;
}

#time_progress {
	font-size: 13px;
	position: absolute;
	right: 3%;
	top: 4px;
	opacity: 0;
	transition: all 0.2s;
}

#progress_container {
	flex-grow: 1;
	cursor: pointer;
	height: 8px;
	margin: 10px 3%;
	opacity: 0;
}

#progress {
	display: block;
	width: 100%;
	height: 10px;
	margin: 0;
	border: none;
	overflow: hidden;
	color: var(--theme-highlight);
	background: #fff;
	/*box-shadow: 0 0 6px 0 rgba(255, 255, 255, 1);*/
	border-radius: 10px;
	opacity: 0.8;
	font-size: 18px;
}

#progress[data-state="fake"] {
	background: var(--theme-highlight);
	height: 65%;
}

#progress_bar {
	width: 0%;
	height: 100%;
	display: inline-block;
	background-color: var(--theme-highlight);
}


#progress::-webkit-progress-value {
	background: var(--theme-highlight);
}

#progress::-moz-progress-bar {
	background: var(--theme-highlight);
}

#progress::-webkit-progress-bar {
	background: #fff;
}


#volume_control {
	position: relative;
}

	#volume_progress_container {
		opacity: 0;
		position: absolute;
		top: -7px;
		right: -110px;
		height: 44px;
		transition: opacity 0.2s;
	}

	#volume_control:hover #volume_progress_container {
		opacity: 1;
	}

	#volume_bar {
		width: 100px;
		height: 4px;
		margin: 20px 0 0;
		padding: 0;
		cursor: pointer;
		background: #fff;
		appearance: none;
		border-radius: 2px;
		box-shadow: 0 0 10px #000;
		opacity: 0.8;
	}


#volume_control input[type=range]::-moz-range-thumb {
	height: 16px;
	width: 16px;
	border-radius: 16px;
	border: none;
	background: var(--theme-highlight);
	appearance: none;
	box-shadow: 0 0 12px 3px var(--theme-light);
}

#volume_control input[type=range]::-webkit-slider-thumb {
	height: 16px;
	width: 16px;
	border-radius: 16px;
	border: none;
	background: var(--theme-highlight);
	appearance: none;
	box-shadow: 0 0 12px 3px var(--theme-light);
}

.controls-enabled #playback_controller,
#playback_controller.show-volume {
	transform: translateY(0);
}

.controls-enabled #controls_arrow,
.show-volume #controls_arrow {
	display: none;
}

.show-volume .control-item,
.show-volume #progress_container {
	opacity: 0;
}

.controls-enabled #time_progress,
.controls-enabled #progress_container,
.controls-enabled #custom_controls,
.controls-enabled .controls .control-item,
.show-volume #custom_controls,
.show-volume #volume_progress_container,
.show-volume #volume_control {
	opacity: 1;
}

@media only screen and (max-width: 620px) {

	#volume_progress_container {
		top: -74px;
		left: -36px; /* half width of the button + margins */
		right: auto;
	}

}



/*
#channel_settings {
	position: fixed;
	z-index: 4;
	width: 100%;
	height: 100%;
	min-height: 800px;
	top: 0;
	left: 0;
}

	#channel_settings_content {
		position: absolute;
		z-index: 2;
		left: 50%; top: 50%;
		transform: translateX(-50%) translateY(-50%);
		width: 400px;
		min-height: 200px;
		max-height: 50%;
		overflow: auto;
		padding: 20px;
		border-radius: 2px;
		border: 1px solid #bbb;
		box-shadow: 0 0 16px 0 #454545;
		color: #fff;
		background: #222;
	}

.channel-settings-opened #channel_settings {
	display: block;
}

.channel-setting {
	padding: 0 0 10px;
}

	.channel-setting label {
		display: block;
	}

	.channel-setting p {
		font-size: 80%;
		margin: 0;
	}
*/



#context_menu {
	z-index: 43;
}

#context_headline {
	display: flex;
	margin: 5%;
	align-items: center;
}

	#context_channel_headline {
		padding: 6px 0;
		margin: 2px 0;
		white-space: nowrap;
		height: 64px;
		width: 100%;
		line-height: 64px;
		position: relative;
		display: flex;
		align-items: center;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	#context_menu_title {
		width: 80%;
		cursor: pointer;
	}

		#context_channel_headline .list-ch,
		#smart_epg_channel .list-ch {
			border: 0;
			background: var(--theme-highlight);
			border-radius: 4px;
			padding: 0 16px;
			font-size: 40px;
		}

		#smart_epg_channel .list-ch {
			margin: 0 20px;
		}

		#smart_epg_channel .list-name {
			min-width: 1px;
		}

	#context_headline .nav_logo {
		margin: 0 0 0 auto;
	}

.context-menu {
	max-width: 600px;
	width: 86%;
	padding: 0;
	overflow: auto;
}

	.context-menu ul {
		margin: 0;
	}


/* Smart controls */
#smart_controls {
	display: none;
	position: absolute;
	z-index: 10;
	left: 5%; right: 5%;
	top: 50%;
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
	transition: all 0.2s;
	opacity: 0.9;
}

#smart_controls_arrows {
	width: 120px;
	height: 120px;
	margin: auto;
	background: url(../images/smart-controls.svg), radial-gradient(#222 20%, #888 45%, #444 67%, #222 100%);
	border-radius: 80px;
	box-shadow: 0 0 40px var(--theme-dark);
	overflow: visible;
	transition: all 0.5s;
}

#smart_controls.epg {
	top: 390px;
	bottom: auto;
}

#smart_controls.playback {
	top: calc(100% - 240px);
}

.full-epg-desc #smart_controls {
	top: 80%;
	bottom: auto;
	margin-top: -20px;
}

#smart_controls.playback #smart_controls_arrows {
	background: url(../images/smart-controls.svg), radial-gradient(var(--theme-dark) 20%, var(--theme-light) 45%, var(--theme-moderate) 67%, var(--theme-dark) 100%);
}

	.smart-arrow {
		position: absolute;
		text-shadow: 0 0 3px #000, 0 0 10px #000;
	}

	#smart-arrow-left {
		top: 50%; left: 0;
		text-align: right;
		transform: translateY(-50%);
		width: 50%;
		padding-right: 70px;
	}

	#smart-arrow-right {
		top: 50%; left: 50%;
		transform: translateY(-50%);
		width: 50%;
		padding-left: 70px;
	}

	#smart-arrow-down {
		top: 100%; left: 50%;
		transform: translateX(-50%);
		padding-top: 4px;
	}

	#smart-arrow-up {
		bottom: 100%; left: 50%;
		transform: translateX(-50%);
		padding-bottom: 4px;
	}

	#smart-button-ok {
		top: 74%; left: 50%;
		width: 50%;
		padding-left: 60px;
	}

	#smart-center {
		display: none;
		width: 40px;
		height: 40px;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		fill: var(--theme-moderate);
		stroke: var(--theme-moderate);
	}

		.playback #smart-center {
			display: block;
		}

	#smart_controls_arrows::before {
		content: '';
		width: 66px;
		height: 2px;
		background: var(--theme-light);
		transform: rotate(34deg);
		transform-origin: top left;
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
	}

	.playback #smart_controls_arrows::before,
	.epg #smart_controls_arrows::before {
		display: none;
	}

	.epg #smart-button-ok {
		display: none;
		color: var(--theme-highlight);
		width: auto;
		padding: 0 0 0 6px;
		top: 50%;
		transform: translate(-50%, -50%);
		font-size: 36px;
		line-height: 36px;
		text-shadow: none;
	}

	.arch-play-icon #smart-button-ok {
		display: block;
	}

#smart_epg_current {
	padding-top: 40px;
}

#smart_epg {
	display: none;
	position: absolute;
	z-index: 10;
	top: 0;
	width: 100%;
	max-height: 370px;
	background: rgba(0,0,0,0.8);
	padding: 100px 0 16px 0;
	text-align: center;
	transition: max-height 0.2s;
}

#smart_xtream_info {
	display: none;
	margin: 10px 4%;
	max-height: 246px;
	overflow: hidden;
}

	#smart_epg_channel {
		position: absolute;
		top: 18px; left: 0; right: 0;
		font-size: 160%;
		padding: 0 3%;
		height: 70px;
		line-height: 70px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		display: flex;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: center;
	}

		#smart_epg_channel img {
			width: auto;
			height: auto;
			max-height: 70px;
			max-width: 130px;
			padding: 0 6px;
		}

		#smart_epg_current #channel_info_epg_timeline {
			margin: 30px 0 0;
		}

.live #channel_info_epg_title::before, .arch #channel_info_epg_title::before {
	content: 'Live';
	background: #f00;
	border-radius: 16px;
	padding: 4px 8px;
	margin-right: 10px;
	line-height: 25px;
	font-size: 18px;
}

.arch #channel_info_epg_title::before {
	content: 'Archive';
	background: var(--theme-moderate);
}

.show-top-epg #smart_epg,
.show-program-browser #smart_epg,
.smart-controls-enabled #smart_controls,
.show-top-epg #smart_epg {
	display: block;
}

.lg #custom_controls,
.samsung #custom_controls,
.no-epg #channel_info #channel_epg,
.show-program-browser #smart_epg_current {
	display: none;
}

.no-epg #smart_epg_current {
	display: block;
}

.show-program-browser #smart_epg {
	height: 370px;
}

.no-epg #smart_epg {
	height: auto !important;
}

.full-epg-desc #smart_epg {
	height: 100%;
	max-height: 80%;
}

.full-epg-desc #clock {
	top: 80%;
}