@font-face {
    font-family: Inter;
    src: url('../fonts/Inter/Inter-VariableFont_opsz,wght.ttf');
}
@font-face {
    font-family: 'Material Icons';
    font-style: normal;
    font-weight: 400;
    src: url(../vendors/material_icons/MaterialIcons-Regular.eot); /* For IE6-8 */
    src: local('Material Icons'),
    local('MaterialIcons-Regular'),
    url(../vendors/material_icons/MaterialIcons-Regular.woff2) format('woff2'),
    url(../vendors/material_icons/MaterialIcons-Regular.woff) format('woff'),
    url(../vendors/material_icons/MaterialIcons-Regular.ttf) format('truetype');
}
button, body, input, select, textarea, th { /* just like angular material set Inter on all (and th for detailview) */
    font-family: 'Inter', sans-serif;
    font-weight: 300;
}
h1, h2, h3 {
    font: unset;
}
h1 {
    font-size: 1.6em;
    font-weight: 600;
}
h2 {
    font-size: 1.3em;
    font-weight: 600;
}
a {
    text-decoration: none;
    color: unset;
}
.font-weight-400 {
    font-weight: 400;
}
.font-weight-600 {
    font-weight: 600;
}
.font-size-m {
    font-size: 1.2em;
}
.font-size-l {
    font-size: 1.4em;
}
.font-size-xl {
    font-size: 1.6em;
}
a.invisibleAccessabilityLink {
    font-size: 1.2em;
    background-color: white;
    color: black;
    padding: 0.3em;
    position: absolute;
    z-index: 100;
    top: 0;
    left: 0;
    transform: translate(-200%,0);
}
a.invisibleAccessabilityLink:focus-visible {
    transform: none;
}
.showRecorded a.showTitle {
    margin-top: 0;
}
.showRecorded:after {
    content: "";
    background: -webkit-linear-gradient(left, red, rgba(0,0,0,0) 100%);
    display: block;
    height: 6px;
    width: 100%;
    position: absolute;
    top: 0;
}

.hideScrollbar {
    scrollbar-width: none; /* Firefox */    
    -ms-overflow-style: none;  /* IE 10+ */
}
.hideScrollbar::-webkit-scrollbar {
    display: none; /* Chrome */
}

.noselect {
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none;
}

.singleRecordsIcons{
    font-size: 1.4em;
    display: flex;
    align-items: end;
    justify-content: end;
    margin-right: 35px;
}
.singleRecordsIcons * {
    width: 2em;
    display: flex;
    align-self: center;
    align-items: center;
    justify-content: center;
}
.singleRecordsIcons *:hover{
    cursor: pointer;
}
.radioClear {
    width: 50px;
    height: 50px;    float: right;
    position: relative;
    cursor: pointer;
}
.radioClear:hover,
.radioClear:focus,
.radioClear:active {
    outline:none;
}
ul.modalScroll {
    width: 100%;
    float: left;
    height:100%;
    max-height: 150px;
    overflow-x: hidden;
}

.opacity50 { opacity: 0.5; }
.opacity60 { opacity: 0.6; }
.opacity100 { opacity: 1; }

.detailOverviewClose {
    width: 30px;
    height: 30px;
    position: fixed;
    top: 150px;
    right: 10px;
    z-index: 9999999;
    cursor:pointer;
    font-size: 1.4rem;
}
.detailOverviewClose {
    filter: drop-shadow(1px 1px 3px rgb(0 0 0 / 0.4));
}
#detailviewChannelLogo {
    position: fixed;
    top: 160px;
    left: 3%;
    filter: drop-shadow(1px 1px 3px rgb(0 0 0 / 0.5));
}
#detailviewChannelLogo.lightShadow {
    filter: drop-shadow(1px 1px 3px rgb(255 255 255 / 0.55));
}
.mobileIcon {
    display: none;
}

body {
    background: none;
    height:auto!important;
}
.bodyHeaderIsHidden .main_tv_categorie_sender {
    top: 0;
   
}
.bodyHeaderIsHidden .scrollbar_tv_categorie_sender{
	height: calc(100% - 135px);
}
.bodyHeaderIsHidden .scrollbar_tv_categories_programm{
	height: calc(100% - 220px);
}
.bodyHeaderIsHidden .playerStyle {
	top:0;
    height:100%!important;
}

.bodyHeaderIsHidden .webclient.zapperBackColor.zapperForeColor.header_tv_hover.ng-scope,
.bodyHeaderIsHidden .tv_header_right{
	top:0;
}
* {box-sizing: border-box;}

@media screen and (max-width: 800px) {
	.header_tv_hover {
        top: 100px;
	}
}
@media screen and (max-width: 550px) {
	.desktopIcon {
	    display: none;
	}
	.mobileIcon {
        padding-top: 5px;
	    display:inherit;
	    font-weight:800;
	}
	p.page_focus_color.page_fore_color.ng-scope {
	    margin-right: 30px;
	}
    .tooltip{
        display: none;
    }
}

/* ------------------------------------------ Login & Login_reset Template ------------------------------------------ */

.hiddenOverride {
    display: none !important;
}
.hidden {
    display: none;
}
.input_container {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin-bottom: 17px;
    border-radius:10px;
    overflow: hidden;
    font-size:1.3em;
}
.input_container:focus-within {
    outline: 2px solid lightskyblue;
}
.input_container input::-ms-reveal,
.input_container input::-ms-clear {
  display: none;
}
.error h1{
    text-align:left;
    color:red;
    font-size:1.5em;
}
.errorMessageChannel {
    background-color: black;
    color: white;
    bottom: 0;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 9;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 1em;
    gap: 1em;
}
.errorMessageChannel * {
    max-width: 90ch;
}
.input_field {
    background: none;
    width: 92%;
    padding: 10px;
    outline: none;
    border: none;
    font-size: 1.3rem;
}
.btn {
    padding: 10px 20px;
    border: none;
    cursor: pointer;
    display: block;
    margin: 10% 0  0 auto;
    font-size: 1.3rem;
}
.btn:hover {
    cursor:pointer;
}
.changePasswordContainer {
    display: flex;
    flex-direction: column;
}

.changePasswordContainer.reverse-order {
    flex-direction: column-reverse;
}
.logoutBlock1{
	margin-bottom: 15px;
	display: block;
}

.logoutLabel{
	display: inline-block;
	width: 100px;
}

.logoutBlock1 .logoutLabel{
	width: auto;
	padding-right: 15px;
}

.txtLogout{
    margin-bottom: 10px;
    display: inline-block;
    
}

.logoutBlock1, .logoutBlock2{
	width:99%;
    border: 1px solid #ccc;
    background-color: #fff;
    padding: 10px 10px 0 10px;
    float:left;
    display: block;
    border-radius: 10px;
}
.loginCred {
    width: 100%;
	float: left;
    position: relative;
}
.logoutBtn {
    cursor: pointer;
    background-color: lightgrey;
    color: dimgrey;
    border: none;
    opacity: 0.9;
    height: auto;
    font-size: 1.2em;
    display: block;
    margin-top:50px;
}
.logoutBtn:hover {
    opacity: 1;
    cursor:pointer;
}
.login, .logout{
    max-width:40%;
    margin: 0 auto auto auto;
    padding-top: 230px;
}
.icon_log, .icon_log_right{
    margin: 10px;
    text-align: center;
    font-size: 30px;
}
.searchIcon {
    font-size: 1.7rem;
    padding: 0.95rem;
}
.icon_log_right{
    cursor:pointer;
}
.pass_for a{
    float:right;
    color:dimgrey;
    text-decoration:none;
    margin-top:15px;
}
.login h2{
    font-size: 1.8em;
}
.pass_for p{
    float:right;
    color:dimgrey;
    text-decoration:none;
    margin-top:15px;
}
.pass_for p:hover{
    cursor:pointer;
}
.text_pass{
    text-decoration:none;
    text-align:justify;
    hyphens:auto;
    word-break: break-word;
    float: left;
	
    width: 100%;
    
}
.text_pass p{
    font-size: 14px;
    text-align: left;
    margin: 20px 0 20px 0;
}
.back p, .back a{
    float:right;
    color:dimgrey;
    text-decoration:none;
    margin-top: 20px;
}
.back p:hover, .save p:hover{
    cursor:pointer;
}
.save{
    float:left;
}
.save p{
    float:left;
    font-size:1.3em;
    color:dimgrey;
    text-decoration:none;
    margin-top:25px;
}
.switch {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 34px;
    margin:25px 0 0 15px;
}
.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: .4s;
    transition: .4s;
}
.slider:before {
    position: absolute;
    content: "";
    height: 26px;
    width: 26px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
}
input:checked + .slider {
    background-color: dimgrey;
}
input:focus + .slider {
    box-shadow: 0 0 1px dimgrey;
}
input:checked + .slider:before {
    -webkit-transform: translateX(26px);
    -ms-transform: translateX(26px);
    transform: translateX(26px);
}
.slider.round {
    border-radius: 34px;
}
.slider.round:before {
    border-radius: 50%;
}
@media screen and (max-width: 1653px) {
    .save p {
        font-size:1em;
    }
    .switch {
        margin-top: 20px;
    }
    .input_field {
        width: 85%;
    }
    .btn {
        margin-top: 13%;
    }
    .login, .html404{
        padding-top:200px;
    }
}
@media screen and (max-width: 1024px) {
	.login {
	    max-width: 100%;
	    margin: 0 50px;
	}
    .input_field {
        width: 85%;
    }
    .pass_for p, .back p {
	    margin-top: 10px;
	}
    .error h1 {
        font-size: 1.2em;
    }
}
@media screen and (max-width: 415px) {
    .login {
        max-width: 100%;
    }
    .input_field {
        width: 85%;
    }
    .save p {
        margin-top:15px;
    }
    .switch {
        margin: 8px 0 0 15px;
    }
    .text_pass p{
    	font-size: 1.1em;
    }
    .pass_for p, .back p {
   		margin-top: 0;
	}
}
@media screen and (max-width: 360px) {
    .login {
        max-width: 100%;
        margin: 0 auto auto;
        
    }
    .switch {
        margin: 10px 0 0 5px;
    }
    .error h1, .text_pass p, .input_container{
        font-size: 1em;
    }
    .html404{
        padding-top:-80px;
    }
  
    .pass_for p, .save p, .back p, .back a {
        font-size: 0.9em;
    }
}

/*------------------------- PromotionWidget ----------------------- */
.grid_fourths_promotion {
    position: relative;
    width: calc(95%/2);
    padding-top: calc(55%/3);
    float: left;
    margin: 0 auto;
    display: block;
}
.grid_fourths_promotion:hover {
   cursor:pointer;
}
.overlayPromotion{
    position: absolute; 
    bottom: 15px;
    height: 70px;
    background: #e0e1e1;
    opacity: 0.9;
    width: 35%;
    margin-left: -17px;
}
.titleHomePromotion {
    float: left;
    width: 65%;
    position: absolute; 
    top: 0;
    left: 0;
    text-align: left;
    height: 30px;
    padding: 5px 0 0 15px;
    font-size: 1.2em;
    overflow: hidden;
    text-overflow: ellipsis;
}
.bottomTextPromotion {
    width: 100%;
    float: left;
    position: absolute;
    bottom: 0;
    text-align:left;
    height: 33px;
    font-size: 1.5em;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    padding: 0 15px;
}
.logoVerlaufPromotion {
    position: relative;
    top: 0;
    left: 0;
/* 	background-image: linear-gradient(to right, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0)); */
    width: 35%;
    padding: 10px;
}
.promotioninfo {
    position: absolute;
    width: 23%;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 145px;
    font-size: 1.2em;
    text-align: justify;
    padding: 10px;
    top: 25%;
    right: 2%;
}
.promotionInfoTitle {
    margin-bottom: 20px;
}
.promotionInfoText {
    hyphens: auto;
}
@media screen and (max-width: 1700px) {
    .grid_fourths_promotion {
        width: calc(110%/2);
        padding-top: calc(50%/2);
    }
    .promotioninfo {
        width: 20%;
    }
}
@media screen and (max-width: 1147px) {
    .promotionWidget {
        display:none;
    }
}

/*----------  ZOOM -----------*/
.seriesShow {
    background-color: lightgrey;
    color: #fff;
    text-transform: uppercase;
    border-radius: 20px;
    bottom: 100px;
    padding: 3px;
    font-size: 0.9em;
    position: absolute;
    right: 0;
    width: 150px;
    text-align: center;
    left: 5px;
    height: auto;
}
.newShow {
	border: 1px solid darkred;
    background-color: darkred;
    color: #fff;
    text-transform: uppercase;
    border-radius: 20px;
    bottom: 100px;
    padding: 3px;
    font-size: 0.9em;
    position: absolute;
    right: 0;
    width: 50px;
    text-align: center;
    left: 5px;
    height: auto;
}
.zoom:hover .imageBorderWidget img {
	transform: scale(1.1,1.1);
	transform-origin: center center;
	backface-visibility: hidden;
}
.zoom:hover .logoVerlauf {
	transform: translate(-10%,-22%);
}
.zoom img,
.zoom .logoVerlauf{
	transition:transform 1s;
}

/*RAdio zoom Start*/
.zoom.radio_b:hover  {
	transform: scale(1.1,1.1);
	transform-origin: center center;
	backface-visibility: hidden;
	transition: transform 1s;
}

.zoom .radio_b{
	transition: transform 1s;
}

.cursorDefault{
    cursor: default;
}

/*Radio zoom Ende*/
@media screen and (max-width: 1920px) {
	.zoom:hover .logoVerlauf {
		transform: translate(-9%,-19%);
	}
}
@media screen and (max-width: 1370px) {
	.zoom:hover .logoVerlauf {
	    transform: translate(-9%,-19%);
	}
}
@media screen and (max-width: 1370px){
	.zoom:hover .logoVerlauf {
	    transform: translate(-9%,-21%);
	}
}
@media screen and (max-width: 1250px){
	.zoom:hover .logoVerlauf {
	    transform: translate(-9%,-18%);
	}
 }
@media screen and (max-width: 1086px) {
	.zoom:hover .logoVerlauf {
		transform: translate(-9%,-24%);
	}
}
@media screen and (max-width: 950px) {
	.zoom:hover .logoVerlauf {
		transform: translate(-9%,-21%);
	}
}
@media screen and (max-width: 800px) {
	.zoom:hover .logoVerlauf {
		transform: translate(-9%,-20%);
	}
}
@media screen and (max-width: 738px) {
	.zoom:hover .logoVerlauf {
		transform: translate(-10%,-24%);
	}
}

/*------------------- Start Template ----------------*/

.main_start {
    max-width:95%;
    text-align:left;
    display:block;
    margin:0 auto 0 auto; 
    padding:180px 0;
}
.grid {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.grid_fourths, .grid_fourthsHover  {
    position: relative;
    float: left;
    margin: 15px 28px 28px 28px;
}
.grid_fourths{
	width: calc(100%/7);
    padding-top: calc(75%/7);
}
.grid_fourthsHover {
    width: calc(100%/30);
    padding-top: calc(75%/29);
}
.main_start .aufnahme .ubertxtline a, .main_start .aufnahme .ubertxtline p {
    text-align: right;
    font-size: 1.1em;
    text-decoration: none;
}
.main_start .aufnahme p {
    margin: 0 45px 0 0;
    width: auto;
}
.main_start .aufnahme p:hover, .grid_fourths:hover{
    cursor:pointer;
}

.main_start .aufnahme h1{
    font-size: 1.6em;
    margin:0 0 0 35px;
    overflow: hidden;
    width: auto;
    float: left;
}
.image_box {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}
.image_box_no_image{
    background-size: 50%;
    background-repeat: no-repeat;
    background-position: center;
}
.image_box_no_imageNo{
    background-size: 30%;
    background-repeat: no-repeat;
    background-position: center;
}
.imageWidgetDetail, img.imageWidgets.image_box_no_image {
    object-fit: contain;
    opacity: 0.7;
    padding: 0;
}
img.imageWidgets.image_box_no_image {
    object-position: center;
}
img.imageWidgets {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit:cover;
    object-position: top;
}
.imageBorderWidget {
    width: 100%;
    position: absolute;
    height: 100%;
}
.logoVerlauf {
    position: absolute;
    top: 0;
    left: 0;
/* 	background-image: linear-gradient(to right, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0)); */
    width: 55%;
    padding: 10px 10px 5px 10px;
    margin:0;
}
.logoHome {
    top: 0;
    left: 0;
    height: 40px;
    object-fit: contain;
    max-width: 100%;
}
.overlay {
    position: absolute;
    bottom: 15px;
    height: 80px;
    background: #e0e1e1;
    left:-5.3%;
    right:-5.3%;
}
.contentBorderHome {
    width:90%;
    position: relative;
    height: 65px;
    display: block;
    margin:0 auto;
}
.topTextLeft {
    width: 100%;
    position: absolute;
    top: 0;
    height: 30px;
    padding:5px 0 0 5px;
    font-size: 0.9em;
    overflow: hidden;
    text-overflow: ellipsis;
}
.bottomTextRightRecord,
.bottomTextLeftRecord {
    width: 50%;
    position: absolute;
    bottom: 0;
    height: auto;
    padding:5px 0 0 5px;
    overflow: hidden;
    text-overflow: ellipsis;
}
.topTextRight {
    text-align: right;
    float:right;
    right:0;
    margin-right:5px;
}
.topTextLeft {
    text-align: left;
    float:left;
    left:0;
}
.bottomTextRightRecord {
    text-align: right;
    float:right;
    right:0;
    bottom:0;
    padding: 0 5px;
}
.bottomTextLeftRecord {
    text-align: left;
    float:left;
    left:0;
    bottom:0;
    padding: 0 5px;
}
.bottomText {
    width: 100%;
    float: left;
    position: absolute;
    bottom: 0;
    height: 33px;
    text-align: center;
    font-size: 1.5em;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    padding:0 5px 0 5px;
    top:40px;
}
.seriesBottomText{
    display: flex;
    min-width: 0;
    justify-content: center;
}
.seriesBottomTextTitle{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    padding-right: 0.3em;
}
.seriesBottomTextNumber{
    flex-shrink: 0;
}
.topTextRecord {
    width: 100%;
    float: left;
    position: absolute;
    top: 12px;
    height: 33px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0 5px;
}
@media screen and (max-width: 2506px) {
    .grid_fourths {
        width: calc(99%/7);
        padding-top: calc(75%/7);
    }
}
@media screen and (max-width: 2366px) {
    .grid_fourths {
        width: calc(98%/7);
        padding-top: calc(75%/7);
    }
}
@media screen and (max-width: 2241px) {
    .grid_fourths {
        width: calc(97%/7);
        padding-top: calc(75%/7);
    }
}
@media screen and (max-width: 2128px) {
    .grid_fourths {
        width: calc(100%/6);
        padding-top: calc(75%/6);
    }
}
@media screen and (max-width: 1799px) {
    .grid_fourths {
        width: calc(98%/6);
        padding-top: calc(75%/6);
    }
}
@media screen and (max-width: 1714px) {
    .grid_fourths {
        width: calc(106%/5);
        padding-top: calc(80%/5);
    }
}
@media screen and (max-width: 1581px) {
    .grid_fourths {
        width: calc(104%/5);
        padding-top: calc(80%/5);
    }
}
@media screen and (max-width: 1434px) {
    .grid_fourths {
        width: calc(103%/5);
        padding-top: calc(80%/5);
    }
}
@media screen and (max-width: 1370px) {
    .grid_fourths {
        width: calc(114%/4);
        padding-top: calc(85%/4);
    }
}
@media screen and (max-width: 1250px) {
    .grid_fourths {
        width: calc(113%/4);
        padding-top: calc(85%/4);
    }
}
@media screen and (max-width: 1190px) {
    .grid_fourths {
        width: calc(112%/4);
        padding-top: calc(85%/4);
    }
}
@media screen and (max-width: 1136px) {
    .grid_fourths {
        width: calc(111%/4);
        padding-top: calc(85%/4);
    }
}
@media screen and (max-width: 1086px) {
    .grid_fourths {
        width: calc(130%/3);
        padding-top: calc(90%/3);
    }
}
@media screen and (max-width: 915px) {
    .grid_fourths {
        width: calc(129%/3);
        padding-top: calc(90%/3);
    }
}
@media screen and (max-width: 872px) {
    .grid_fourths {
        width: calc(128%/3);
        padding-top: calc(95%/3);
    }
}
@media screen and (max-width: 834px) {
    .grid_fourths {
        width: calc(127%/3);
        padding-top: calc(95%/3);
    }
}
@media screen and (max-width: 799px) {
    .grid_fourths {
        width: calc(126%/3);
        padding-top: calc(95%/3);
    }
}
@media screen and (max-width: 767px) {
    .grid_fourths {
        width: calc(125%/3);
        padding-top: calc(95%/3);
    }
}
@media screen and (max-width: 738px) {
    .grid_fourths {
        width: calc(124%/3);
        padding-top: calc(95%/3);
    }
}
@media screen and (max-width: 738px) {
    .grid_fourths {
        width: 100%;
        padding-top: 65%;
    }
    .logoHome {
	    height: 65px;
	    max-width: 135%;
    }
}
@media screen and (max-width: 650px) {
    .logoHome {
    	height: 55px;
    }
}
@media screen and (max-width: 550px) {
    .logoHome {
    	height: 40px;
    }
    .main_start .aufnahme h1 {
     	font-size: 1.3em;
	    margin-bottom: -5px;
	}
}
@media screen and (max-width: 380px) {
    .main_start .aufnahme h1 {
	    margin-top:0;
	}
}
@media screen and (max-width: 360px) {
	.main_start {
	    margin: 0 auto 0 auto;
	    padding:120px 0;
	}
	.main_start .aufnahme h1 {
	    font-size: 1.1em;
	    padding-top: 3px;
	}
}

/*------------------------------------------  Footer Template ------------------------------------------ */
#footer {
    position: fixed;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    font-size: 0.9em;
    height: 2.2rem;
    display: flex;
    align-items: center;
    padding: 0 1em;
    z-index: 10;
}

.copyrightContainer {
    display: flex;
    align-items: center;
    position: absolute;
    gap: 0.2em;
}
.singleLinkContainer, .linksContainer {
    /* space around pipes */
    gap: 0.4em;
}
.singleLinkContainer {
    display: flex;
}
.linksContainer {
    display: flex;
    justify-content: center;
    width: 100%;
}

@media (max-width: 800px) {
    #footer {
        flex-wrap: wrap;
        height: 2.8rem;
    }
    #detailview_bottom_wrapper {
        padding-bottom: 2.8rem;
    }
    .copyrightContainer {
        position: relative;
    }
}

/*------------------------------------------  Header ------------------------------------------ */
.logoNavTop {
    position: relative;
    height: 135px;
    width: 15%;
    float: left;
}
.nav_logo {
    position: absolute;
    object-fit: fill;
    height: 70%;
    margin: 20px;
    background-repeat: no-repeat;
    background-position: left center;
    background-size:contain;
    width: 100%;
}

header
{
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    background:#312828;
    z-index:90;
    height:135px;
}

@media screen and (max-width: 800px)
{
    header {
        height: 100px;
    }
    .detailOverviewClose {
        top: 110px;
        right: 10px;
    }
    #detailviewChannelLogo {
        top: 115px;
        left: 1em;
    }
}
/*------------------------------------------ Menu-Categories Template ------------------------------------------ */

.nav_header
{
    position: relative;
    width: 70%;
    left: 0;
    right: 0;
    top: 0;
    display:block;
    height: 135px;
    margin: 0 auto;
    text-align: center;
}

#navi
{
    display: flex;
    font-size: 1.8em;
    margin: 0;
    position: absolute;
    bottom: 0;
    width: 100%;
    justify-content: center;
}

#navi a
{
    width: auto;
    display: block;
    box-sizing: content-box;
    line-height: 1em;
    text-decoration: none;
    padding-bottom: 0.15em;
    margin: 0 0.75em;
}

.menuActive
{
    border-bottom: 6px solid yellow;
}

.menuInActive {
    border-bottom: 6px solid transparent;
}

.icon_nav
{
    display:none;
}

@media screen and (max-width: 1930px)
{
    #navi
    {
        font-size:1.6em;
    }
}

@media screen and (max-width: 1366px)
{
    #navi
    {
        font-size:1.5em;
    }
}
@media screen and (max-width: 1265px)
{
    #navi
    {
        font-size:1.4em;
    }
}

/* ------------- mobile menu queries --------------------*/

@media screen and (max-width: 1147px)
{

    #navi .text
    {
        display: none;
    }

    #navi .icon_nav
    {
        display: block;
        font-size:1.6em;
        padding-bottom: 0.3rem;
    }

    .menuActive, .menuInActive
    {
        border:none;
        margin-bottom: 6px;
    }

    .logoNavTop
    {
        width: 25%;
        height:100px;
    }

    .nav_logo
    {
     	margin:10px;
    }

    .nav_header
    {
        position: relative;
        width: 100%;

        left: 0;
        bottom: 0;

        float: left;

        padding: 0;
        height: 35px;
    }
}
@media screen and (max-width: 800px)
{
    .nav_header
    {
        height: 55px;
    }
    #navi .icon_nav {
        font-size: 1.3em;
    }
}
@media screen and (max-width: 690px)
{
    #navi {
        font-size: 1.2em;
    }
}

/*------------------------------------------  Menu Options Template ------------------------------------------ */
.container_options {
    position: relative;
    top: -120px;
    left: 0;
    right: 0;
    text-align: right;
    padding-right: 15px;
    height: 135px;
    margin-left: auto;
    float:right;

}
.icon_opt{
    font-size: 1.8em;
    margin: 10px 5px;
}
.container_options a:hover .icon_opt, .menuIconActive svg, .menuIconActive i {
    cursor:pointer;
}
@media screen and (max-width: 1147px) {
    .container_options {
        height: 100px;
    }
    .icon_opt {
        font-size: 1.6em;
     }
}
@media screen and (max-width: 800px) {
    .icon_opt {
        font-size: 1.3em;
     }
     .container_options {
        top: -100px;
        height: 50px;
    }
}
/*------------------------------------------  Radio Template ------------------------------------------ */
.main_radio {
    max-width:95%;
    text-align:left;
    display:block;
    margin: 0 auto 0 auto;
    padding: 180px 0 10em 0;

}.radio_imp_scroll{
    display: flex;
    flex-wrap: wrap;
}
.radio_b {
    position: relative;
    width: calc(101%/8);
    padding-top: calc(56.25%/6);
    float: left;
    margin:0 0 35px 35px;
}
.radio_left, .radio_right {
    width: 50%;
    float: left;
    height: 100%;
}
div.after, div.now {
    overflow: hidden;
    height: 50%;
}
.radio_box .logobild {
    position: absolute;
    left: 5%;
    bottom: 5%;
    width: 35%;
    height: 35%;
    object-fit: scale-down;
}
.radio_box {
    position: absolute;
    width: 100%;
    height: 100%;
    padding: 5%;
    top: 0;
    left: 0;
    right: 0;
}
.radio_box .sendername {
    overflow: hidden;
    margin-right: 5%;
}
.radio_box .radio_description {
    height: 3.7em;
    overflow: hidden;
}
.radio_b:hover{
    cursor:pointer;
}
.radio_box span {
    display: inline-block;
    padding-bottom: 5px;
}
.radio_exit_footer p:hover .radio_icon_exit{
    color:deepskyblue;
    cursor:pointer;
}
section.radio.ng-scope {
    margin-top: 45px;
}
@media screen and (max-width: 2429px) {
    .radio_b {
        width: calc(100%/8);
        padding-top: calc(56.25%/6);
    }
}
@media screen and (max-width: 2300px) {
    .radio_b {
        width: calc(103%/7);
        padding-top: calc(56.25%/5);
    }
}
@media screen and (max-width: 2000px) {
    .radio_b {
        width: calc(107%/6);
        padding-top: calc(56.25%/4);
    }
}
@media screen and (max-width: 1920px) {
    .radio_b {
        width: calc(106%/6);
        padding-top: calc(50.25%/4);
    }
}
@media screen and (max-width: 1820px) {
    .radio_b {
        width: calc(105%/6);
        padding-top: calc(50.25%/4);
    }
}
@media screen and (max-width: 1720px) {
    .radio_b {
        width: calc(104%/6);
        padding-top: calc(50.25%/4);
    }
}
@media screen and (max-width: 1620px) {
    .radio_b {
        width: calc(110%/5);
        padding-top: calc(50.25%/3);
    }
}
@media screen and (max-width: 1320px) {
    .radio_b {
        width: calc(118%/4);
        padding-top: calc(50.25%/2);
    }
    .radio_box .logobild {
        height: 150px;
        bottom: 20px;
    }
}
@media screen and (max-width: 1050px) {
    .radio_b {
        width: calc(135%/3);
        padding-top: calc(35.25%/1);
    }
}
@media screen and (max-width: 950px) {
    .radio_b {
        width: calc(132%/3);
        padding-top: calc(35.25%/1);
    }
}
@media screen and (max-width: 850px) {
    .radio_box .sendername {
        font-size: 1.1em;
    }
}
@media screen and (max-width: 750px) {
    .radio_b {
        width: 90%;
        padding-top: 66.25%;
        margin: 0 0 5% 5%;
    }
    .main_radio{
        padding:160px 0 50px 0;
    }
}

/* ---------------------------------------------------------------- Radio footer ------------------------------------------------------ */
.radioPlayer{
    position: fixed;
    /* #footer height */
    bottom: 2.2rem;
    left: 0;
    width: 100%;
    z-index: 10;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 6em;
    border-top: 2px solid;
}
@media (max-width: 800px) {
    .radioPlayer {
        bottom: 2.8rem
    }
}
.radio_footer {
    /* sizing */
    min-width: 400px;
    max-width: 1200px;
    width: 80%;
    height: 100%;
    /* inner align */
    display: flex;
    align-items: center;
}
.radio_left_player {
    /* background-color: red; */
    flex-basis: 100%;
    display: flex;
    align-items: center;
    height: 100%;
    padding: 1em;
    justify-content: flex-end;
}
.radio_middle_player {
    /* background-color: green; */
    flex-basis: 70%;
    text-align: center;
}
.radio_right_player {
    /* background-color: orange; */
    flex-basis: 100%;
    display: flex;
    align-items: center;
}

.radioPlayerLogo {
    max-width: 9em;
    max-height: 100%;
}
.radioPlayerChannelName {
    padding-left: 1em;
    font-size: 1.6em;
}
.playButtonRadio {
    font-size: 3em;
    cursor: pointer;
}
.nowPlay {
    font-size: 1.6em;
}
.nowPlayInfo {
    padding-left: 1.5em;
}

@media screen and (max-width: 800px) {
    .radio_footer {
        width: 98%;
        min-width: unset;
    }

    .radio_left_player, .radio_right_player {
        flex-direction: column;
        justify-content: space-between;
    }

    .radioPlayerLogo {
        height: 2.3em;
    }

    .radioPlayerChannelName {
        font-size: inherit;
        padding: 0;
        text-align: center;
    }
    .nowPlay {
        font-size: 1.3em;
    }
    .nowPlayInfo {
        padding: 0;
        text-align: center;
    }
}
/* ---------------------------------------------------------------- search ------------------------------------------------------ */
h1.ng-binding {
    margin-top: 20px;
}
.main_search {
    display: flex;
    width: 41%;
    margin-left: 35px;
    border-radius:10px;
}
.main_searchtwo {
    max-width:100%;
    text-align:left;
    display:block;
    margin:0 auto;
}
.main_search label {
    width: 100%;
}
.main_search svg {
    z-index: 5;
}
.input_field_search{
    width: 90%;
    padding: 15px 10px 10px 5px;
    outline: none;
    border:none;
    font-size: 1.2em;
    margin: 5px 0;
    background: none;
}
.search_icon {
    color: black;
    font-size: 1.9em;
    text-align: center;
    display: flex;
    margin: auto;
    padding: 0.5em;
}

.searchHistoryTrashIcon {
    padding: 0 0.1em 0 0.2em;
}


@media screen and (max-width: 1024px) {
    .main_search {
        width: 70%;
        margin-top:0;
    }
}
@media screen and (max-width: 780px) {
    .main_search {
        width: 90%;
        margin-top:0;
    }
}
@media screen and (max-width: 720px) {
    .main_search {
        width: 90%;
        margin-top:0;
    }
}
@media screen and (max-width: 415px) {
    .main_search {
        width: 100%;
        margin:0 0 30px 0;
    }
    .input_field_search {
        padding: 7px;   
    }
    .search_icon {
        font-size: 1.4em;
    }
}
@media screen and (max-width: 360px) {
    .main_search {
        width: 100%;
        margin-top:0;
    }
	.main_fernsehen {
	     margin-top: 150px;
	}
}
.searchSectionLoading{
    margin-top: 70px;
}

/* ---------------------------------------------------------------- search filter ------------------------------------------------------ */
.filter_input li, .filter_input .inputLeft li {
    font-size: 1.5em;
    list-style: none;
    padding: 15px;
    margin:0 0 5px 0;
    background-image: linear-gradient(#e8ebeb, #dbdddd);
}
.filter_input li, .filter_input .inputLeft li {
    margin:0 0 5px 0;
}
.filter_input .inputLeft li {
    margin: 0 25px 5px 0;
}
.filter_input ul{
    float: left;
    width: 35%;
    margin: 0;
    padding: 0;
    text-align:right;
}
.filter_input .ulInputLeft ul{
    float: left;
    width: 65%;
    margin: 0;
    padding: 0;
    text-align:left;
}
.search_icon_exit a p{
    text-align:right;
    margin:-30px 10px 10px 0;
}
.search_icon_exit:hover{
    color:deepskyblue;
    cursor:pointer;
}
/* TODO: i have the intense feeling this whole class i Fking unused? */
.filter_input {
    width: 35%;
    position: relative;
    height: auto;
    left: 32%;
    top: 20px;
}
.iconFilterSearch, .aufnahmeFilter.iconFilterSearch{
    color:#000000;
    margin-right:5px;
}
.filter_input p:hover, .main_aufnahme .filter_input .choseFilter p:hover{
    color:deepskyblue;
}
.filter_input p, .filerBorder p{
    font-size: 1.8em;
    color: black;
    text-decoration: none;
    padding: 0;
    margin: 0 0 10px 10px;
}
.filter_input p, main_aufnahme .filter_input .choseFilter p {
    text-align: left;
}
.filerBorder p {
    text-align: right;
}
.main_aufnahme .filter_input a .choseFilter, .filter_input a{
    text-decoration: none;
}
.filerBorder {
    position: absolute;
    width: 100%;
    border: 1px solid lightgrey;
    border-radius: 15px;
    padding: 10px 15px 40px 40px;
}
.search_icon_exit:hover, .choseFilter:hover, .aufnahmeFilter .choseFilter:hover, .filter_input li:hover, .filter_input li.inputActive{
    cursor:pointer;
}
.aufnahmeFilter a p{
    text-align: left;
    font-size: 1.8em;
    color: #999999;
    text-decoration: none;
    width: 30%;
}
.filter_input li.inputActive{
    background-image:none;
    border:1px solid lightgrey;
    background-color:white;
}
@media screen and (max-width: 2137px) {
    .filter_input{
        width:40%;
        left:30%
    }
}
@media screen and (max-width: 1872px) {
    .filter_input{
        width:45%;
    }
}
@media screen and (max-width: 1665px) {
    .filter_input{
        width:50%;
        left:28%
    }
}
@media screen and (max-width: 1500px) {
    .filter_input{
        width:55%;
        left:25%
    }
}
@media screen and (max-width: 1365px) {
    .filter_input{
        width:60%;
        left:25%
    }
}
@media screen and (max-width: 1253px) {
    .filter_input{
        width:65%;
        left:23%
    }
}
@media screen and (max-width: 1158px) {
    .filter_input{
        width:75%;
        left:20%
    }
}
@media screen and (max-width: 1005px) {
    .filter_input{
        width:80%;
        left:15%
    }
}
@media screen and (max-width: 944px) {
    .filter_input{
        width:85%;
        left:10%
    }
}
@media screen and (max-width: 889px) {
    .filter_input{
        width:90%;
        left:5%
    }
    .main_aufnahme .filter_input .choseFilter p {
    font-size: 1.5em;
	}
}
@media screen and (max-width: 840px) {
    .filter_input{
        width:95%;
        left:2.5%
    }
}
@media screen and (max-width: 797px) {
    .filter_input{
        width:100%;
        left:5%
    }
}
@media screen and (max-width: 758px) {
    .filter_input a p{
        font-size:1.5em;
        width:100%;
    }
    .filter_input li, .filter_input .inputLeft li{
        font-size:1.2em;
    }
}
@media screen and (max-width: 530px) {
    .filter_input .ulInputLeft ul, .filter_input ul {
        width: 100%;
    }
    .filter_input .ulInputLeft li, .filter_input li {
        margin-right:0;
        text-align:left;
    }
}

/* --------------------------------------- search home ------------------------------------- */
.searchWords li {
    list-style: none;
    padding: 0.5em 0.5em 0.3em 0.5em;
    margin:0 5px 5px 0;
    text-transform: uppercase;
    float: left;
    cursor:pointer;
    display: flex;
    gap: 0.3em;
}
form.ios.ng-pristine.ng-valid input:focus {
    outline: none;
}
.searchWords ul {
    margin-top: 0;
}

.searchWords a:focus-visible {
    transform: translate(35px,0);
}

.searchWords {
    padding: 0 35px;
    height: auto;
    overflow: hidden;
    margin-top: 1.2em;
    left:35px;
    font-size: 1.2em;
    max-height: 6.5em; /* limit display to 3 lines */
}
.trashIcon {
    /*top: -10px;*/
    margin:0 0 0 20px;
    position: relative;
}
.trashIcon:hover{
    cursor:pointer;
}
.aufnahmeSearchWords {
    position: relative;
    width: 100%;
    height: auto;
	margin: 40px 0;
}
.aufnahmeSearchWordsAktiveFilter {
    position: relative;
    width: 100%;
}

/* ---------------------------------------------------------------- Fernsehen/tv ------------------------------------------------------ */
.playerProgressBarmin {
    width: 100%;
    height: 5px;
    bottom:0; 
    position:relative;  
    float:left;
 }
 .playerProgressBarminNothing {
    width: 100%;
    height: 2px;
    bottom:10px;   
 }
 #playerProgressBarNothing {
  	width: 100%;
    height: 100%;
    z-index: 100;
    float:left;
}
#playerProgressBackgroundmin {
    height: 100%;
    z-index: 100;
    width:100%;
    position:absolute;
}
#playerProgressLoadedmin {
    height: 100%;
    z-index: 101;
	width:50%;
    position:absolute;
}
#playerProgressPositionmin {
    height: 100%;
    z-index: 102;
    width:45%;
    position:absolute;
}
.playerTime {
    display: flex;
    width: 100%;
    margin-top: 12px;
    float: left;
}
.playerTime h4 {
    width: auto;
    display: block;
    width:auto;
}
.playerTime h3 {
    width: auto;
    display: block;
}
.aktTime {
    text-align: center;
    float: left;
    display: flex;
    margin: 0 auto;
    position: absolute;
    left: 50%;
}
.timeBorderSlider {
    /* text-align-last: justify; handle times like lastline - so one is left, middle and right, does not work on safari so i did a workaround */
    /* SSUIWEB-261 */
    padding: 0 1%;
    text-align: justify;
    height: 1em;
}
.timeBorderSlider:after {
    /* pseudo element to make time strings two lines long to make textalign justify work */
    content: '';
    display: inline-block;
    width: 100%;
}

.main_fernsehen {
    max-width:95%;
    text-align:left;
    display:block;
    margin:0 auto 0 auto;
    padding-top: 180px;
}
@media screen and (max-width: 320px) {
	.main_fernsehen {
	padding-top: 160px;
	}
}
/* ---------------------------------------------------------------- Speicherplatzverbrauch --------------------------------------*/
/* new */
#recordingSpaceWidget {
    height: 3em;
    width: 100%;
    margin-block-end: 1.5em;
    display: flex;
    align-items: center;
    justify-content: space-around;
    gap: 1em;
    padding: 0.6em;
}
@media screen and (max-width: 800px) {
	#recordingSpaceWidget {
        flex-wrap: wrap;
        height: 6em;
    }
}
.spaceDiagramm {
    height: 1em;
    display: flex;
    align-items: center;
}
.recordingSpaceLegend {
    font-size: 0.8em;
    display: flex;
    align-items: center;
    gap: 0.5em;
}
.legendColorDot {
    border-radius: 2em;
    width: 1em;
    height: 1em;
}

/* old */
.statusBarRecords {
    width: 100%;
    background-color: lightgrey;
    margin-top: 40px;
    position: relative;
}
.loadedBarRecords {
    height: 60px;
    width: 30%;
    float: left;
}
.planedBarRecords {
    height: 60px;
    width: 10%;
    float: left;
}
.freeBarRecords {
    height: 60px;
    width: 100%;
}
.totalAmountRecords {
    width: 90%;
    height: 60px;
    margin:25px 0 0 25px;
    float: left;
}
.totalPercentageRecords {
    width: 7%;
    text-align: right;
    margin:35px 10px 0 auto;
    display: block;
    position: relative;
    font-size: 2em;
}
.aufnahmeRecords {
    position: relative;
    width: 100%;
    height: auto;
    overflow: hidden;
}
.barInfoBorder {
    height: auto;
    width: 100%;
    float: left;
    margin:25px 0 0 25px;
    font-size: 1.6em;
}
.pvrLegendWrapper li {
    display: flex;
    align-items: center;
    padding: 0.2em 0;
}
.pvrLegendBox {
    height: 2em;
    width: 2em;
    flex: 0 0 auto;
}
.pvrLegendText {
    flex: 0 0 auto;
    padding-left: 0.3em;
}
@media screen and (max-width: 1530px) {
    .totalAmountRecords {
        width: 85%;
    }
    .totalPercentageRecords {
        width: 12%;
    }
}
@media screen and (max-width: 790px) {
    .totalAmountRecords {
        width: 80%;
    }
    .totalPercentageRecords {
        width: 15%;
        font-size: 1.8em;
    }
    .barInfoBorder {
        font-size: 1.6em;
    }
    .freeTextRecords, .planedTextRecords, .loadedTextRecords  {
        padding-top: 5px;
    }
}
@media screen and (max-width: 560px) {
    .totalAmountRecords {
        width: 70%;
    }
    .totalPercentageRecords {
        width: 20%;
    }
}
@media screen and (max-width: 414px) {
    .barInfoBorder {
        font-size: 1.4em;
    }
    .freeTextRecords, .planedTextRecords, .loadedTextRecords {
        padding-top: 10px;
    }
    .totalPercentageRecords {
        width: 20%;
        font-size: 1.4em;
        padding-top: 0;
    }
}
/* ---------------------------------------------------------------- Aufnahme ------------------------------------------------------ */
.main_aufnahme {
    text-align:left;
    display:block;
    padding: 180px 2% 50px 2%;
}
.aufnahme {
    position: relative;
    width: 100%;
    height: auto;
    overflow: hidden;
}
.ubertxtline {
    width: 100%;
    position: relative;
}
.main_aufnahme .ubertxtline .singleRecordsIcons{
    text-align: right;
    text-decoration: none;
    margin: 0;
    position: absolute;
    top: 0;
    right: 25px;
}

.main_aufnahme .ubertxtline a{
    text-align: right;
    text-decoration: none;
    margin: 0;
    position: absolute;
    top: 0;
    right: 25px;
}
.main_aufnahme p {
    font-size: 1.1em;
  	text-align: right;
    text-decoration: none;
    float:left;
    position:relative;
    padding-top: 0.5em;
    margin:0 10px 0 0;
    width: auto;
}
.main_aufnahme p:hover,
.main_aufnahme p:focus,
.main_aufnahme a:hover,
.main_aufnahme a:focus{
    cursor:pointer;
}
.main_aufnahme h1{
    width: auto;
    margin:0 0 0 35px;
}
.aufnahme_einzel {
    margin-top: 0;
}
/* ---------------------------------------------------------------- TV Header Hover ------------------------------------------------------ */
.header_tv_hover{
    position: fixed;
    width: 100%;
    top: 135px;
    left: 0;
    right: 0;
    z-index:10;
    height:60px;
}
.volume_control {
    -webkit-appearance: none; /* Override default look */
    appearance: none; /* Override default look */
    position: relative;
    float: left;
    margin-right: 15px;
    margin-top: 20px;
    height: 4px;
    cursor: pointer;
    border-radius: 3px;
    width: 7em;
}
/* Chrome */
.volume_control::-webkit-slider-thumb {
    -webkit-appearance: none; /* Override default look */
    appearance: none; /* Override default look */
    border: none;
    height: 1.1em;
    width: 1.1em;
    border-radius: 0.5em;
}
/* Firefox */
.volume_control::-moz-range-thumb {
    -webkit-appearance: none; /* Override default look */
    appearance: none; /* Override default look */
    border: none;
    height: 1.1em;
    width: 1.1em;
    border-radius: 0.5em;
}

.radio_mute_symbol {
    height: 2em;
    font-size: 0.8rem;
    width: 2.4rem;
    text-align: center;
}
.volume_icon_radio {
    font-size: 2em;
    cursor: pointer;
}
.radio_volume_control_wrapper {
    position: absolute;
    right: 1.5em;
    bottom: 1.5em;
    padding: 0.5em 0.5em 0.5em 1em;
    border-radius: 2em;

    display: flex;
    gap: 0.75em;
    align-items: center;
}
.radio_volume_control {
    margin: 0 !important; /* overrule all incoming margins for tv volume control */
    height: 4px;
    width: 7em;
}

@media screen and (max-width: 1147px) {
    .volume_control {
        margin-top: 20px;
    }
}
@media screen and (max-width: 800px) {
    .volume_control {
        margin-top: 16px;
        width: 5em;
    }
    .volume_control::-webkit-slider-thumb {
        height: 0.9em;
        width: 0.9em;
    }
    .radio_volume_control_wrapper {
        display: none;
    }
}
@media screen and (max-width: 513px) {
    .volume_control {
        display: none;
    }
}

.firmen_logo_header_tv {
    position: relative;
    height: 45px;
    object-fit: fill;
    padding: 5px;
    float: left;
    margin-top: 0;
}
.icon_header_tv {
    font-size: 30px;
    margin:5px 20px 0 0;
    float: left;
}
.icon_header_tv_right{
    font-size:1.6rem;
    margin:6px 5px 0 0;
    float:left;
}
.tvPlayerVolumeButton{
    text-align: center;
}
.tvPlayerVolumeButton svg{
    padding-top: 1px;
    padding-right: 0.15em;
}
.channelNrTO {
    font-size: 1.7em;
    float: left;
    margin:6px 15px 0 10px;
}
.icon_header_tv_right:hover{
    cursor:pointer;
}
.tv_header_right {
    text-align: right;
    position: fixed;
    padding:6px 5px 0 0;
    float: left;
    right: 0;
    top: 135px;
}
.icon_header_tv:hover{
    cursor:pointer;
}
.tv_header_left {
    width: 80%;
    text-align: left;
    padding:5px 0 0 10px;
    float: left;
    position: relative;
}
@media screen and (max-width: 500px) {
    .icon_header_tv, .icon_header_tv_right{ 
        font-size: 25px;
    }
}
@media screen and (max-width: 420px) {
  	.tv_header_left {
	    width: 70%;
	}
	.channelNrTO {
	    margin:0 10px 0 10px;
	}
	.firmen_logo_header_tv {
	    height: 35px;
	    object-fit: contain;
	    padding: 5px;
	    margin-top: 2px;
	}
}
/* ----------------------- TV Middle Hover ------------------- */
.icon_middle{
    position:relative;
    color:white;
    font-size: 3.5rem;
    margin: 0.4em;
    cursor:pointer;
    filter: drop-shadow(1px 1px 4px rgb(0 0 0 / 0.8));

}
.tv_middle p {
    position: absolute;
    color: black;
    top: -0.5px;
    left: 1065px;
    font-size: 0.4em;
}
.tv_middle {
    pointer-events: none;
    width: 99%;
    text-align: center;
    font-size: 40px;
    position: absolute;
    top: 50%;
    box-sizing: border-box;
	z-index: 9;
}
.tv_middle div {
    pointer-events: all;
}
/* --------------------------------------- TV footer Hover ---------------------------- */
.tv_footer{
    position: fixed;
    left: 0;
    bottom: 0;
    right:0;
    width: 100%;
    height: 10rem;
    color:white;
    z-index:10;
}
.webclient.zapperForeColor.tv_footer_middle h4 {
    float: left;
    width: auto;
}
.webclient.zapperForeColor.tv_footer_middle h4 i{
    float: left;
    cursor:pointer;
}
.webclient.zapperForeColor.tv_footer_middle h3 {
    float: right;
    width: 5%;
    font-size: 1em;
    text-align: right;
    margin-top: 23px;
}
.webclient.zapperForeColor.tv_footer_middle h3 i{
    float: right;
    cursor:pointer;
}
.main_slider{
        width: 100%;
        position: relative;
        bottom: -12px;
        float: left;
}
.tv_footer_middle {
    width:98%;
    height: 55px;
    position: relative;
    margin:0 auto;
}
.tv_footer_right {
    padding: 45px 10px 0 0;
    text-align: right;
    margin:0 0 0 auto;
    position: relative;
    width: 25%;
    height: 90px;
}
.tv_footer_right p {
    font-size:1.2em;
    margin:0;
}
.tv_footer_left {
    width: 75%;
    padding:0 0 0 1%;
    text-align: left;
    height: 90px;
    float: left;
}
.tv_footer_left h1 {
    font-size: 1.7em;
    margin:10px 0 0 0;
    overflow:hidden;
    text-overflow:ellipsis;
    height:40px;
}
.tv_footer_left p {
    font-size: 1.4em;
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 30px;
}
.icon_footer_tv{
    font-size:35px;
    margin: 0 10px 5px 0;
}
.icon_pip {
    float: unset;
    font-size: 1.8rem;
    margin-top: 0.05em;
}
.icon_footer_tv:hover{
    cursor:pointer;
}
.border {
    border: 1px solid white;
    background: grey;
    display: block;
    margin:0 auto;
    position: relative;
    width: 95%;
    height: 10px;
    float: left;
}
.time {
    width: 100%;
    height: 20px;
    position: relative;
}
.mirroredIcon {
    transform: scalex(-1);
}
#detailControllerBarOverlay{
    display: flex;  
    width: 100%;
    align-items: center;
    justify-content: center;
}
#detailControllerBarOverlay div{
    position: relative;
    display: flex;  
    align-items: center;
    justify-content: center;
    width: 3em;
}

.contextMenu{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 10rem;
    padding: 0 2rem;
    gap: 1rem;
    overflow-x: auto;
    position: absolute;
    width: 100%;
    bottom: 0;
    opacity: 0;
    animation: blendIn 1s forwards;
}

.trackSelection {
    display: flex;
    position: fixed;
}

.trackSelection .categoryHeadline {
    padding: 0.7em 1em;
    font-weight: 800;
}

.trackSelection ul {
    margin-block-start: 0;
    margin-block-end: 0;
}

.trackSelection li {
    padding: 0.7em 1em;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.8em;
}

@keyframes blendIn{
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
    
}

.pulseAnimation {
    animation: pulse 700ms ease 500ms 3 normal forwards;
}

@keyframes pulse {
	0% {
		transform: scale(1);
	}

	50% {
		transform: scale(1.2);
	}

	100% {
		transform: scale(1);
	}
}

.contextMenu_iconWrapper_circle, .contextMenu_iconWrapper_rectangle{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    border: 3px solid transparent;
    transition: border-color 0.1s ease-in-out;
    width: 4.5rem;
    height: 4.5rem;
}

.contextMenu_iconWrapper_circle {
    border-radius: 50%;
}

.contextMenu_iconWrapper_rectangle {
    border-radius: 0;
}

.contextMenu_icon {
    font-size: 2rem;
    margin: 15px;
}

.contextMenu_closeIcon {
    font-size: 1.5rem;
    margin: 15px;
    position: absolute;
    top: 0;
    right: 0;
}

.contextMenu_closeIcon:hover {
    cursor: pointer;
}

.contextMenu_iconText{
    display: none;
    position: absolute;
    top: -2rem;
    left: 50%;
    transform: translateX(-50%);
    font-size: 1rem;
    white-space: nowrap;
}

.contextMenu_iconWrapper_circle:hover, .contextMenu_iconWrapper_rectangle:hover{
    cursor: pointer;
}

.contextMenu_iconWrapper_circle:hover .contextMenu_iconText, .contextMenu_iconWrapper_rectangle:hover .contextMenu_iconText{
    display: block;
}

.contextMenu_iconWrapper_circle:hover::before, .contextMenu_iconWrapper_rectangle:hover::before{
    border-color: deepskyblue;
}

/* Styles für Mobilgeräte */
@media screen and (max-width: 768px) {
    .contextMenu{
        all: unset;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-content: center;
        align-items: center;
        overflow: hidden;
        position: fixed;
        width: 100%;
        bottom: 0;
    }

    /* dynamically set in tvCtrl: resizeMobileContextMenu() */
    .contextMenu_halfHeight{
        height: 5rem;
        background-color: rgba(0, 0, 0, 0.5);
    }
    
    .contextMenu_normalHeight {
        height: 10rem;
        background-color: rgba(0, 0, 0, 0.5);
    }

    .contextMenu_doubleHeight {
        height: 15rem;
        background-color: rgba(0, 0, 0, 0.5);
    }

    .contextMenu_iconWrapper_circle, .contextMenu_iconWrapper_rectangle{
        all: unset;
        vertical-align: top;
        display: inline-block;
        text-align: center;
        width: 7rem;
    }

    .contextMenu_iconWrapper_circle::before, .contextMenu_iconWrapper_rectangle::before{
        all: unset;
    }

    .contextMenu_iconWrapper_circle:hover::before, .contextMenu_iconWrapper_rectangle:hover::before{
        all: unset;
    }
    
    .contextMenu_icon {
        font-size: 1.5rem;
        margin: 5px;
    }
    
    .contextMenu_closeIcon {
        all: unset;
        display: none;
    }
    
    .contextMenu_closeIcon:hover {
        all: unset;
    }
    
    .contextMenu_iconText{
        all: unset;
        display: block;
        height: 2rem;
        font-size: 14px;
        hyphens: auto;
        -webkit-hyphens: auto;
        word-wrap: normal; 
    }
}

.zapperSeekNotAllowed {
    position: fixed;
    bottom: 10rem;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0.75;
    text-align: center;
    padding: 1em;
}

.zapper {  
    height: 10rem; /* needs to be same height as contextmenu */
    position: fixed;
    left: 0;
    bottom: 0;
    right:0;
    width: 100%;
    z-index:10;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr; 
    grid-template-rows: 2fr 3fr 1fr; 
    gap: 5px 0px;
    grid-auto-flow: row;
    grid-template-areas:
      "zapper_timeline zapper_timeline zapper_timeline"
      "zapper_details zapper_details zapper_details"
      ". zapper_openContextMenu zapper_icons";
}
  
.zapper_timeline { 
    grid-area: zapper_timeline; 
    z-index: 10; 
    display: flex;
    flex-flow: column;
    margin-top: 5px;
    height: 2.5rem;
}

.zapper_timelineGrid{
    display: grid; 
    grid-template-columns: min-content auto min-content; 
    align-items: bottom; 
    justify-items: bottom; 
    height: 2.5rem;
}

.zapper_timelineStartEndTime{
    padding-right: 10px;
    padding-left: 10px;
    align-self: flex-end;
}
  
.zapper_details { 
    grid-area: zapper_details; 
    padding: 10px;
}

.zapper_details * {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zapper_details .zapper_title {
    font-size: 1.35rem;
    font-weight: 500;
    height: 1.5em;
    display: flex;
    gap: 0.5em;
    margin-bottom: 0.3em;
    align-items: center;
}

.shrink {
    flex-shrink: 1;
}
  
.zapper_openContextMenu { 
    grid-area: zapper_openContextMenu; 
}
  
.zapper_icons { 
    grid-area: zapper_icons; 
    position:absolute;
    display: flex;
    bottom: 10px;
    right:0;
}

.zapper_icons:hover{
    cursor: pointer;
}

.zapper_icons * {
    font-size: 1.6rem;
    padding: 3px;
    margin-right: 0.1em;
}

.resolutionIcon {
    font-size: 1.2em;
    height: 1em;
    flex-shrink: 0;
}
  
.zapper_openContextMenuIcon{
    bottom: 0;
    left: 50%;
    padding: 3px;
    position: relative;
    transform: translate(-50%);
    border-radius: 200px 200px 0px 0px;
    -webkit-border-radius: 200px 200px 0px 0px;
    -moz-border-radius: 200px 200px 0px 0px;
    font-size: 1.6rem;
}

.zapper_openContextMenuIcon:hover{
    cursor: pointer;
}  

@media screen and (max-width: 768px) {
    .zapper_timelineStartEndTime {
        font-size: 0.8em;
    }

    .zapper_details h2{
        font-size: 1.2em;
    }

    .zapper_details p{
        font-size: 1em;
    }
}
  
@media screen and (max-width: 2407px) {
    .border{
        width:94%;
    }
}
@media screen and (max-width: 2012px) {
    .border{
        width:93%;
    }
}
@media screen and (max-width: 1731px) {
    .border{
        width:92%;
    }
}
@media screen and (max-width: 1653px) {
    .border{
        width:91%;
    }
}
@media screen and (max-width: 1519px) {
    .border{
        width:90%;
    }
}
@media screen and (max-width: 1223px) {
    .border{
        width:89%;
    }
}
@media screen and (max-width: 1116px) {
    .border{
        width:88%;
    }
    .tv_footer_left h1 {
        font-size: 1.5em;
        height:33px;
    }
    .tv_footer_right, .tv_footer_left {
        height: 80px;
    }
}
@media screen and (max-width: 1026px) {
    .border{
        width:87%;
    }
}
@media screen and (max-width: 950px) {
    .border{
        width:86%;
    }
}
@media screen and (max-width: 885px) {
    .border{
        width:85%;
    }
}
@media screen and (max-width: 829px) {
    .border{
        width:84%;
    }
}
@media screen and (max-width: 779px) {
    .border{
        width:83%;
    }
}
@media screen and (max-width: 736px) {
    .border{
        width:82%;
    }
}
@media screen and (max-width: 697px) {
    .border{
        width:81%;
    }
}
@media screen and (max-width: 663px) {
    .border{
        width:80%;
    }
    .tv_footer_right {
        height: 80px;
        /* padding:0 10px 0 0; */
    }
}
@media screen and (max-width: 631px) {
    .border{
        width:79%;
    }
}
@media screen and (max-width: 628px) {
    .tv_footer_left p  {
        font-size: 0.9em;
    }
}
@media screen and (max-width: 603px) {
    .border{
        width:78%;
    }
    .icon_middle {
        font-size: 3rem;
	    margin: 5px;
        top: 0.25em;
    }
    #detailControllerBarOverlay div{
        position: relative;
        display: flex;  
        align-items: center;
        justify-content: center;
        width: 2.5em;
    }
}
@media screen and (max-width: 578px) {
    .border{
        width:77%;
    }
}
@media screen and (max-width: 554px) {
    .border{
        width:76%;
    }
}
@media screen and (max-width: 533px) {
    .border{
        width:75%;
    }
}
@media screen and (max-width: 513px) {
    .border{
        width:74%;
    }
    .tv_footer_right p {
        margin-left: 0;
    }
}
@media screen and (max-width: 415px) {
    .border{
        width:68%;
    }
    .tv_footer_left h1 {
        font-size: 1.2em;
        height:28px;
    }
    .tv_footer_left p {
        font-size: 0.9em;
    }
    .tv_footer_right p {
        font-size: 0.8em;
    }
    .icon_footer_tv {
        font-size: 30px;
    }
    .icon_pip {
        margin-top: 2px;
    }
}
@media screen and (max-height: 415px) and (orientation: landscape){
    .tv_footer_left h1{
        /* font-size: 1.1em; */
        margin-top: 5px;    
    }
    .tv_footer_left p{
        font-size: 1.1em;
        margin-top: -5px;
    }
    .tv_footer_right p {
        /* margin: 15px -20px 0 0; */
    }
}
@media screen and (max-width: 380px) {
    .border{
        width:64%;
    }
    .tv_footer_right p {
        margin-left:0;
    }
    .icon_middle {
        font-size: 2.5rem;
        top: 0.5em;
	}
    #detailControllerBarOverlay div{
        position: relative;
        display: flex;  
        align-items: center;
        justify-content: center;
        width: 2em;
    }
}
@media screen and (max-width: 360px) {
    .border{
        width:63%;
    }
    .tv_footer_right p {
        margin-left:0;
    }
}
@media screen and (max-width: 320px) {
    .border{
        width:57%;
    }
    .tv_footer_right p {
        margin-left:0;
    }
	.tv_footer_left p {
	    height: 25px;
	}
}
/* ----------------------- TV Categories Programm -------------------------- */
body.body_categorie_programm, body.body_tv_categorie_sender{
    margin-top:0;
}
table.sptable{
	width:100%;
}
.radioProgramLeft {
    width: 18%;
    float: left;
    height: 50px;
    position: relative;
}
.radioProgramRight {
    height: 50px;
    position: relative;
    width: 50%;
    float: left;
}
.radioLogoProgram {
    height: 45px;
    position: relative;
    width: 90%;
    padding-left: 20px;
}
.no_logo_tv_categories_programm{
    text-align: left !important;
}
.main_tv_categories_programm, .main_tv_categorie_sender{
    background-color: lightgrey;
    width: 20%;
    padding: 15px;
    position: fixed;
    top: 135px;
    left: 0;
    right: 0;
    z-index: 10;
    cursor: pointer;
    height:100%;
}
.todayProgram {
    position: relative;
    float: left;
    height: 6px;
    width: 100.5%;
    margin:10px 0 10px -15px;
}
.main_tv_categories_sender{
    background-color: lightgrey;
    width:20%;
    padding:15px;
    margin-top:-260px;
}
.left_button_tv_categories_programm, .right_button_tv_categories_programm, .left_button_tv_categorie_sender, .right_button_tv_categorie_sender  {
    padding: 8px;
    text-decoration: none;
    border: none!important;
    outline:none!important;
    display: inline-block;
    float: left;
    width: 50%;
    position:relative;
    font-size: 0.8em;
}
.left_button_tv_categories_programm, .left_button_tv_categorie_sender{
    border-bottom-left-radius: 5px;
    border-top-left-radius: 5px;
}
.right_button_tv_categories_programm, .right_button_tv_categorie_sender{
	border-bottom-right-radius: 5px;
    border-top-right-radius: 5px;
}
.button_tv_categories_programm, .button_tv_categorie_sender{
    width:100%;
    font-size:1.5em;
}
.button_tv_categories_programm button:hover, .icon_exit_tv_categories_programm:hover, .button_tv_categorie_sender button:hover{
    cursor:pointer;
}
.main_search_tv_categories_programm, .main_search_tv_categorie_sender  {
    display: -ms-flexbox;
    display: flex;
    width: 90%;
    margin-bottom: 15px;
    border: solid 1px dimgrey;
    border-radius: 10px;
}
.input_field_search_tv_categories_programm, .input_field_search_tv_categorie_sender{
    padding: 5px;
    outline: none;
    border:none;
    font-size:1.2em;
    margin:5px 0 5px 0;
    background-color: transparent;
}
.input_field_search_tv_categories_programm{
	width:70%;
}
.icon_exit_tv_categories_programm {
    color: #555;
    display: block;
    margin: -50px 0 25px auto;
    font-size: 20px;
    text-align:right;
}
.search_icon_tv_categories_programm, .search_icon_tv_categorie_sender {
    font-size: 1.5em;
    padding: 0.3em 0.5em;
    text-align: center;
}
.sender_liste_tv_categories_programm, .sender_liste_tv_categorie_sender{
    color: black;
    width: 100%;
    float:left;
    margin:0 0 5px 5px;
}
.sender_liste_tv_categories_programm th:hover, .sender_liste_tv_categories_programm th:active, .sender_liste_tv_categorie_sender th:hover, .sender_liste_tv_categorie_sender th:active{
    opacity:1;
    color:black;
    cursor:pointer;
}
.radio_logo_tv_categories_programm {
    object-fit: contain;
    height: 45px;
    position: relative;
    max-width:100%;
}
.sender_top_tv_categories_programm{
    width:102%;
    margin-top:90px;
}
.sender_top_tv_categories_programm h1 {
    color: #555;
    background: white;
    font-size: 1.9em;
    padding-left: 40px;
    margin: 0 -20px 0 -10px;
}
.iconLeftProgramm {
    float: left;
    text-align: left;
    margin-left: 10px;
    font-size: 1.5em;
    color: grey;
    padding-top: 10px;
}
.iconLeftProgramm:hover, .iconRightProgramm:hover, .icon_exit_tv_categories_programm:hover, .icon_exit_tv_categorie_sender:hover {
   cursor:pointer;
}
.iconRightProgramm {
    text-align: right;
    font-size: 1.5em;
    color: grey;
    padding:10px 20px 0 0;
}
.sender_top_tv_categories_programm p {
    font-size: 1.4em;
    padding:10px 0 0 40px;
    margin-top: 0;
    vertical-align: middle;
    text-align: center;
}
.half_right_tv_categories_programm {
	width: 95%;
    text-align: left;
    float: left;
    height: 75px;
    margin-bottom: 0;
    overflow: hidden;
    margin:0 20px;
}
.blue-btn a{
    text-decoration:none;
    margin-top: 0em;
    text-align: left;
    display:block; 
    overflow: hidden;
    text-overflow: unset;
    margin-top:5px;
}
.blue-btn{
    height:80px;
    overflow: hidden;
    margin-left:0;
    position: relative;
    left: 0;
    top: 0;
}
.blue-btn a:hover{
    text-decoration: none;
}
.first-link{
    margin-left: 0em;
}
.blue-btn:hover .first-link{
	 margin-left:-550px;
    -webkit-transition: 11s;
	-moz-transition: 11s;
	transition: 11s;
    transition-timing-function: linear;
	-webkit-transition-timing-function: linear;
	-moz-transition-timing-function: linear;
	transition-timing-function: linear;
}
.sidebarNormal a{
    text-decoration:none;
    text-align: left;
    overflow: hidden;
    text-overflow: unset;
}
.sidebarNormal{
    height:90px;
    overflow: hidden;
    margin-left:0;
    position: relative;
    left: 0;
    top: 0;
}
.sidebarNormal a:hover{
    text-decoration: none;
}
a.first-link{
    text-decoration:none;
}
.first-link{
    overflow:hidden;
    height:35px;
}
.half_right_tv_categories_programm h1, .half_right_tv_categorie_sender h1 {
    font-size: 1.2em;
    margin: 10px 0 0 0;
    width: 80%;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    line-clamp: 1; 
    -webkit-box-orient: vertical;
}
.half_right_tv_categories_programm h1{
    font-weight: unset;
    width: 93%;
}
.half_right_tv_categorie_sender h1 {
    font-weight: unset;
    width: 93%;
}
.half_right_tv_categories_programm p, .half_right_tv_categorie_sender p  {
    font-size: 1.1em;
    overflow:hidden;
    height:auto;
    margin-top: 1em;
}
.half_right_tv_categories_programm p{
	 margin:10px 0 0 0;
	 color: #000;
}
.half_left_tv_categories_programm p{
    font-size:1.2em;
}
.sender_liste_tv_categories_programm th, th.activeBorder, .sender_liste_tv_categorie_sender th{
    float: left;
    width: 100%;
}
#style-1::-webkit-scrollbar-track{
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
    border-radius: 10px;
    background-color: #F5F5F5;
}
#style-1::-webkit-scrollbar{
    width: 10px;
    background-color: lightgrey;
}
#style-1::-webkit-scrollbar-thumb{
    border-radius: 10px;
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
    background-color: dimgrey;
}
.scrollbar_tv_categories_programm {
	float: left;
    width: 100%;
    position: absolute;
    overflow-y: scroll;
    margin: 10px 10px 25px -15.2px;
    padding:0 20px 0 10px;
    top: 210px;
    overflow-y: auto;
    height: calc(100% - 355px);
}
@media screen and (max-width: 2300px) {
    .main_tv_categories_programm {
        width: 22%;
    }
}
@media screen and (max-width: 2000px) {
    .main_tv_categories_programm {
        width: 24%;
    }
}
@media screen and (max-width: 1920px) {
    .main_tv_categories_programm {
        top: 135px;
        width:25%;
    }
}
@media screen and (max-width: 1653px) {
    .main_tv_categories_programm {
        top: 135px;
        width: 30%;
    }
    .force-overflow_tv_categories_programm {
        min-height: 955px;
    }
}
@media screen and (max-width: 1350px) {
    .main_tv_categories_programm {
        top: 135px;
        width: 35%;
    }
}
@media screen and (max-width: 1024px) {
    .input_field_search_tv_categories {
        font-size: 1em;
    }
    .radioLogoProgram {
        height: auto;
        position: relative;
        object-fit: cover;
        margin-left: 20px;
        max-width: 100%;
    }
}
@media screen and (max-width: 950px) {
    .main_tv_categories_programm {
        width: 45%;
    }
}
@media screen and (max-width: 850px) {
    .main_tv_categories_programm {
        width: 50%;
    }
    .half_right_tv_categories_programm h1 {
    width: 90%;
    }
}
@media screen and (max-width: 785px) {
    .main_tv_categories_programm {
        top:135px;
    }
}
@media screen and (max-width: 768px) {
    .force-overflow_tv_categories_programm {
        min-height: 700px;
    }
    .half_right_tv_categories_programm h1 {
        font-size: 1.2em;
        height: 25px;
    }
    .half_right_tv_categories_programm p {
        font-size: 1.0em;
    }
}
@media screen and (max-width: 750px) {
    .main_tv_categories_programm {
        width: 65%;
    }
    .left_button_tv_categories_programm, .right_button_tv_categories_programm {
        font-size: 0.8em;
    }
    .input_field_search_tv_categories_programm {
        font-size: 0.9em;
    }
    .icon_exit_tv_categories_programm {
        color: #555;
        display: block;
        margin: -55px 0 30px auto;
        font-size: 20px;
    }
    .force-overflow_tv_categories_programm {
        min-height: 400px;
    }
    .scrollbar_tv_categories_programm {
    	top: 200px;
	}
	.radio_logo_tv_categories_programm {
	    height: 35px;
	    max-width:100%;
	    margin-top: 5px;
	}
}

@media screen and (max-width: 650px) {
    .main_tv_categories_programm {
        width: 65%;
    }
}
@media screen and (max-width: 620px) {
 .half_right_tv_categories_programm h1 {
    width: 85%;
    }
}
@media screen and (max-width: 550px) {
    .main_tv_categories_programm {
        width: 70%;
    }
}
@media screen and (max-width: 450px) {
    .main_tv_categories_programm {
        width: 75%;
        top: 135px;
    }
    .radioLogoProgram {
        margin-left: 30px;
        width:60%;
        padding-left:0;
    }
    .radio_logo_tv_categories_programm {
	    height: 25px;
	    margin: 13% 0 0 15px;
	}
}
@media screen and (max-width: 380px) {
    .main_tv_categorie_sender {
        width: 80%;
    }
    .radioLogoProgram {
        margin-left: 30px;
        width:50%;
        padding-left:0;
    }
    .sender_top_tv_categories_programm p {
    	padding: 10px 0 0 15px;
    }
    .radioLogoProgram {
    	margin-left: 15px;
    }
    .iconRightProgramm {
	    padding: 10px 0 0 0;
	}
	.radio_logo_tv_categories_programm {
	    margin: 17% 0 0 5px;
	}
}
@media screen and (max-width: 320px) {
    .main_tv_categories_programm {
        width: 85%;
    }
    .radioLogoProgram {
        margin-left: 35px;
        width: 55%;
        padding-left: 0;
    }
}
/* ---------------------------------------------------------------- TV Categories Sender ------------------------------------------------------ */
.main_tv_categorie_sender {
    width: 30%;
    padding: 15px;
    position: fixed;
    top: 135px;
    left: 0;
    right: 0;
    z-index: 10;
    cursor: pointer;
    height:100%;
}
.radioLogoSender {
    height:50px;
    position: relative;
    width: 100%;
}
.main_search_tv_categorie_sender {
    float:left;
}
.input_field_search_tv_categorie_sender{
   width:100%;
}
.main_search_tv_categorie_sender label {
    width: 100%;
    overflow:hidden;
    margin-left: 30px;
}
.icon_exit_tv_categorie_sender{
    display: block;
    margin-left: auto;
    font-size: 1.8rem;
    text-align:right;
    padding: 0.2em;
    width:10%;
}
.radio_logo_tv_categorie_sender {
    max-width: 100%;
    position: relative;
    height: 50px;
    padding: 5px;
    object-position: left;
    object-fit: scale-down;
}
.half_left_tv_categorie_sender{
    width: 15%;
    float: left;
    position: relative;
    text-align: center;
    height: 90px;
}
.half_right_tv_categorie_sender {
    width: 85%;
    text-align: left;
    float: left;
    height: 90px;
    padding:0 0 0 20px;
    margin: 0 0 5px 0;
}
.half_left_tv_categorie_sender p {
    font-size: 1.2em;
    text-align: center;
    margin:10px 0 5px 0;
}
.sender_liste_tv_categorie_sender th {
    float:left;
    width:100%;
}
.scrollbar_tv_categorie_sender {
    float: left;
    width: 100%;
    margin: 10px 10px 25px -15.2px;
    position: absolute;
    padding:0 20px 0 10px;
    top: 125px;
    overflow-y: auto;
    overflow-x: hidden;
    height: calc(100% - 270px);
}
.force-overflow_tv_categorie_sender{
    height: 915px;
}
@media screen and (max-width: 4096px) {
    .main_tv_categorie_sender {
    	width: 30%;
    }
}
@media screen and (max-width: 3840px) {
    .main_tv_categorie_sender {
    	width: 35%;
    }
}
@media screen and (max-width: 2160px) {
	 .half_right_tv_categorie_sender h1 {
	    width: 93%;
	}
}
@media screen and (max-width: 2048px) {
    .main_tv_categorie_sender {
    	width: 40%;
    }
}
@media screen and (max-width: 1998px) {
    .main_tv_categorie_sender {
    	width: 35%;
    }
}

@media screen and (max-width: 1920px) {
    .main_tv_categorie_sender {
    	width: 35%;
    }
}
@media screen and (max-width: 1653px) {
    .force-overflow_tv_categorie_sender {
            min-height: 955px;
    }
}

@media screen and (max-width: 1500px) {
	 .half_right_tv_categorie_sender h1 {
	    width: 92%;
	}
}
@media screen and (max-width: 1440px) {
    .main_tv_categorie_sender {
    	width: 35%;
    }
}

@media screen and (max-width: 1280px) {
    .main_tv_categorie_sender {
    	width: 45%;
    }
}
@media screen and (max-width: 1250px) {
	 .half_right_tv_categorie_sender h1 {
	    width: 85%;
	}
}
@media screen and (max-width: 1050px) {
	 .half_right_tv_categorie_sender h1 {
	    width: 90%;
	}
}
@media screen and (max-width: 1024px) {
    .half_left_tv_categorie_sender, .half_right_tv_categorie_sender {
        height: 95px;
    }
    .scrollbar_tv_categorie_sender {
    	top: 120px;
	}
}
@media screen and (max-width: 900px) {
 .half_right_tv_categorie_sender h1 {
    width: 90%;
}
}
@media screen and (max-width: 820px) {
    .main_tv_categorie_sender {
    	width: 100%;
    }
}
@media screen and (max-width: 800px) {
    .main_tv_categorie_sender {
        top:100px;
    }
}
@media screen and (max-width: 768px) {
    .force-overflow_tv_categorie_sender {
        min-height: 700px;
    }
    .half_right_tv_categorie_sender h1 {
        font-size: 1.4em;
        height: 1.4em;
    }
    .half_right_tv_categorie_sender p {
        font-size: 1.2em;
    }
}
@media screen and (max-width: 750px) {

    .left_button_tv_categorie_sender, .right_button_tv_categorie_sender {
        font-size: 0.8em;
    }
    .input_field_search_tv_categorie_sender {
        font-size: 1.1em;
        width:100%;
        overflow:hidden;
    }
    .icon_exit_tv_categorie_sender {
        display: block;
    }
    .force-overflow_tv_categorie_sender{
        min-height: 400px;
    }
    .scrollbar_tv_categorie_sender {
    	top: 125px;
	}
}
@media screen and (max-width: 700px) {
 .half_right_tv_categorie_sender h1 {
    width: 85%;
}
}
@media screen and (max-width: 450px) {

    .half_right_tv_categorie_sender {
	    margin: 10px 0 0 0;
	}
	.input_field_search_tv_categorie_sender {
    	margin: 5px 0 5px 5px;
    }
    .search_icon_tv_categorie_sender {
	    font-size: 1.4em;
	}
	 .half_right_tv_categorie_sender h1 {
    width: 78%;
}
}
@media screen and (max-width: 380px) {
   .input_field_search_tv_categorie_sender {
	    font-size: 1em;
	    width: 80%;
	}
	.half_right_tv_categorie_sender {
	    margin: 5px 0 0 0;
	}
}
/* ------------------------------ From Mani --------------------------------- */

.zIndexOverride {
    z-index: 100;
}
.playerStyle {
    position: fixed;
    top: 135px;
    left: 0;
    bottom: 0;
    width: 100%;
    height: calc(100vh - 135px) !important;
    display: block;
    z-index: 9;
    background-color: black;
}

.playerStyleImage {
    position: fixed;
    width: 100%;
    height: calc(100vh - 135px) !important;
    display: block;
    background-color: #bfbebd;
    top: 135px;
    bottom: 0;
    right: 0;
    left: 0;
    background-repeat:no-repeat;
    background-size:cover;
    background-position: center center;
}
.playerStyleImageNo {
    position: fixed;
    width: 100%;
    height: 100% !important;
    display: block;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-repeat:no-repeat;
    background-size: unset;
    object-fit: contain;
    background-color: #bfbebd;
    opacity: 0.7;
    padding: 35px;
}
img.imagePlayer {
    width: 100%;
    height: 100%;
}
.playerButtonActive{
    opacity: 1;
}
.playerButtonInactive{
    opacity: 0.5;
}
.playerButtonInactive *{
    cursor: default;
}
.playerButtonVisible, .buttonInVisible {
    display: none;
}

.html404 {
    padding: 50px;
    display: flex;
    justify-content: flex-start;
}

.button404 {
    width: 200px;
    cursor: pointer;
    background-color: lightgrey;
    color: dimgrey;
    border: none;
    opacity: 0.9;
    height: auto;
    font-size: 1.2em;
    margin: 10px 20px;
}
.button404:hover {
    opacity: 1;
}
.sortBtn {
	font-size: 0.9em;
	position: absolute;
	bottom: 0;
	right: 0;
	margin: 0;
}
#floatingNextEpisodeButton {
    cursor: pointer;
    position: absolute;
    z-index: 9;
    font-size: 1.25rem;
    bottom: 12rem;
    right: 0;
    padding: 0.5em;

    border-top-left-radius: 0.3em;
    border-bottom-left-radius: 0.3em;

    color: black;
    background-color: white;
}
@media screen and (max-width: 1450px) {
    img.imagePlayer {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}
/* 		Für Mobile */
		@media screen and (max-width: 800px) {
            .playerStyle {
                top: 100px;
                height: calc(100vh - 100px) !important;
            }
            .progressBarSubtitle {
                display: none;
            }
            #floatingNextEpisodeButton {
                font-size: 1rem;
            }
		    .sortierBorder {
			    width: 100%;
			    height: 330px;
			    overflow: hidden;
			    overflow-y: scroll;
			    position: relative;
			    margin-bottom:50px;
			}
			.info_border_vor {
				padding:0;
		    }
			form.ios input[type=password] {
			    height: 40px;
			    width: 40px;
			}
            .form.ios input[type=password] {
			    height: 40px;
			    width: 40px;
			}

			.login h2 {
			    font-size: 1.5em;
			}
			.logout.login.ng-scope {
			    margin: 0 20px;
			}
			.textbox_fore_color.textbox_border_color.textbox_back_color.main_search.ng-scope {
			    font-size: 0.9em;
			}
			.aufnahme_einzel {
			    margin-top: 0;
			}

            .main_aufnahme h1 {
                font-size: 1.4em;
                padding-top: 4px;
            }
			
			body.loginPage header{
				height:auto;
			}
			.logoNavTop {
			    width: 35%;
                height:50px;
			}
			body.loginPage .logoNavTop {
			    height: 80px;
			}

			body.loginPage header{
				height:auto;
			}
						
		}
		
/* ------------------------------ tvOverview ------------------------------- */
.as_main{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    background: #463935;
    color:white;
}
#detailview_bottom_wrapper{
    font-size: 1.2em;
    width: 100%;
    position: fixed;
    bottom: 0;
    height: 60%;
    max-height: 32em;
    display: flex;
    flex-direction: column;
    /* to end before footer */
    padding-bottom: 2.2rem;
}
#detailview_bottom_wrapper.series {
    max-height: 36em;
    min-height: 33em;
}
.detailview_top {
    /* own style */
    font-size: 1.2em;
    font-weight: 400;
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: 2.5em;
    /* flexbox parent */
    display: flex;
}
.detailview_top.epg {
    gap: 1.2em;
    padding-left: 3%;
}
.detailview_top.vod {
    padding-left: 2em;
}
.detailview_top.series.vod {
    padding-left: 25%;
    gap: 1.2em;
}
.detailview_top.vod .inner_flex{
    display: flex;
    gap: 1.2em;
}
.detailview_top_button {
    cursor: pointer;
    flex: 0 2 auto;
    height: 100%;
    padding-top: 0.4em;
    display: flex;
    justify-content: center;
    text-align: center;
    align-items: center;
    border-bottom: 5px solid transparent;
}
.detailview_bottom {
    /* own style */
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: auto;
    width: 100%;
    line-height: 1.4em;
    /* flexbox parent */
    overflow-y: auto;
    display: flex;
    padding-top: 1em;
}
.detailview_bottom_series {
    padding-top: 1em;
    flex-grow: 1;

    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.detailview_bottom_series .texts {
    padding: 0 3%;
}
.detailview_bottom_series .texts.vod {
    padding-left: 25%;
}
.series_description {
    height: 3.8em;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}
.detailviewCoverflow {
    margin: 2em 3%;
}
.episodeCover {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 18em;
    z-index: 0;
    transition: transform 0.2s ease, z-index 0.2s ease;
}
.episodeCover:hover {
    transform: scale(1.1);
    z-index: 1;
}
.episodeCover .lockedCover {
    height: 15em;
}
.episodeCover .coverImage {
    object-fit: cover;
    height: 9em;
    display: flex;
    justify-content: center;
}
.episodeCover .coverImage .logo {
    /* full size logo on channel covers */
    max-width: 80%;
    max-height: 33%;
    position: relative;
    top: 18%;
    object-fit: contain;
}

.episodeCover .title, .episodeCover .titleBackground {
    position: absolute;
    bottom: 6em;
}
.episodeCover .title {
    padding: 0 0.2em 0.2em 0.5em;
    font-weight: 600;
}
.episodeCover .titleBackground {
    height: 2.5em;
    width: 100%;
    background: linear-gradient(to top, #222, transparent);
}

.episodeCover .textBox {
    height: 6em;
    padding: 0.5em 2.5em 0.5em 0.5em;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.episodeCover .textBox div {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}
.episodeCover .progressBar, .vodWidget .progressBar {
    position: absolute;
    bottom: 0;
    border-bottom: solid 0.25em;
}
.episodeCover .topRightIcon, .vodWidget .topRightIcon {
    position: absolute;
    font-size: 1.4em;
    right: 0.5em;
    top: 0.5em;
    filter: drop-shadow(1px 1px 2px rgb(0 0 0 / 1));
}
.episodeCover .bottomRightIcon {
    position: absolute;
    font-size: 1.2em;
    right: 0.8em;
    bottom: 0.9em;
}
.detailview_bottom_left, .detailview_bottom_middle, .detailview_bottom_right {
    height: fit-content;
    min-height: 100%;
}
.detailview_bottom_left {
    padding: 1em;
    text-align: right;
}
.detailview_flex_2 {
    flex: 2 2 0;
}
.detailview_flex_6 {
    flex: 6 6 0;
}
.detailview_bottom_left.centered {
    display: flex;
    justify-content: center;
}
.detailview_bottom_left .poster, .detailview_bottom_series .poster {
    width: 15em;
    max-width: 19%;
    background-size: cover;
    aspect-ratio: 10/14;
    margin-top: -12em;
    margin-left: 1em;
    position: fixed;

    /* shadow */
    -webkit-box-shadow: 0px 3px 7px 0px rgba(0,0,0,0.75);
    -moz-box-shadow: 0px 3px 7px 0px rgba(0,0,0,0.75);
    box-shadow: 0px 3px 7px 0px rgba(0,0,0,0.75);
}
.detailview_bottom_series .poster {
    margin-left: 3%;
}
.detailview_bottom_middle {
    padding: 1em 1em 1em 3%;
}
.detailview_bottom_middle.vod {
    padding: 1em;
}
.detailview_bottom_right {
    padding: 1em;
}
.detailview_bottom_right_spacer {
    /* title height + title margin */
    height: 2.9em;
}
.detailview_list {
    margin-block-start: 0;
}
.detailview_channellogo {
    max-width: 10em;
    max-height: 3em;
}
.detailview_title {
    font-size: 1.5em;
    line-height: normal;
    font-weight: 600;
    margin: 0 0 0.7em 0;
    max-height: 2.4em;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.detailview_subtitle {
    margin: 0 0 1em 0;
    font-size: 1em;
    font-weight: 600;
}
.detailview_description {
    text-align: justify;
    max-width: 1400px;
}
.emission-rights-icon {
    margin: 0 0.2em;
}
.detailview-emission-rights-icons {
    display: inline;
}
@media screen and (max-width: 1000px) {
    .detailview_top {
        padding-left: 0;
        font-size: 1.1em;
    }
    .detailview_top.vod .detailview_flex_2 {
        display: none;
    }
    .detailview_top.vod, .detailview_top.series.vod {
        padding-left: 3%;
    }
    .detailview_flex_6 {
        flex: unset;
    }
    .detailview_bottom_left.vod {
        display: none;
    }
    .detailview_bottom_series .texts.vod {
        padding-left: 3%;
    }
    .detailview_bottom {
        flex-direction: column;
    }
    .detailview_bottom_right_spacer {
        /* dont show in single column */
        display: none;
    }
    .detailview_bottom_left, .detailview_bottom_middle, .detailview_bottom_right {
        text-align: left;
        padding: 1em 1em 0 1em;
        min-height: unset;
    }
    .detailview_bottom_left .poster, .detailview_bottom_series .poster {
        display: none;
    }
}
@media screen and (max-width: 600px) {
    /* Mobiles */
    #detailview_bottom_wrapper {
        font-size: 1em;
    }
    .detailview_top_button {
        padding: 5px 0.5em 0 0.5em;
        flex: 1 1 auto;
    }
}
@media screen and (max-width: 414px) {
    .detailview_top_button {
        padding: 5px 0.2em 0 0.2em;
    }
}
@media screen and (min-width: 2560px) {
    /* 4k screens */
    .detailview_bottom_left {
        text-align: center;
    }
}
tbody {
    position: relative;
}
.aufnahme_icon_exit{
    color:white;
    display:block;
    margin-left:auto;
    text-align:right;
    margin-top: -20px;
    margin-right: 15px;
    font-size: 30px;
}
.aufnahme_icon_exit:hover{
    color:deepskyblue;

}
/* ------------------------------ Settings --------------------------- */
/* Have their own file */
/*------------------ TV Guide---------------------*/
/* Moved into his own file */
/*-------------------------Loader -------------------------*/
    .overlayLoader {
        position: absolute;
        top: 40%;
        left: 50%;
        margin:0 0  0 -45px;
    }
    .inlineLoader {
        position: relative;
        left: 50%;
        margin-left: -45px;
    }
    .loader {
        border: 8px solid;
        border-radius: 50%;
        border-top: 8px solid;
        width: 90px;
        height: 90px;
        -webkit-animation: spin 2s linear infinite;
        animation: spin 2s linear infinite;   
        box-sizing: border-box;
        z-index:999;
      }
   
    @-webkit-keyframes spin {
        0% { -webkit-transform: rotate(0deg); }
        100% { -webkit-transform: rotate(360deg); }
    }
    @keyframes spin {
        0% { transform: rotate(0deg); }
        100% { transform: rotate(360deg); }
    }
    
    /* @media screen and (max-width:780px){
		.overlayLoader {
	        left: 55%;
        }
 	} */

/*PIN*/
/* form.ios input.password{
    height: 60px;
    width: 60px;
    text-align: center;
    font-size: 2em;
}  */
input#sn {
    display: block;
    margin: 0 auto;
    height: 40px;
    width: auto;
    font-size:1em;
}
.ellipsis {
    position: relative;
    white-space: nowrap;
    overflow: hidden;
    padding:4px 0; 
 }
.ellipsis:not(:hover) {
    text-overflow: ellipsis;
}
span {
    position: relative;
    left:0;
    width:100%;
    transform:translateX(0%);
    transition:left .25s ease;
}
#mySidenav #about {
	  position: fixed;
	  right: 0;
	  bottom:0;
	  transition: 0.3s;
	  padding: 14px 10px 10px 5px;
	  width: 65.5px;
	  height:65px;
	  overflow:hidden;
	  text-decoration: none;
	  font-size: 20px;
	  border-radius: 50px;
	  margin: 15px;
}
.ng-pristine.ng-valid.ng-isolate-scope.moment-picker-input.ng-empty.ng-valid-min-date.ng-valid-max-date.ng-touched,
.ng-pristine.ng-valid.ng-isolate-scope.moment-picker-input.ng-empty.ng-valid-min-date.ng-valid-max-date.ng-touched:focus {
    outline: none;
}


/*Other stuff*/
.timeicon {
    font-size: 3.2rem;
    float: left;
    cursor:pointer;
    position:absolute;
    z-index:80;
    background-color: grey;
    
    margin-top:-12px;
    margin-left: -3px;
    width: 1.2em;
    height: 1.5em;
    text-align: center;
}
a.marginSpace {
    margin-right: 80px!important;
}
a.marginSpace2 {
    margin-left: 67px!important;
}
#mySidenav #about:hover {
  width:auto; 
}
a.extra.webclient.ng-isolate-scope{
	float: unset!important;
    margin-right: 0!important;
    margin: 0!important;
    text-decoration: none!important;
    cursor: pointer!important;
    outline:none!important;
}
a.extra.webclient.ng-isolate-scope:hover,
a.extra.webclient.ng-isolate-scope:active,
a.extra.webclient.ng-isolate-scope:focus{
    outline:none!important;
}
#about a {
    float: left;
    margin-right: 10px;
    margin: 5px 10px 10px 10px;
    text-decoration:none;
    cursor:pointer;
}

.moment-picker-input {
    padding: 5px 0 0 0;
    right: 10px!important;
    display: flex;
    width:auto;
    left:unset!important;
    margin-right:0!important;
    margin-left:0!important;
    top:unset!important;
    position:absolute;
    }
.moment-picker-container{
    bottom:30px!important;
    right:8px!important;
    position:absolute;
}

/*Slider Time*/
.bgSlider {
    width: 100%;
    height: 25px;
    background: lightgrey;
}
.rzslider .rz-bar {
    left: 0;
    z-index: 1;
    width: 100%;
    height: 4px;
    background: unset;
}
.replaySlider .rzslider .rz-selection {
	z-index: 2;
    border-radius: 0;
    height: 5.5px;
    /* background: #128589!important; */
    top: -1px;
    /* border: solid 1px #128589; */
}
.liveSlider .rzslider .rz-selection {
    z-index: 2;
    border-radius: 0;
    height: 8px;
    top:0;
}
.replaySlider .rzslider {
    position: absolute;
    z-index: 999;
}
.liveSlider .rzslider{
    position: absolute;
}
span.rz-bubble.rz-model-value {
    display: none;
}
.bgSlider {
    width: 100%;
    height: 5px;
    background: lightgrey;
    position: absolute;
    margin: 20px 0;
    margin-left: 0 !important;
}
.main_slider.ng-scope {
    width: 100%;
    position: relative;
    margin-top:-6px;
    margin-left:5px;
}

/* thumb nob - transparent / invisible  - WEB 207 */

.pointer1 span.rz-pointer.rz-pointer-min {
    position: absolute;
    top: -26px;
    left: 0;
    width: 30px;
    height: 30px;
    background: rgba( 255, 255, 255, 0.01 );
}

.pointer1 span.rz-pointer.rz-pointer-min:hover {
    background: rgba( 255, 255, 255, 0.2 );
}

.liveSlider .rzslider .rz-selection{
	height:5.5px!important;
	top:-1px;
}
.pointer2 span.rz-pointer.rz-pointer-min {
    /* background-color: #128589; */
    position: absolute;
    top: -40px;
    width: 2px;
    height: 35px;
}
.replaySlider .rzslider .rz-pointer:after {
    opacity:0;
}
.replaySlider .rzslider .rz-pointer {
    position: absolute;
    top: 0;
    left: 0;
    width: 2px;
    height: 1px;
}
.liveSlider .rzslider .rz-pointer {
    background-color: #fff;
}
.liveSlider .rzslider .rz-pointer:after {
	opacity:0;
}
.replaySlider span.rz-pointer.rz-pointer-min:before{
	margin-left:-45px;
	position:Absolute;
	top:-45px;
	font-size:0.9em;
}
.titleRecord {
    opacity: 1;
    text-align: center;
    padding: 15px 5px;
    font-size: 1.2em;
}
#foobar span.rz-pointer.rz-pointer-min:before {
    /* nowTimeString Marker */
    margin-left: -8.5ch;
    position: Absolute;
    top: -2px;
    font-size: 0.8em;
    text-align: right;
    width: 8ch;
}
.pointer2 span.rz-pointer.rz-pointer-min:before{
    /* Live Marker */
	margin-left: 0.75ch;
	position:Absolute;
	top: -2px; 
	font-size: 0.8em;
}

@media screen and (max-width: 768px) {
    #foobar span.rz-pointer.rz-pointer-min:before {
        font-size: 0.7em;
    }
    .pointer2 span.rz-pointer.rz-pointer-min:before{
        font-size: 0.7em;
    }
}

.liveSlider .rzslider .rz-pointer {
    position: absolute;
    top: 0;
    left: 2px;
    width: 2px;
    height: 1px;
}
.rzslider .rz-pointer:after{
    top: 11px;
    left: 11px;
    width: 9px;
    height: 9px;
}
.replaySlider .rzslider .rz-pointer.rz-active:after{
    background-color:#fff;  

}
.pointer2 .rzslider .rz-pointer.rz-active:after {
    top: 10px;
    left: 0;
    width: 10px;
    height: 10px;    
}
span.rz-pointer.rz-pointer-min, .liveSlider span.rz-pointer.rz-pointer-min {
    outline: none;
}
.rzslider .rz-restricted {
    background:transparent!important;
}
.rzslider .rz-bar-wrapper{
    padding-top:0!important;
}
.liveSlider .rzslider .rz-pointer:hover:after {
    cursor: none !important;
}
.webclient.timelineReplayColor.replaySlider.rzslider span.rz-bar-wrapper span.rz-bar,
.webclient.timelineReplayColor.replaySlider.rzslider span.rz-bar-wrapper span.rz-bar.rz-restricted,
.webclient.timelinePvrColor.liveSlider.rzslider span.rz-bar-wrapper span.rz-bar,
.webclient.timelinePvrColor.liveSlider.rzslider span.rz-bar-wrapper span.rz-bar.rz-restricted
{
    background-color: transparent!important;
}

.radio_bars{
    width: 80px;
    height: 40px;
}

.overlayContainer{
    position: absolute;
    left: 0;
    right: 0;
    display: none;
    background-color: lightcyan;
    width: 200px;
    height: 200px;
    
    
    overflow: visible;
    z-index: 1221;
}

.overlayImage{
    width: 80%;
    height: 80%;
}
.playButtonBorder {
    display: flex;
    gap: 10px;
    position: absolute;
    top: 0;
    right: 0;
    padding: 35px 10px 0px 0px;
    cursor: pointer;
    font-size: 1.75em;
}
.playButtonSenderBorder {
    display: flex;
    gap: 10px;
    position: absolute;
    top: 0;
    right: 0;
    padding: 45px 10px 0px 0px;
    cursor: pointer;
    font-size: 1.75em;
}

.nowSidebarEvent.bold h1{
    font-weight: 600;
}

.md-tooltip{
    font-size: unset;       /* unset angular default styles */
    line-height: unset;     /* unset angular default styles */
    width: 230px;
    height: 130px;
    background-repeat: no-repeat;
    background-size:cover;
    object-position:center center;
    object-fit: cover;
    z-index:900;
    border-radius:0;
}

.md-tooltip.md-origin-top{
    margin-top: 0!important;
}

.md-tooltip.md-origin-right{
    margin-left: 0!important;
}

.md-tooltip .tooltip-content{
    color:#000;
    margin:0;
    padding: 3px 5px;
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    background-image: linear-gradient(to right, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.5));
}
.md-tooltip .tooltip-title{
    font-size:1.2em;
    padding-bottom: 3px;
    word-break: break-all;
    white-space: pre-line;
    margin:0;
    left:0;
}

/*OverlayAnimation**************************/
.overlayAnimationIn{
    animation: fadein 1s;
    -moz-animation: fadein 1s; /* Firefox */
    -webkit-animation: fadein 1s; /* Safari and Chrome */
    -o-animation: fadein 1s; /* Opera */
}

@keyframes fadein {
    from {
        opacity:0;
    }
    to {
        opacity:1;
    }
}

@-moz-keyframes fadein { /* Firefox */
    from {
        opacity:0;
    }
    to {
        opacity:1;
    }
}
@-webkit-keyframes fadein { /* Safari and Chrome */
    from {
        opacity:0;
    }
    to {
        opacity:1;
    }
}
@-o-keyframes fadein { /* Opera */
    from {
        opacity:0;
    }
    to {
        opacity: 1;
    }
}

/*******************************************/

@media screen and (max-width: 1450px){
    .tv_footer_middle {
        width: 96%;
    }
    .timeBorderSlider {
        padding: 0 2%;
    }
    .tv_footer_left {
        padding: 0 0 0 2%;
    }
}
@media screen and (max-width: 800px), screen and (max-height: 750px) {
    .episodeCover {
        font-size: 0.9em;
    }

    .detailview_title {
        font-size: 1.3em;
    }

    #detailview_bottom_wrapper.series {
        min-height: 29em;
    }
}
@media screen and (max-height: 750px) {
    .episodeCover {
        font-size: 0.75em;
    }

    #detailview_bottom_wrapper.series {
        min-height: 24em;
    }
}

@media screen and (max-height: 600px) {
    .detailview_bottom_series .texts {
        font-size: 0.9em;
    }
}
@media screen and (max-width: 800px){
.searchIcon {
    font-size: 1.4rem;
    padding: 0.5rem 0.8rem;
    width: 2.5rem;
}
    .icon_footer_tv {
        margin-right: 5px;
        margin-bottom: 10px;
    }
.channelNrTO {
    font-size: 1.2em;
    margin: 6px 15px 0 15px;
}
.firmen_logo_header_tv {
    height: 35px;
}
.tv_header_right,
.header_tv_hover {
    top: 100px;
}
.header_tv_hover{
    height: 48px;
}
.tv_footer_left h1 {
    font-size: 1.3em;
    height: auto;
    padding-top: 40px;
    white-space: nowrap;
}
.tv_footer_left p {
    font-size: 1.2em;
}
.tv_footer_right, .tv_footer_left {
    height: 70px;
}
.tv_footer_right {
    font-size: 0.9em;
    padding: 45px 5px 0 0;
}
#zeitStrich .line {
    top: 133px;
}

.scrollbar_tv_categorie_sender {
    height: calc(100% - 240px);
}
.scrollbar_tv_categories_programm {
    height: calc(100% - 310px);
}
.aktTime {
    left: 45%;
}
.main_search_tv_categorie_sender label {
    margin-left: 0;
}
#detailview_bottom_wrapper {
    height: 75%;
    max-height: unset;
}
.playerStyleImage {
    height: calc(100vh - 100px) !important;
    top: 100px;
}
.iconRightTime,
.iconLeftTime {
    top: 140px;
    height: 33px;
    padding-top:5px;
}
div#guideContainer {
    margin: 100px 0 0 0;
}

.main_search {
    margin: 0 0 0 25px;
}

.input_field_search {
    padding: 5px;
    font-size: 1.2em;
}
.main_radio,
.main_aufnahme,
.main_fernsehen {
    padding: 140px 0 10em 0;
}
.main_search {
    width: 80%;
}
.main_start {
    margin: 0 auto 0 auto;
    padding: 120px 0;
}
.login, .html404 {
    padding-top: 120px;
}
.login {
    max-width: 90%;
    margin: 0 auto auto;
}
#mySidenav #about {
    height: 65px;
}
}