@font-face {
    font-family: 'open_sansregular';
    src: url('fonts/OpenSans-Regular-webfont.eot');
    src: url('fonts/OpenSans-Regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/OpenSans-Regular-webfont.woff') format('woff'),
         url('fonts/OpenSans-Regular-webfont.ttf') format('truetype'),
         url('fonts/OpenSans-Regular-webfont.svg#open_sansregular') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'open_sansbold';
    src: url('fonts/OpenSans-Bold-webfont.eot');
    src: url('fonts/OpenSans-Bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/OpenSans-Bold-webfont.woff') format('woff'),
         url('fonts/OpenSans-Bold-webfont.ttf') format('truetype'),
         url('fonts/OpenSans-Bold-webfont.svg#Manrope-Bold,open_sansbold') format('svg');
    font-weight: normal;
    font-style: normal;
}

:root{
    --farbe-root:#fff;
    --farbe-bg:#000;
    --farbe-rot:#ff0000;
    --farbe-gruen:#2ac432;
    --farbe-orange:#ff9118;
    --farbe-gelb:#ffce44;
    --farbe-blau:#3193f1;
    --farbe-grau:#333;
    --farbe-hellgrau:#888;
    --farbe-dunkelgrau:#666;
    --farbe-schwarz:#000;
    --farbe-rosa:%icon_rosa%;
    --farbe-lila:%icon_lila%;
    --farbe-hinweis-confirm:#f30000;
    --tab2-border:5px;
}

*{
	padding:0px;
	margin:0px;
	font-family:NatoSans,open_sansregular,Helvetica, Ariel, sans-serif;
	font-weight:normal;
	font-size:12px;
	line-height:16px;
	font-style:normal;
    color:var(--farbe-root);
	border:0px;
    outline:none;
	text-decoration:none;
	border-collapse:collapse;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-text-size-adjust: none;
	/*-webkit-transform: translate3d(0,0,0);*/
    color-scheme: light only;
}
html {
	width:100%;
	height:100%;
	background:var(--farbe-bg);
    overflow: hidden;
}
body {
    width:100%;
	height:100%;
    overflow: hidden;
}
#backg{
    position:fixed;
    left:0px;
	top:0px;
	width:100%;
	height:calc(100% + 100px);
    overflow: hidden;
    background:var(--farbe-bg);
    transition: filter 0.5s;
	-webkit-transform: translate3d(0,0,0);
    opacity: 0.3;
    z-index:2;
}
#backg img{
    display:block;
    margin-left:-50px;
    margin-top:-50px;
    min-width: calc(100% + 100px);
    min-height: calc(100% + 100px);
    transition: filter 0.5s;
    -webkit-transform: translate3d(0,0,0);
}
#backg.login{
    opacity: 1;
}
#backg.blur img{
    filter: blur(5px);
}
#node{
    position: absolute;
    top:-100px;
    left:0px;
    background: #f00;
    z-index:1;
}
.mitte{
	display: inline-block;
    display: block;
    position: relative;
	width:100%;
    max-width:1000px;
    margin: auto;
    text-align: left;
}
.mitteXY{
	position:absolute !important;
	left:50%;
	top:50%;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
.mitteX{
	position:absolute;
	left:50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}
.mitteY{
	position:absolute;
	top:50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.blur{
	-webkit-filter: blur(10px);
	-moz-filter: blur(10px);
	-o-filter: blur(10px);
	-ms-filter: blur(10px);
	filter: blur(10px);
}
.blur3{
	-webkit-filter: blur(3px);
	-moz-filter: blur(3px);
	-o-filter: blur(3px);
	-ms-filter: blur(3px);
	filter: blur(3px);
}
.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
  -webkit-user-select: none;   /* Chrome/Safari/Opera */
  -khtml-user-select: none;    /* Konqueror */
  -moz-user-select: none;      /* Firefox */
  -ms-user-select: none;       /* Internet Explorer/Edge */
  user-select: none;           /* Non-prefixed version, currently
                                  not supported by any browser */
}
.nope{
    pointer-events: none;
}
.center{
    text-align: center;
    color:inherit;
}
.link{
    text-decoration: underline #999;
}
.link.over{
    text-decoration: none;
}
.linkrev{
    text-decoration: none;
}
.linkrev.over{
    text-decoration: underline #999;
}
.maus.over{
    opacity: 0.5;
}
.bt_icon{
    position: relative;
    display: inline-block;
    background: #ccc;
    color:#333;
    transition: all 0.2s;
    padding:7px 15px;
    border-radius: 3px;
    padding-left:40px;
    overflow: hidden;
}
.bt_icon .rahmen{
    position: absolute;
    left:0px;
    top:0px;
    width: 30px;
    height: 100%;
    background: #333;
}
.bt_icon .rahmen .pics{
    position: absolute;
    left:10px;
    top:8px;
    transition: all 0.2s;
}
.bt_icon.over .rahmen .pics{
    margin-left: 5px;
}
.bt_icon.over{
    background: #333;
    color:#fff;
}
h1{
    color:inherit;
    font-size:24px;
    line-height: 26px;
    margin-bottom: 15px;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;
    font-weight: 400;
}
h1.big{
    font-size:30px;
    line-height: 30px;
    margin-bottom: 20px;
    font-family:NatoSans,Manrope-Regular,open_sansregular,Helvetica, Ariel, sans-serif;
}
h1.link{
    cursor: pointer;
    text-decoration: none;
}
h1.link:hover{
    opacity: 0.5;
}
h2{
    color:inherit;
    font-size:16px;
    line-height: 18px;
    margin-bottom: 10px;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;
    font-weight: 600;
}
h3{
    color:inherit;
    font-size:14px;
    line-height: 18px;
    margin-bottom: 0px;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;
    font-weight: 600;
}
h4{
    display:inline-block;
    color:inherit;
    font-size:13px;
    line-height: 15px;
    margin-bottom: 0px;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;
    font-weight: 600;
}
img{
	vertical-align:top;
}
a{
	cursor: pointer;
    color:inherit;
}
b{
    color:inherit;
    font-size: inherit;
    line-height: inherit;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;
    font-weight: 900;
}
span,center{
    color:inherit;
    font-weight: inherit;
    font-size: inherit;
    line-height: inherit;
}
small{
    color:inherit;
    font-size: 10px;
    font-weight:inherit;
    line-height: inherit;
}
i{
    color:inherit;
	font-style: italic;
    font-size: inherit;
    line-height: inherit;
}
u{
	color:inherit;
    text-decoration: underline;
    font-size: inherit;
    line-height: inherit;
}
del{
	display: inline;
	color:#f00;
	font-size: inherit;
	line-height: inherit;
}
dfn{
	color:#666;
}
 /* CONTENT ####################################################################*/
textarea {
    resize: none;
}
ul,ol,li{
    color:inherit;
}
ul,ol{
    padding-left:18px;
}
mark{
    background:var(--farbe-gelb);
    border-radius: 2px;
    color:#000;
    padding:0px 2px;
    font-size: inherit;
}
#initdata{
    display: none;
}
.file_btn{
    color:inherit;
    line-height: inherit;
    display: block;
    position: relative;
    padding-left:40px;
    margin-bottom: 10px;
}
.file_btn.over .label{
    text-decoration: underline;
}
.file_btn .pics{
    position: absolute;
    left:0px;
    top:0px;
}
.file_btn .label{
    color:inherit;
    line-height: inherit;
    display: inline-block;
    margin-top: 13px;
}

/* Inhalt ######################################################################*/
.inhalt .bt{
    display: inline-block;
    position: relative;
    padding:8px 15px;
    height: auto;
    line-height: auto;
    background: #fff;
    color:#333;
    vertical-align: top;
    border-radius: 3px;
    transition: all 0.2s;
    margin-right: 10px;
    margin-bottom: 10px;
}
.inhalt .bt.block{
    display: block;
    text-align: center;
    margin-right: 0px;
}
.inhalt .bt .mit_pics_nav{
    display: inline-block;
    color:inherit;
    font-size:16px;
    font-family: 'NatoSans,Manrope-Bold,open_sansbold';
    font-weight: 900;
    vertical-align: top;
}
.inhalt .bt .pics_nav{
    display: inline-block;
    margin-left:-10px;
    vertical-align: top;
    transition: 0.2s all;
}
.inhalt .bt.over,.inhalt .bt:hover,
.inhalt .bt.gruen.over,.inhalt .bt.gruen:hover,
.inhalt .bt.blau.over,.inhalt .bt.blau:hover,
.inhalt .bt.orange.over,.inhalt .bt.orange:hover,
.inhalt .bt.rot.over,.inhalt .bt.rot:hover,
.inhalt .bt.schwarz.over,.inhalt .bt.schwarz:hover,
.inhalt .bt.grau.over,.inhalt .bt.grau:hover{
    background: #ccc;
    color:#000;
}
.inhalt .bt.over .pics_nav,.inhalt .bt:hover .pics_nav{
    filter:invert(1);
}
.inhalt .bt.gruen{
    background: var(--farbe-gruen);
    color:#fff;
}
.inhalt .bt.blau{
    background: var(--farbe-blau) !important;
    color:#fff;
}
.inhalt .bt.orange{
    background: var(--farbe-orange);
    color:#fff;
}
.inhalt .bt.rot{
    background: var(--farbe-rot);
    color:#fff;
}
.inhalt .bt.grau{
    background: var(--farbe-grau);
    color:#fff;
}
.inhalt .bt.schwarz{
    background: var(--farbe-schwarz);
    color:#fff;
}
.inhalt .bt.klein{
    padding:4px 10px;
}
.inhalt h1 .bt.klein{
    float: right;
    font-size:12px;
    padding:2px 5px;
    margin-left: 10px;
    margin-right: 0px;
    top: 3px;
    vertical-align: baseline;
}
.inhalt .bt.last{
    margin-bottom: 0px;
}
.inhalt .bt .ic{
    margin-right:5px;
    margin-left:-5px;
}
@media only screen and (max-width:600px){
    .inhalt .bt .ic{
        margin-top:0px;
    }
}
.inhalt .suche{
    position: relative;
    display: block;
    width: 100%;
    background: rgba(255,255,255,0.5);
    border-radius: 4px;
    height: 36px;
    line-height: 36px;
    transition: all 0.2s;
}
.inhalt .suche.focus{
    background: rgba(255,255,255,1);
}
.inhalt .suche.add{
    width:calc(100% - 40px - 10px);
}
.inhalt .suche .suche_lupe{
    position: absolute;
    top:-2px;
    left:-5px;
    height: 40px;
    width:40px;
}
.inhalt .suche input{
    position: absolute;
    top:0px;
    left:30px;
    width:calc(100% - 40px);
    height: 36px;
    line-height: 36px;
    background: none;
    color:#333;
    font-size: 12px;
}
.inhalt .suche .add{
    position: absolute;
    top:0px;
    right:-50px;
    font-size:20px;
    line-height: 36px;
    height: 36px;
    width: 36px;
    text-align: center;
    border-radius: 40px;
    background: rgba(255,255,255,0.5);
    color:#666;
    transition: all 0.2s;
}
.inhalt .suche .add.over{
    background: #fff;
    color:#333;
}
.inhalt .suche .add.icon .icon_svg{
    margin-top:3px;
    width:20px;
    height:20px;
}
/* Fenster ######################################################################*/
.fenster{
    position:absolute;
    position:fixed;
    display: none;
    top:0px;
    left:0px;
    width:100%;
    height: 100%;
    z-index:2;
    z-index:19;
    text-align: center;
    -webkit-transform: translate3d(0,0,0);
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
    overflow-y: scroll;
}
/*
.fenster_close{
    position:fixed;
    display: none;
    width:100%;
    height:60px;
    z-index:19;
    left:0px;
    bottom:0px;
    opacity: 0;
    transition: opacity 0.2s;
}
.fenster_close .mask{
    overflow: hidden;
    max-width:calc(600px - 40px);
    height: 60px;
    padding:0px 20px;
    border-radius: 0px 0px 3px 3px;
    display: block;
    margin: auto;
}
*/
.fenster .fenster_nav{
    display: block;
    position: relative;
    text-align: center;
    margin-top:10px;
    height: 50px;
    line-height: 54px;
    background: #fff;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.25),0px 0px 1px rgba(0,0,0,0.35);

    opacity: 0;
    transition: opacity 0.2s;
    position: sticky;
    bottom: 0px;
    margin:auto;
    margin-top:-50px;
    border-radius: 0px 0px 3px 3px;
}
.fenster .fenster_nav .bt_close,
.fenster .fenster_nav .kreis{
    display: inline-block;
    text-align: center;
    background: rgba(0,0,0,0.1);
    height: 30px;
    width: 30px;
    line-height: 30px;
    transition: all 0.2s;
    border-radius: 30px;
    color:#333;
    font-size: 20px;
    box-shadow:inset 0px 1px 0.5px rgba(0,0,0,0.5);
}
.fenster .fenster_nav .txt{
    display: inline-block;
    color:#333;
    font-size:10px;
    line-height: 20px;
    padding:0px 5px;
    vertical-align: middle;

    position: relative;
    text-overflow: ellipsis;
    overflow: hidden;
    width: calc(100% - 50px);
}
.fenster .fenster_nav .bt_close.over{
    background: rgba(0,0,0,0.2);
    box-shadow:inset 0px 0px 0.5px rgba(0,0,0,0.5);
}
.fenster .fenster_nav .bt_prev,
.fenster .fenster_nav .bt_next{
    display: inline-block;
    position: absolute;
    top:10px;
    white-space: nowrap;
    overflow: hidden;
    width:calc(50% - 60px);
}
.fenster .fenster_nav .bt_prev .kreis,
.fenster .fenster_nav .bt_next .kreis{
    line-height: 24px;
    font-size: 24px;
    vertical-align: middle;
}
.fenster .fenster_nav .bt_prev{
    left:20px;
    text-align: left;
}
.fenster .fenster_nav .bt_next{
    right:20px;
    text-align: right;
}
.fenster .fenster_nav .bt_prev.over .kreis,
.fenster .fenster_nav .bt_next.over .kreis{
    background: rgba(0,0,0,0.2);
    box-shadow:inset 0px 0px 0.5px rgba(0,0,0,0.5);
}

.fenster .box{
    position: relative;
    display:block;
    padding:20px;
    width:calc(100% - 40px);
    max-width: calc(600px - 40px);
    background: #fff;
    color:#333;
    box-shadow: 0px 0px 10px #000;
    border-radius: 0px 0px 3px 3px;
    text-align: left;
    margin-top: 0px;
    opacity:0;
    transition: opacity 0.2s,margin-top 0.2s;
    overflow:hidden;
}
.fenster .box .fenster_nav{
    display: block;
    margin-top:10px;
    margin-bottom: 0px;
    margin-left: -20px;
    margin-right: -20px;
    height: 60px;
    box-shadow: none;
}
.fenster .bt{
    display: inline-block;
    position: relative;
    padding:7px;
    height: auto;
    line-height: auto;
    background: #ddd;
    color:#333;
    vertical-align: top;
    border-radius: 3px;
    transition: all 0.2s;
    margin-right: 10px;
    margin-bottom: 10px;
}
.fenster .bt.inaktiv{
    opacity: 0.5;
}
.fenster .bt.weiss{
    padding:3px 15px;
    background: none;
}
.fenster .bt.weiss.over{
    background: #ddd;
    color:#333;
}
.fenster .bt.block{
    display: block;
    margin-right: 0px;
}
.fenster .bt.over,.fenster .bt.gruen.over,.fenster .bt.rot.over{
    background: #333;
    color:#fff;
}
.fenster .bt.gruen{
    background: #2ac432;
    color:#fff;
}
.fenster .bt.rot{
    background: #f73434;
    color:#fff;
}
.fenster .bt.klein{
    padding:4px 6px;
}
.fenster .bt.inline{
    margin-top: 5px;
    margin-bottom: 5px;
}
.fenster .bt.mtop{
    margin-top: 10px;
    margin-bottom: 0px;
}
.fenster .bt.last{
    margin-bottom: 0px;
}
.fenster .bt .pics{
    margin-top: 1px;
    margin-left:5px;
}
.fenster .bt .ic2_box{
    margin-right: 5px;
    transition: all 0.2s;
}
.fenster .bt.icon_only .ic2_box{
    margin-right: 0px;
}
.fenster .bt.over .ic2_box{
    filter: invert(1);
}
.fenster hr{
    display: block;
    height: 1px;
    margin:20px -20px;
    margin-bottom: 10px;
    background: rgba(0,0,0,0.10);
}
.fenster hr.klein{
    margin:10px -20px;
}
.fenster h2 small{
    padding-left: 10px;
    font-size: 9px;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;
    font-weight: 900;
}
.fenster small{
    display:inline-block;
    line-height: 13px;
}
.fenster small br{
    line-height: inherit;
}
.fenster .werte,.fenster .werte .zeile{
    display: block;
    color:inherit;
}
.fenster .werte .zeile{
    margin-bottom:5px;
    white-space: nowrap;
    background: rgba(0,0,0,0.05);
    padding:3px;
    border-radius: 3px;
}
.fenster .werte .zeile .bez{
    position: relative;
    display: inline-block;
    color:inherit;
    padding-right: 10px;
    font-size:11px;
    line-height:15px;
    white-space: normal;
    vertical-align: top;
}
.fenster .werte .zeile .wert{
    display: inline-block;
    color:inherit;
    white-space: normal;
    vertical-align: baseline;
    font-size:12px;
    line-height:15px;
}
.fenster .werte.klein .zeile{
    margin-bottom:5px;
    white-space: nowrap;
    background: none;
    padding:0px;
    border-radius: 0px;
}
.fenster .werte.klein .zeile .bez{
    display: block;
    font-size:10px;
    padding-left: 3px;
}
.fenster .werte.klein .zeile .wert{
    display: block;
    background: rgba(0,0,0,0.05);
    padding:3px;
    border-radius: 3px;
}
.fenster .suche{
    position: relative;
    display: block;
    width: 100%;
    background: rgba(0,0,0,0.1);
    border-radius: 4px;
    height: 26px;
    line-height: 26px;
}
.fenster .suche.add{
    width:calc(100% - 30px - 10px);
}
.fenster .suche .suche_lupe{
    position: absolute;
    top:-2px;
    left:0px;
    height: 30px;
    width:30px;
}
.fenster .suche input{
    position: absolute;
    top:0px;
    left:30px;
    width:calc(100% - 30px);
    height: 26px;
    line-height: 26px;
    background: none;
    color:#333;
}

.fenster .suche .add{
    position: absolute;
    top:0px;
    right:-40px;
    font-size:20px;
    line-height: 26px;
    height: 26px;
    width: 26px;
    text-align: center;
    border-radius: 30px;
    background: rgba(0,0,0,0.1);
    color:#999;
    transition: all 0.2s;
}
.fenster .suche .add.over{
    background: #333;
    color:#fff;
}

.fenster .tab{
    position: relative;
    display: block;
    color:inherit;
    font-size:inherit;
	line-height:inherit;
}
.fenster table{
    display:block;
	position:relative;
	empty-cells:show;
	border-collapse:collapse;
	font-size:inherit;
	line-height:inherit;
	table-layout: fixed;
    color:inherit;
}
.fenster tbody,.fenster thead,.fenster tr,.fenster th,.fenster td{
	font-size:inherit;
	line-height:inherit;
    color:inherit;
}
.fenster td{
    padding-right: 20px;
    padding-top:3px;
}
.fenster .tab.border td{
    padding-left: 5px;
    padding-right: 5px;
    border:1px solid #ccc;
}
.fenster td:last-child{
    padding-right: 0px;
}
.fenster td.right{
    text-align: right;
}
.fenster td.gruen span{
    background: #3ad041;
}
.fenster td.rot span{
    background: #f60b0b;
}
.fenster td span{
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 10px;
    margin-right: 5px;
    vertical-align: baseline;
}
.fenster .legende{
    opacity: 0.5;
    font-size:11px;
    border-bottom:1px solid #ddd;

}
.fenster .legende td{
    padding-bottom:3px;
}
@media only screen and (max-width:440px){
    .fenster .werte .zeile{
        margin-bottom:5px;
        white-space: nowrap;
        background: none;
        padding:0px;
        border-radius: 0px;
    }
    .fenster .werte .zeile .bez{
        display: block;
        font-size:10px;
        padding-left: 3px;
    }
    .fenster .werte .zeile .wert{
        display: block;
        background: rgba(0,0,0,0.05);
        padding:3px;
        border-radius: 3px;
    }
}
/* KALENDER ##################################################################*/
.kalender{
    color:#fff !important;
}
.kalender.schwarz{
    color:#000 !important;
}
.kalender small{
    margin-left: 5px;
    opacity:0.5;
}
.kalender .legende{
    margin-left: 10px;
    margin-right: 0px;
}
.jahr {
	display:block;
	font-size:20px;
	margin:0px 10px;
	margin-top:20px;
	font-weight:normal;
}
.monat{
	display:inline-block;
	position:relative;
    margin-right: 30px;
    margin-bottom: 30px;
	border:0px solid #f00;
	vertical-align:top;
    text-align: left;
    min-width: 300px;
    color:inherit;
}
@media only screen and (max-width:600px){
    .kalender{
        width: 100%;
        text-align: center;
        margin-right: 0px;
    }
    .monat{
        width: 100%;
        margin-right: 0px;
        display: block;
    }
    .monat .tag,.monat .tag_auswahl,.monat .tag_leer,.monat .tag_auswahl_wochenende,.monat .kw{
        height:36px !important;
    	line-height:36px !important;
    }
}
.monat .flip{
    position: relative;
    text-align: center;
    color:inherit;
}
.monat .flip small{
    margin:0px;
    line-height: 24px;
    vertical-align: top;
    color:inherit;
}
.monat .flip a{
    display: inline-block;
    position: absolute;
    top:0px;
    left:1px;
    height: 22px;
    line-height: 19px;
    width: 36px;
    border-radius: 3px;
    text-align: center;
    font-size: 20px;
    color:inherit;
}
.monat .flip a.over{
    background: rgba(255,255,255,0.2);
    text-decoration: none;
}
.monat .flip a.rechts{
    left:auto;
    right:1px;
}
.monat .flip.fmonat .ljahre{
    left:75px;
}
.monat .flip.fmonat .ljahrzehnt{
    left:35px;
}
.monat .flip.fmonat .rjahre{
    left:auto;
    right:75px;
}
.monat .flip.fmonat .rjahrzehnt{
    left:auto;
    right:35px;
}
.monat .flip .name{
    display: inline-block;
    height: 22px;
    line-height: 22px;
    margin-bottom: 5px;
}
.monat .name{
	display:block;
	font-size:16px;
    color:inherit;
}
.monat .wtage{
	display:block;
	position:relative;
	border-bottom:1px solid rgba(255,255,255,0.4);
    color:inherit;
}
.kalender.schwarz .monat .wtage{
    border-bottom:1px solid rgba(0,0,0,0.2);
}
.monat .wtage div{
	display:inline-block;
	width:calc((100% - 15px) / 7);
    height:30px;
	line-height:30px;
	text-align:center;
	font-size:10px;
    color:inherit;
}
.monat .wtage .kw{
    width: 15px !important;
    font-size: 8px;
    vertical-align:baseline;
    color:inherit;
    opacity: 0.7;
}
.monat .wtage .wochenende{
	color:inherit;
    opacity: 0.7;
}
.monat .woche{
	display:block;
    color:inherit;
}
.monat .tag,.monat .tag_auswahl,.monat .tag_leer,.monat .tag_auswahl_wochenende,.monat .kw{
	position:relative;
	vertical-align:top;
	display:inline-block;
    width:calc((100% - 15px) / 7);
	height:30px;
	line-height:30px;
	text-align:center;
}
.monat .kw{
    width:15px;
    font-size: 8px;
    color:inherit;
    opacity: 0.5;
    text-align: center;
}
.monat span{
    position: relative;
    display: inline-block;
    color:inherit;
    z-index: 10;
}
.monat .aktiv span{
    color:#000;
}
.monat .tag,.monat .tag_auswahl,.monat .tag_auswahl_wochenende{
	/*cursor:pointer;*/
}
.monat .tag_auswahl,.monat .tag_auswahl_wochenende{
	background:#f00;
	color:#fff;
	font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;
    font-weight: 900;
}
.monat .tag.wochenende{
	color:inherit;
    opacity: 0.5;
}
.monat .tag.over,.monat .tag_wochenende.over{
	color:#fff;
    color:#000;
}
.monat .tag .over_bg{
    position: absolute;
    top:2px;
    left:2px;
    width:calc(100% - 4px);
    height:calc(100% - 4px);
    opacity: 0;
    background: #d00;
    border-radius: 3px;

    z-index:2;
}
.monat .tag .over_bg.opa{
    background: #fff;
}
.monat .tag.over .over_bg{
    opacity: 1;
}
.monat .tag.over .over_bg.opa{
    opacity: 0.7;
}
.monat .tag.soft,.monat .tag_wochenende.soft{
	opacity:0.25;
}
.monat .termin{
    border-radius:3px;
}
.monat .buchung{
	position:absolute;
	left:0px;
	top:0px;
	width:100%;
	display:block;
	opacity:0.5;
}
.monat .taginfo{
	position:absolute;
	top:30px;
	left:0px;
	padding:0px 6px;
	line-height:24px;
	white-space:nowrap;
	background:#fff;
	border:1px solid #ccc;
	z-index:1;
	text-align:left;
}
.monat .taginfo .alle{
	display:block;
}
.monat .taginfo .dot{
	display:inline-block;
	position:relative;;
	vertical-align:middle;
	margin-right:5px;
	margin-top:-1px;
	width:12px;
	height:12px;
	opacity:0.5;
	border-radius:20px;
}
.monat .tag_bg{
    position: absolute;
    top:2px;
    left:2px;
    width:calc(100% - 4px);
    height:calc(100% - 4px);
    border-radius: 3px;
    z-index:1;
}
.monat .tag_bg.flip_aktiv{
    background: #fff;
}
.monat .tag_bg.weiss{
    background: #fff;
}
.monat .tag_bg.rot{
    background: #f00;
}
.monat .tag_bg.rot_rand{
    width:calc(100% - 8px);
    height:calc(100% - 8px);
    border: 2px solid rgba(255,0,0,0.5);
}
.monat .rot_rand span{
    color:#fff;
}
.monat .tag .pkt{
    position: absolute;
    top:3px;
    left:3px;
    width:calc(100% - 6px);
    z-index:11;
    text-align: center;
    line-height: 4px;
}
.monat .tag .pkt .pk{
    position: relative;
    display: inline-block;
    width:4px;
    height: 4px;
    margin:1px;
    border-radius: 4px;
    vertical-align: top;
}
.monat .tag .pkt .klein{
    display:inline-block;
    color:#000;
    font-size: 8px;
    line-height: 4px;
    vertical-align: top;
    margin:0px 1px;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;
    font-weight: 900;
}
.monat .tag .hover{
    display:none;
    position: absolute;
    top:calc(100% + 5px);
    background:#222;
	color:#fff;
	font-size:12px;
	padding:1px 5px;
	border:1px solid #fff;
	border-radius:3px;
	box-shadow: 0px 0px 3px #000;
    text-align: left;
    z-index:100;
}
.monat .tag.over .hover{
    display: block;
}
.monat .tag .hover p{
    display: block;
    white-space: nowrap;
    color:inherit;
    font-size:inherit;
}

.zeitlinie{
    display: block;
}
.zeitlinie .zjahr{
    display: block;
    font-size: 18px;
    margin-bottom: 10px;
}
.zeitlinie .zbox{
    display: block;
    position: relative;
    padding-left:100px;
    margin-bottom: 20px;
    text-align: left;
}
.zeitlinie.inline .zbox{
    padding-top: 30px;
    padding-left:0px;
}
.zeitlinie .zbox .zmonat{
    position: absolute;
    top:0px;
    left:0px;
    display: block;
}
.zeitlinie .zbox .zmonat_linie{
    position: absolute;
    top:20px;
    left:10px;
    width:1px;
    height: calc(100% - 30px);
    background: rgba(255,255,255,0.2);
}
.zeitlinie.schwarz .zbox .zmonat_linie{
    background: rgba(0,0,0,0.2);
}
.zeitlinie .zbox .zbt{
    position: relative;
    display: inline-block;
    margin-bottom: 10px;
    background: #fff;
    padding:10px 15px;
    border-radius: 3px;
    overflow: hidden;
    color:#333;
}
.zeitlinie .zbox .zbt.over{
    background: #ccc;
}
.zeitlinie .zbox .zbt.datum{
    padding-left:100px;
}
.zeitlinie .zbox .zbt.datum .zanzeige{
    position: absolute;
    top:0px;
    left:0px;
    display:block;
    padding:10px 5px;
    width:80px;
    height: 100%;
    text-align: center;
    vertical-align: top;
}
.zeitlinie .zbox .zbt.datum.kurz{
    padding-left:60px;
}
.zeitlinie .zbox .zbt.datum.kurz .zanzeige{
    width:40px;
}

.zeitplan{
    display: block;
    position: relative;
    width:100%;
    white-space: nowrap;
    margin-top:10px;
}
.zeitplan .labels{
    display:inline-block;
    position: absolute;
    top:0px;
    left:0px;
    vertical-align: top;
}
.zeitplan .labels .label{
    display: block;
    background: #fff;
    color:#333;
    padding:10px 15px;
    border-radius: 3px;
    margin-bottom:20px;
}
.zeitplan .labels .label.over{
    opacity: 0.75;
}
.zeitplan .wochen{
    display:inline-block;
    position: relative;
}
.zeitplan .wochen .legende{
    position: relative;
    display: block;
    top:-25px;
    left:20px;
}
.zeitplan .wochen .legende .kw{
    position: relative;
    display:inline-block;
    width:70px;
    height: 15px;
    line-height: 15px;
    text-align: center;
    font-size:10px;
    vertical-align: top;
    opacity: 0.5;
}
.zeitplan .wochen .legende .kw .zeitplan_kw_linie{
    position: absolute;
    top:25px;
    left:0px;
    height: 100px;
    width:1px;
    background: rgba(255,255,255,0.2);
    display: none;
}
.zeitplan .zeitplan_balken{
    position: absolute;
    height: 10px;
    width: 100px;
    border-radius: 3px;
    background: #f00;
    margin-top:-5px;
    display: none;
    z-index: 2;
}
.zeitplan .zeitplan_balken .von{
    position: absolute;
    top:-13px;
    left:0px;
    text-align: left;
    font-size:10px;
    line-height: 15px;
    height: 15px;
}
.zeitplan .zeitplan_balken .bis{
    position: absolute;
    bottom:-14px;
    right:0px;
    text-align: right;
    font-size:10px;
    line-height: 15px;
    height: 15px;
}
.zeitplan .zeitplan_balken .linie_label{
    position: absolute;
    left:-40px;
    top:4px;
    height: 1px;
    width:10px;
    background: rgba(255,255,255,1);
}
.zeitplan .zeitplan_heute{
    position: absolute;
    top:0px;
    left:0px;
    width:10px;
    height: 100%;
    background: rgba(255,255,255,0.1);
    border-radius: 0px;
    z-index: 1;
}

/* dWeek #########################################################################*/
.dWeek{
	display:block;
    position: relative;
	width:100%;
    height:500px;
    font-size:13px;
	line-height:18px;
    margin-bottom: 0px;
}
.dWeek .wheader{
    position: relative;
    display: block;
    width: 100%;
    font-size: 20px;
    line-height: 20px;
    height: 20px;
    margin-bottom: 10px;
}
.dWeek .wheader .wbtns{
    position: absolute;
    right: 0px;
    top:0px;
    line-height: 20px;
}
.dWeek .wheader .wbtns a{
    vertical-align: middle;
}
.dWeek .wheader .wbtns select{
    display:inline-block;
    width: auto;
    padding:0px 5px;
    height: 20px;
    vertical-align: middle;
    margin-top: -5px;
    margin-right: 20px;
    border-radius: 3px;
    outline:1px solid #ccc;
    cursor: auto;
}
.dWeek .wlegende{
    display: block;
    width: 100%;
    height: 40px;
}
.dWeek .wlegende .wzeiten{
    display:inline-block;
    position: relative;
    width:35px;
    height: 100%;
    vertical-align: top;
    font-size: 11px;
    text-align: right;
    padding-right: 5px;
    font-weight: bold;
}
.dWeek .wlegende .wtag{
    display: inline-block;
    position: relative;
    height: 100%;
    width:calc((100% - 40px) / 7);
    vertical-align: top;
    text-align: center;
    font-weight: bold;
}
.dWeek .wwoche{
    display: block;
    width: 100%;
    height: calc(100% - 70px);
}
.dWeek .wwoche .wzeiten{
    display:inline-block;
    position: relative;
    width:40px;
    height: 100%;
    vertical-align: top;
}
.dWeek .wwoche .wuhrzeit{
    display: block;
    position: relative;
    width: calc(100% - 5px);
    text-align: right;
    padding-right: 5px;
}
.dWeek .wlinie{
    position: absolute;
    top:0px;
    left:0px;
    width:100%;
    height: 1px;
    background: rgba(255,255,255,0.3);
}
.dWeek .wlinie_rechts{
    position: absolute;
    top:0px;
    right:0px;
    width:1px;
    height: 100%;
    background: rgba(255,255,255,0.3);
}
.dWeek .wlinie_unten{
    position: absolute;
    bottom:0px;
    left:0px;
    width:100%;
    height: 1px;
    background: rgba(255,255,255,0.3);
}
.dWeek .wwoche .wzeiten .wuhrzeit span{
    display: inline-block;
    position: relative;
    font-size:11px;
    top:-10px;
}
.dWeek .wwoche .wtag{
    display: inline-block;
    position: relative;
    height: 100%;
    width:calc((100% - 40px) / 7);
    vertical-align: top;
}
.dWeek .wwoche .wtag .box{
    position: absolute;
    top:0px;
    left:0px;
    width:calc(100% - 0px);
    white-space: normal;
    height: 50px;
    z-index: 1;
    transition: 0.1s all;
}
.dWeek .wwoche .wtag .box .txt{
    position: absolute;
    width:calc(100% - 10px);
    height:calc(100% - 10px);
    padding:5px;
    line-height: 11px;
    font-size:10px;
    text-align: left;
    overflow: hidden;
    z-index: 2;
}
.dWeek .wwoche .wtag .box .txt br{
    line-height: 15px;
}
.dWeek .wwoche .wtag .box .bg{
    position: absolute;
    top:0px;
    left:0px;
    width:100%;
    height:100%;
    background: #ccc;
    opacity: 1;
    border-radius: 4px;
    z-index: 1;
    transition: 0.1s all;
}
.dWeek .wwoche .wtag .box.over .bg{
    opacity: 0.8;
}
.dWeek .wwoche .wtag .box .titel{
    display: block;
    font-size:11px;
    line-height: inherit;
    font-weight: bold;
}
.dWeek .wwoche .wtag .box .txt .farb_label{
    box-shadow: 0px 0px 0.5px rgba(0,0,0,0.5);
}
@media only screen and (max-width:600px){
    .dWeek .wlegende .wzeiten{
        font-size:9px;
    }
    .dWeek .wlegende .wtag{
        font-size:10px;
    }
    .dWeek .wwoche .wtag .box .txt{
        display: none;
    }
}
/* tab2 #########################################################################*/
.tab2{
    display: inline-block;
    text-align: left;
    position: relative;
    border-collapse: collapse;
    font-size: inherit;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    margin-right: 0px;
    margin-bottom: 20px;
}
.tab2 tr{
    font-size: inherit;
}
.tab2 tr td{
    position: relative;
    cursor: pointer;
}
.tab2 tr.over td{
    color:#000;
    background: rgba(255,255,255,0.9) !important;
}
.tab2 tr.aktiv td{
    background: rgba(255,0,0,0.25);
}
.tab2 tr.aktiv:nth-child(2n+2) td{
    background: rgba(255,0,0,0.4);
}
.tab2 th, .tab2 td {
    padding: 10px 10px;
    font-size: inherit;
}
.tab2 th {
    position: sticky;
	position: -webkit-sticky;
	top: 80px;
	z-index: 1;
    background: #fff;
    color:#000;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;
    font-weight: 600;
}
@media only screen and (max-width:600px){
    .tab2 th {
        top: 60px;
    }
    .tab2 th.tab2_labels{
        top: 95px !important;
    }
}
.tab2 th a{
    font-family:inherit;
    font-weight:inherit;
    border-radius: 3px;
    padding:0px;
    transition: 0.1s all;
    white-space: nowrap;
}
.tab2 th a.over{
    background: rgba(0,0,0,0.1);
    padding:2px 5px;
    margin-left: -5px;
}
.tab2 th.tab2_suche{
    border-radius: var(--tab2-border) var(--tab2-border) 0px 0px !important;
}
.tab2 th.tab2_suche input{
    display: block;
    margin-top: -5px;
    margin-left: -10px;
    width: calc(100% + 20px);
    border-radius: 3px;
    padding:5px 10px;
    padding-left:25px;
    background: rgba(0,0,0,0.1);
    color:#000;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;
    font-weight: 600;
}
.tab2 th.tab2_suche input.focus{
    border:1px solid rgba(255,0,0,0.5);
    padding:4px 9px;
    padding-left:24px;
}
.tab2 th.tab2_suche .lupe{
    position: absolute;
    left:11px;
    top:11px;
}
.tab2 th.tab2_labels{
    top: 115px;
}
.tab2 th.tab2_labels:first-child{
    border-radius: 0px 0px 0px var(--tab2-border) !important;
}
.tab2 th.tab2_labels:last-child{
    border-radius: 0px 0px var(--tab2-border) 0px !important;
}
.tab2 th:first-child,.tab2 td:first-child{
    padding-left: 15px;
    border-radius: var(--tab2-border) 0px 0px var(--tab2-border);
}
.tab2 th:last-child,.tab2 td:last-child{
    padding-right: 15px;
    border-radius: 0px var(--tab2-border) var(--tab2-border) 0px;
}
.tab2 tr:nth-child(2n+2) td{
    background: rgba(255,255,255,0.2);
}
.tab2 th.bottom {
    position: sticky;
	position: -webkit-sticky;
	bottom: 0px;
	z-index: 1;
    background: #fff;
    border-radius: var(--tab2-border);
    color:#000;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;
    font-weight: 600;
}
.tab2 th.bottom .rechts{
    position: absolute;
    right:0px;
    top:0px;
}
.tab2 th.bottom .rechts span{
    display: inline-block;
    padding:10px;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;
    font-weight: 600;
    color:#000;
}
.tab2 th.bottom .rechts a{
    display: inline-block;
    position: relative;
    color:#000;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;
    font-weight: 600;
    padding:1px 25px;
    text-align: center;
    background: rgba(0,0,0,0.1);
    margin:0px 15px;
    vertical-align: top;
    margin-top: 7px;
}
.tab2 th.bottom .rechts a.over{
    margin:0px 15px;
    margin-top: 7px;
    background: rgba(0,0,0,0.3);
}
.tab2 th .tab_sort_bt .ic2_box{
    display: none;
    vertical-align: middle;
}
.tab2 th .tab_sort_bt.up .ic2_box.up{
    display: inline-block;
}
.tab2 th .tab_sort_bt.down .ic2_box.down{
    display: inline-block;
}
.tab2 th.cbox{
    cursor: pointer;
}
.tab2 th.cbox .ic2_box{
    display: inline-block;
    position: relative;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border:1px solid #000;
    opacity: 0.75;
}
.tab2 .cbox .ic2_box{
    display: inline-block;
    position: relative;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border:1px solid #fff;
    opacity: 0.75;
}
.tab2 .cbox .ic2_box svg{
    display: none;
    margin-top: 1.5px;
    margin-left: 0.5px;
}
.tab2 .aktiv .cbox .ic2_box{
    background: #fff;
}
.tab2 .aktiv .cbox .ic2_box svg{
    display: block;
}
.tab2 .aktiv .cbox .ic2_box path{
    fill:#000;
}
.tab2 tr.over .cbox .ic2_box{
    border:1px solid #000;
    opacity: 0.75;
}

@media only screen and (max-width:600px){
    .zeitlinie .zbox .zbt{
        padding:7px 10px;
    }
    .zeitlinie .zbox .zbt.datum .zanzeige{
        padding:7px 5px;
    }
    .zeitlinie .zbox .zbt.datum.kurz{
        padding-left:40px;
    }
    .zeitlinie .zbox .zbt.datum.kurz .zanzeige{
        width:20px;
    }

}
/* BIGPIC ####################################################################*/
.bigpic{
    display:none;
    position: fixed;
    top:0px;
    left:0px;
    width: 100%;
    height: 100%;
    z-index:99;
    background: #222;
    transition: opacity 0.2s;
}
.bigpic .bild{
    position: absolute;
	height:calc(100% - 60px);
	width:100%;
	top:30px;
	margin: auto;
	z-index:8;
}
.bigpic .bild img{
    max-width:calc(100% - 60px);
    max-height:100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
    transition: all 0.2s;
    cursor: pointer;
    border-radius: 3px;
    box-shadow: 0px 0px 20px #000;
    outline:1px solid rgba(255,255,255,0.1);
}
.bigpic .close{
	position: absolute;
	top:0px;
	right:0px;
	width:100px;
	height:100px;
    z-index:10;
	cursor: pointer;
    color:#fff;
}
.bigpic .close .icon{
    position: absolute;
    top:9px;
    right:10px;
    font-size:20px;
    color:inherit;
}
.bigpic .close.over .icon{
    opacity: 0.5;
}
.bigpic .del{
	position: absolute;
	top:0px;
	left:0px;
	z-index:10;
	cursor: pointer;
    color:#f00;
    height: 40px;
    line-height: 40px;
    padding:0px 10px;
    opacity: 1;
}
.bigpic .del.over{
    opacity: 0.5;
}
.bigpic .prev,
.bigpic .next{
    left:0px;
    height:200px;
    line-height: 200px;
    padding:0px 10px;
    width:100px;
    font-size:30px;
    color:rgba(255,255,255,0.5);
    text-shadow:0px 0px 2px rgba(0,0,0,0.5);
    z-index:10;
    transition: all 0.2s;
}
.bigpic .next{
    left:auto;
    right:0px;
    text-align:right;
}
.bigpic .prev.over,
.bigpic .next.over{
    padding:0px 0px;
    font-size:40px;
    color:rgba(255,255,255,1);
    text-shadow:0px 0px 2px rgba(0,0,0,1);
}
/* PLAYER ####################################################################*/
.player{
    display:none;
    position: fixed;
    top:0px;
    left:0px;
    width: 100%;
    height: 100%;
    z-index:150;
    background: rgba(0,0,0,0.8);
    transition: all 0.2s;
}
.player video{
    height:100%;
    width: auto;
    max-height: calc(100% - 100px);
    max-width: calc(100% - 100px);
    z-index:1;
    overflow: hidden;
    border-radius: 3px;
    box-shadow: 0 0 10px #000;
    background: #000;
}
@media only screen and (max-width:600px){
    .player video{
        max-height: calc(100% - 100px);
        max-width: calc(100% - 0px);
    }
}
.player .bt_close{
    position: absolute;
    top:-10px;
    left:-10px;
    font-size:25px;
    z-index:2;
    color:#fff;
    padding:20px;
}
.player .bt_close.over{
    color:#f00;
}
/* WIN #######################################################################*/
.win{
    display:none;
    position: fixed;
    top:0px;
    left:0px;
    width: 100%;
    height: 100%;
    z-index:99;
}
.win .bg{
    position: absolute;
    display: block;
    top:0px;
    left:0px;
    width: 100%;
    height: 100%;
    transition: all 0.2s;
    backdrop-filter: blur(0px);
    -webkit-backdrop-filter: blur(0px);
    z-index: 1;
}
.win .bg.aktiv{
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}
.win .box{
    position: relative;
    display: inline-block;
    padding:20px;
    background: #fff;
    color:#333;
    border-radius: 5px;
    opacity: 0;
    max-width:calc(100% - 60px);
    margin-top: -40px;
    transition: all 0.2s;
    box-shadow: 0 2px 20px #000;
    z-index: 2;
    overflow: hidden;
}
.win .box.overflow{
    overflow:visible;
}
.win .box.ohneBG{
    background: none;
    box-shadow: none;
    padding:0px;
    max-width:100%;
    overflow:visible;
}
.win .box.max_h{
    height: calc(100% - 60px);
}
.win .box.llinie{
    padding-left:15px;
}
.win .box .close{
    position: absolute;
    top:0px;
    right:0px;
    color:inherit;
    padding: 5px 6px 15px 15px;
    opacity: 0.5;
    font-size:20px;
    transition: opacity 0.2s;
    cursor: pointer;
}
.win .box .close.over{
    opacity: 1;
}
.win input{
    display: block;
    width:calc(100% - 12px);
    padding:5px;
    border-radius: 3px;
    margin-bottom:10px;
    color:#333;
}
.win input:focus{
    /*box-shadow: 0px 0px 5px #000;*/
}
.win .box.ohneBG input{
    box-shadow: 0 2px 10px #000;
    box-shadow: 0px 0px 1px #000;
}
.win .box.ohneBG input:focus{
    background: #fdd;
}
.win input:last-child{
    margin-bottom: 0px;
}
.win .box.weiss input{
    background: #eee;
}
.win .box.weiss input:focus{
    background: #fdd;
    box-shadow: 0px 0px 1px #000;
}
.win .box .login_btn{
    display:block;
    text-align: center;
    margin-top: 20px;
    margin-bottom: 20px;
    color:#fff;
    font-size: 15px;
}
.win .box .login_btn.over{
    opacity: 0.5;
}
.win .box .pw_reset{
    display:block;
    font-size:10px;
    text-align: center;
    color:rgba(0,0,0,0.5);
}
.win .box .pw_reset.over{
    color:rgba(0,0,0,1);
}
.win .box.ohneBG .pw_reset{
    color:var(--farbe-root);
    opacity: 0.5;
}
.win .box.ohneBG .pw_reset.schwarz{
    color:rgba(0,0,0,0.75);
}
.win .box.ohneBG .pw_reset.over{
    opacity: 1;
}
.win .box .rechtliches{
    display:inline-block;
    font-size:10px;
    padding:10px 10px;
    color:var(--farbe-root);
    /*text-shadow: 0px 0px 1px rgba(0,0,0,0.5);*/
    opacity: 0.5;
}
.win .box .rechtliches.schwarz{
    color:rgba(0,0,0,0.75);
}
.win .box .rechtliches.over{
    opacity: 1;
}
.win .logo{
    position: relative;
    width:200px;
    height: 80px;
    margin-bottom: 20px;
    margin-top: -50px;
}
.win .logo img{
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter:drop-shadow(0px 0px 0.5px #000);
}
.win .logo_default{
    position: relative;
    display: inline-block;
    margin-bottom: 30px;
    height: 60px;
}
.win .bt{
    display: inline-block;
    position: relative;
    padding:7px 10px;
    margin-right: 10px;
    margin-bottom: 10px;
    height: auto;
    line-height: auto;
    background: #ddd;
    color:#333;
    vertical-align: top;
    border-radius: 3px;
    transition: all 0.2s;
}
.win .bt.inaktiv{
    opacity: 0.5;
}
.win .bt svg{
    margin-left: -2px;
    margin-right: 5px;
    transition: all 0.2s;

}
.win .bt.over{
    background: #333;
    color:#fff;
}
.win .bt.over svg{
    filter:invert(1);
}
.win .bt.gruen{
    background: #2ac432;
    color:#fff;
}
.win .bt.rot{
    background: #f73434;
    color:#fff;
}
.win .bt.gruen.over,.win .bt.rot.over{
    background: #333;
}
.win .bt_klein{
    display: inline-block;
    padding:10px 15px;
    height: auto;
    line-height: auto;
    font-size: 11px;
    background: #fff;
    color:#333;
    margin-top:20px;
    margin-bottom:30px;
    border-radius: 3px;
    box-shadow: 0 2px 10px #000;
    box-shadow: 0px 0px 1px #000;
}
.win .bt_klein.over{
    background: #999;
}
.win .bt.rechts{
    float: right;
    margin-right: 0px;
}
.win .bt.mtop{
    margin-top: 10px;
    margin-bottom: 0px;
}
.win .bt.last{
    margin-bottom:0px;
}
.win .bt.klein{
    font-size: 11px;
    padding:5px 7px;
}
.win hr{
    display: block;
    height: 1px;
    margin:20px 0px;
    margin-left:-20px;
    margin-right: -20px;
    background: rgba(0,0,0,0.15);
}
.win hr.bt_top{
    margin-top:0px;
}
.win hr.klein{
    margin:10px 0px;
    margin-left:-20px;
    margin-right: -20px;
}
.win .focus_box{
    display:block;
    width:0px;
    height:0px;
}
.win .version{
    display: block;
    font-size:10px;
    color:#aaa;
    text-align: center;
}
.win .linie_rechts{
    position: absolute;
    left:0px;
    top:0px;
    width: 5px;
    height: 100%;
    background: #ccc;
    z-index: 1;
}
@media only screen and (max-width:600px){
    .win .box{
        padding:10px;
        max-width:calc(100% - 40px);
    }
    .win hr{
        margin:10px 0px;
        margin-left:-10px;
        margin-right: -10px;
    }
}
/* LOADING & SPERRE #######################################################*/
#loading {
	display:none;
	position:fixed;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0);
	z-index:100;
}
@keyframes rotation_ani {
  0% {transform: rotate(0deg);} 100% {transform: rotate(360deg);}
}
.load_icon{
	position:fixed;
	bottom:10px;
	left:50%;
	margin-left:-20px;
	height:40px;
	width:40px;
	animation: rotation_ani 0.7s linear infinite;
}
.load_icon .pics.loading {
	position:absolute;
	left:0px;
	top:0px;
	width:40px;
	height:40px;
}
#sperre{
    display: none;
	position: fixed;
	top:0px;
	left:0px;
	width:100%;
	height: 100%;
	z-index:200;
}
#hinweis{
	display:none;
	position:fixed;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	background:rgba(255,255,255,0);
	backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    -webkit-transform: translate3d(0,0,0);
    transition: opacity 0.2s;
    z-index:199;
}
#hinweis.nobtn{
    cursor: default;
}
.hinweis{
	position:absolute;
	width:calc(100% - 60px);
    max-width:300px;
    color:#000;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;
    font-weight: 900;
	text-align:center;
	margin-top:-10px;
    font-size:14px;
    background: #fff;
    padding:20px 30px;
    border-radius: 10px;
    box-shadow: 0px 2px 20px rgba(0,0,0,0.5);
    cursor: pointer;
}
.hinweis h1{
    font-size: 24px;
    margin-bottom: 20px;
}
.hinweis div{
    color:inherit;
    font-size:inherit;
}
.hinweis div.over button{

}
.hinweis button{
    position: relative;
    display: block;
    margin: auto;
    margin-top:30px;
    cursor: pointer;
    color:inherit;
    border-radius:50%;
    width:40px;
    height: 40px;
    background: none;
    border:1px solid #000;
}
.hinweis button span{
    color:inherit;
    font-size:16px;
}
.hinweis button.over,.hinweis button:hover,.hinweis button:focus{
    background: #fff;
    border:1px solid #000 !important;
    color:#000;
}
.hinweis button.over span,.hinweis button:hover span,.hinweis button:focus span{
    font-size:20px;
}
.hinweis .ic2_box.error path{
    fill:var(--farbe-rot);
}
.hinweis .ic2_box.ok path{
    fill:var(--farbe-gruen);
	/*color:#0f0;*/
}
.hinweis .ic2_box.hint path{
    fill:var(--farbe-blau);
	/*color:#0f0;*/
}
.hinweis .ic2_box.confirm path{
    fill:var(--farbe-hinweis-confirm);
	/*color:#0f0;*/
}
.hinweis .ic2_box.update{
    animation: ani_rotate 1.5s linear infinite;
}
.hinweis.ok button{
    /*border:1px solid #0f0;*/
}
.hinweis.confirm{
    cursor: default;
}
.hinweis.confirm a{
    display: inline-block;
    position: relative;
    padding:8px 15px;
    height: auto;
    line-height: auto;
    background: var(--farbe-hinweis-confirm);
    color:#fff;
    vertical-align: top;
    border-radius: 3px;
    transition: all 0.2s;
    margin: 10px 20px;
    margin-top: 20px;
}
.hinweis.confirm a.nein{
    background: var(--farbe-hellgrau);
}
.hinweis .load_icon{
    top: -30px;
}
.hinweis .wait,.hinweis .balken{
    position: relative;
    display: block;
    margin:auto;
    margin-top: 20px;
    margin-bottom: 20px;
    height: 5px;
    border-radius: 5px;
    width:200px;
    background: #ddd;
    overflow: hidden;
}
.hinweis .wait div,.hinweis .balken div{
    position: absolute;
    top:0px;
    left:0%;
    width:100%;
    height: 100%;
    background: #333;
}
.hinweis .balken div{
    transition: all 0.2s linear;
}
.hinweis .wait div{
    animation: wait_ani 3s infinite;
}
.hinweis input{
    display:block;
    position: relative;
    background: #fff;
    color:#333;
    padding:8px 10px;
    font-size: inherit;
    line-height:16px;
    border-radius: 3px;
    width:200px;
    margin:20px auto;
}
.hinweis a.over{
    opacity: 0.5;
}

.hinweis .bt{
    display: inline-block;
    position: relative;
    padding:7px;
    height: auto;
    line-height: auto;
    background: #ddd;
    color:#333;
    vertical-align: top;
    border-radius: 3px;
    transition: all 0.2s;
}
.hinweis .bt.over{
    background: #333;
    color:#fff;
}


.pincode{
    width:250px;
    text-align: center;
}
.pincode a{
    position: relative;
    display: inline-block;
    width:60px;
    height: 60px;
    border-radius: 100px;
    border:1px solid rgba(255,255,255,0.5);
    margin:10px;
    text-align: center;
    line-height: 60px;
    font-size: 30px;
    color:#fff;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;

}
.pincode .txt{
    display: block;
    font-size: 14px;
    color:#fff;
    margin-bottom: 30px;
}
.pincode .code{
    display: block;
    height: 40px;
    font-size: 30px;
    color:#fff;
    font-family:NatoSans,Manrope-Bold,open_sansbold,Helvetica, Ariel, sans-serif;

}
@keyframes wait_ani {
	0% {left:0%;width:100%;}
	50% {left:100%;width:0%;}
	51% {left:0%;width:0%;}
	100% {left:0%;width:100%;}
}
#saveicon{
	position:fixed;
	left:0px;
	top:0px;
	z-index:201;
}
#saveicon .saveicon{
	position:absolute;
	width:80px;
	height:80px;
	opacity:0;
	opacity: 1;
	animation: saveicon_ani 1s;
    box-shadow: 0 0 20px rgba(0,0,0,0.5),0 0 5px rgba(0,0,0,0.3);
}
#saveicon .saveicon.save_ok{
	background: #3ad041;
	border-radius:100px;
}
#saveicon .saveicon.save_error{
	background: #f60b0b;
	border-radius:100px;
}
@keyframes saveicon_ani {
  0% {opacity:0;} 30% {opacity:1;} 70% {opacity:1;} 100% {opacity:0;}
}
#debug{
    display:none;
    position: fixed;
    left:0px;
    top:0px;
    z-index:100;
    background: #333;
    color:#fff;
    padding:2px;
    font-size:9px;
}
/* HELP ############################################################ */
#help{
	display: none;
	position: absolute;
	top:0px;
	left:0px;
	background:#222;
	color:#fff;
    white-space: nowrap;
	font-size:12px;
	padding:1px 5px;
	border:1px solid #fff;
	border-radius:3px;
	box-shadow: 0px 0px 3px #000;
	z-index:210;
}
#help code{
    font-size: inherit;
    line-height: inherit;
    color: %icon_rot%;
}
#help span{
    font-size: inherit;
    line-height: inherit;
    color: %icon_gruen%;
}
#help hr{
    display:block;
    height: 1px;
    width: calc(100% + 10px);
    margin-left: -5px;
    background: rgba(255,255,255,0.25);
}
.help{
	cursor:help;
}
/* FORM #######################################################*/
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
	color: rgba(0,0,0,0.5);
}
input::-moz-placeholder,textarea::-moz-placeholder{
	color: rgba(0,0,0,0.5);
}
input[type=range] {
	-webkit-appearance: none;
	border:0;
	margin:15px 5px;
	width: 300px;
	background:none !important;
}
input[type=range]:focus {
  outline: none;
}
input[type=range]::-webkit-slider-runnable-track {
	width: 100%;
	height: 2px;
	cursor: pointer;
	background: #aaa;
}
input[type=range]::-webkit-slider-thumb {
	border: 0px;
	height: 30px;
	width: 30px;
	border-radius: 10px;
	background: #fff;
	cursor: pointer;
	-webkit-appearance: none;
	margin-top: -9px;
}
input[type=range]:focus::-webkit-slider-runnable-track {
	background: #c1a755;
}
input[type=range]::-moz-range-track {
	width: 100%;
	height: 2px;
	cursor: pointer;
	background: #aaa;
}
input[type=range]::-moz-range-thumb {
    border: 0px;
	height: 30px;
	width: 30px;
	border-radius: 30px;
	background: #fff;
	cursor: pointer;
	margin-top: -9px;
}

/*
input,select{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    min-height: 16px;
}
*/
/* PICS #######################################################*/
.pics{
	position:relative;
	display:inline-block;
	vertical-align:top;
	background:url(images/pics.png?v15) no-repeat 0 0;
	background-size: 400px 400px;
	width:40px;
	height:40px;
}
.pics.kreis{
	border:1px solid #fff;
	border-radius:50px;
}
.pics.black{
    filter:invert(1);
}
.pics.schatten{
    filter:drop-shadow(0px 0px 1px rgba(0,0,0,0.5));
}
.pics.nav_menu		 		{background-position:0px 0px;}
.pics.icon_loading			{background-position:-40px 0px;}
.pics.nav_user		 		{background-position:-80px 0px;}
.pics.b_nav_user		 	{background-position:-40px -40px;}
.pics.nav_cloud		 		{background-position:-120px 0px;}
.pics.nav_cloud_black		{background-position:-120px -40px;}
.pics.nav_x			 		{background-position:-160px 0px;}
.pics.nav_location	 		{background-position:-200px 0px;}
.pics.icon_refresh		 	{background-position:-240px 0px;}
.pics.icon_close		 	{background-position:-280px 0px;}
.pics.icon_mail 		 	{background-position:-320px 0px;}
.pics.b_icon_mail 		 	{background-position:-320px -40px;}
.pics.icon_kunde		 	{background-position:-360px 0px;}
.pics.b_icon_kunde		 	{background-position:-360px -40px;}
.pics.hinweis_klein	 		{background-position:-210px -10px;width:20px;height:20px;}
.pics.icon_download		 	{background-position:-0px -40px;}
.pics.icon_ok	      	 	{background-position:-80px -40px;}
.pics.sign_reset		 	{background-position:-0px -80px;}
.pics.sign_close		 	{background-position:-40px -80px;}
.pics.sign_save		       	{background-position:-80px -80px;}

.pics.camera		       	{background-position:-160px -40px;}
.pics.b_camera		       	{background-position:-160px -80px;}
.pics.chaticon	           	{background-position:-200px -40px;}
.pics.b_chaticon          	{background-position:-200px -80px;}
.pics.b_nav_location        {background-position:-240px -80px;}
.pics.dokument              {background-position:-280px -80px;}
.pics.backspace             {background-position:-320px -80px;}

.pics.ok_big        		{background-position:0px -140px;width:20px;height:20px;}
.pics.b_ok_big        		{background-position:-20px -140px;width:20px;height:20px;}

.pics.cb1_1				{background-position:0px -160px;width:14px;height:14px;}
.pics.cb1_0				{background-position:-14px -160px;width:14px;height:14px;}
.pics.cb2_1				{background-position:-28px -160px;width:14px;height:14px;}
.pics.cb2_0				{background-position:-42px -160px;width:14px;height:14px;}
.pics.close				{background-position:-56px -160px;width:14px;height:14px;}
.pics.sync				{background-position:-70px -160px;width:14px;height:14px;}
.pics.sync_black		{background-position:-84px -160px;width:14px;height:14px;}
.pics.cb3_1				{background-position:-98px -160px;width:14px;height:14px;}
.pics.cb3_0				{background-position:-112px -160px;width:14px;height:14px;}

.pics.sign_black		{background-position:-150px -340px;width:125px;height:60px;}
.pics.sign_white		{background-position:-275px -340px;width:125px;height:60px;}

.pics.save_ok			{background-position:0px -240px;width:80px;height:80px;}
.pics.save_error		{background-position:0px -320px;width:80px;height:80px;}

.pics.file_na	 		{background-position:-80px -205px;}
.pics.file_zip	 		{background-position:-120px -205px;}
.pics.file_ppt	 		{background-position:-160px -205px;}
.pics.file_mov	 		{background-position:-200px -205px;}
.pics.file_xls	 		{background-position:-240px -205px;}
.pics.file_doc	 		{background-position:-280px -205px;}
.pics.file_pic	 		{background-position:-320px -205px;}
.pics.file_pdf	 		{background-position:-360px -205px;}


.pics.i			 		{width:14px;height:14px;}
.pics.i.pfeil_wo		{background-position:0px -175px;}
.pics.i.pfeil_nwso		{background-position:0px -175px;transform: rotate(45deg);}
.pics.i.pfeil_o			{background-position:-14px -175px;transform: rotate(0deg);}
.pics.i.pfeil_w			{background-position:-14px -175px;transform: rotate(180deg);}
.pics.i.pfeil_no		{background-position:-14px -175px;transform: rotate(-45deg);}
.pics.i.pfeil_n			{background-position:-14px -175px;transform: rotate(-90deg);}
.pics.i.pfeil_s			{background-position:-14px -175px;transform: rotate(-270deg);}
.pics.i.download  		{background-position:-28px -175px;}
.pics.i.download_s  	{background-position:-28px -175px;transform: rotate(90deg);}
.pics.i.frage  		    {background-position:-42px -175px;}
.pics.i.ausruf  		{background-position:-56px -175px;}
.pics.i.sync  		    {background-position:-70px -175px;}
.pics.i.del_x  		    {background-position:-84px -175px;}
.pics.i.minus  		    {background-position:-98px -175px;}
.pics.i.plus  		    {background-position:-112px -175px;}
.pics.i.ok  		    {background-position:-126px -175px;}
.pics.i.edit  		    {background-position:-140px -175px;}
.pics.i.glocke			{background-position:-154px -175px;}
.pics.i.verlauf  		{background-position:-168px -175px;}
.pics.i.lupe	  		{background-position:-182px -175px;}
.pics.i.mail    	  	{background-position:-196px -175px;}
.pics.i.infoicon	  	{background-position:-210px -175px;}
.pics.i.paket	  	    {background-position:-224px -175px;}
.pics.i.maps	  	    {background-position:-238px -175px;}
.pics.i.auge	  	    {background-position:-252px -175px;}
.pics.i.chbox	  	    {background-position:-266px -175px;}
.pics.i.euro	  	    {background-position:-280px -175px;}
.pics.i.person	  	    {background-position:-294px -175px;}
.pics.i.kaffee	  	    {background-position:-308px -175px;}
.pics.i.stern	  	    {background-position:-322px -175px;}

.pics.i.b_pfeil_wo		{background-position:0px -190px;}
.pics.i.b_pfeil_nwso	{background-position:0px -190px;transform: rotate(45deg);}
.pics.i.b_pfeil_w		{background-position:-14px -190px;transform: rotate(180deg);}
.pics.i.b_pfeil_o		{background-position:-14px -190px;transform: rotate(0deg);}
.pics.i.b_pfeil_no		{background-position:-14px -190px;transform: rotate(-45deg);}
.pics.i.b_pfeil_n		{background-position:-14px -190px;transform: rotate(-90deg);}
.pics.i.b_pfeil_s		{background-position:-14px -190px;transform: rotate(-270deg);}
.pics.i.b_download  	{background-position:-28px -190px;}
.pics.i.b_download_s  	{background-position:-28px -190px;transform: rotate(90deg);}
.pics.i.b_frage  		{background-position:-42px -190px;}
.pics.i.b_ausruf  		{background-position:-56px -190px;}
.pics.i.b_sync  		{background-position:-70px -190px;}
.pics.i.b_del_x  		{background-position:-84px -190px;}
.pics.i.b_minus  		{background-position:-98px -190px;}
.pics.i.b_plus  		{background-position:-112px -190px;}
.pics.i.b_ok  		    {background-position:-126px -190px;}
.pics.i.b_edit  		{background-position:-140px -190px;}
.pics.i.b_glocke		{background-position:-154px -190px;}
.pics.i.b_verlauf  		{background-position:-168px -190px;}
.pics.i.b_lupe	  		{background-position:-182px -190px;}
.pics.i.b_mail  	  	{background-position:-196px -190px;}
.pics.i.b_infoicon	  	{background-position:-210px -190px;}

.pics.land{
    width:20px;
    height:20px;
    border-radius: 20px;
}
.pics.land.de,.pics.land.DE{background-position:-300px -320px;}
.pics.land.en,.pics.land.EN{background-position:-320px -320px;}
.pics.land.fr,.pics.land.FR{background-position:-340px -320px;}
.pics.land.it,.pics.land.IT{background-position:-360px -320px;}
.pics.land.sp,.pics.land.SP{background-position:-380px -320px;}

.farb_label{
    display: inline-block !important;
    vertical-align: baseline !important;
    position: relative !important;
    background: #000;
    color:#fff;
    font-size:10px !important;
    line-height: 11px;
    padding: 2px 4px !important;
    border-radius: 2px !important;
    cursor: default;
}

.ic{
	display: inline-block;
	vertical-align: top;
	margin-top: 1px;
	width:14px;
	height:14px;
	border-radius: 14px;
}
.ic.weiss{
	background:#fff;
}
.ic.schwarz{
	background:#000;
}
.ic.rot{
	background: #ff0000;
}
.ic.gruen{
	background: #2ac432;
}
.ic.orange{
	background: #ff9118;
}
.ic.gelb{
	background: #ffce44;
}
.ic.blau{
	background: #3193f1;
}
.ic.rand{
	border:1px solid #666;
    width:12px;
	height:12px;
}
.ic.hell{
	border:1px solid #999;
}
.ic.rand .pics{
    margin-left:-1px;
    margin-top:-1px;
}
.ic.soft{
	opacity: 0.5;
}
.ic.m{
	vertical-align: middle;
}
.ic.b{
	vertical-align: baseline;
}
.ic.mr{
    margin-right: 5px;
}
.ic.ml{
    margin-left: 5px;
}

.ic2_box,.ic2{
    display: inline-block;
    position: relative;
    vertical-align: top;
}
.ic2_box.white_line path{
	fill:#fff;
}
.ic2_box.red_line path{
	stroke:#f00;
}
.ic2_box.red_fill path{
	fill:#f00;
}
.ic2_box.blue_fill path{
	fill:#3193f1;
}
.ic2_box.green_fill path{
	fill:#2ac432;
}
.ic2_box.white_fill path{
	fill:#fff;
}
.ic2_box.thin_line path{
	stroke-width:1px;
}
.ic2 path{}
.ic2.s80{
    width:80px;
    height:80px;
}
.ic2.s50{
    width:50px;
    height:50px;
}
.ic2.s32{
    width:32px;
    height:32px;
}
.ic2.s28{
    width:28px;
    height:28px;
}
.ic2.s24{
    width:24px;
    height:24px;
}
.ic2.s20{
    width:20px;
    height:20px;
}
.ic2.s16{
    width:16px;
    height:16px;
}
.ic2bt{
    display: inline-block;
    vertical-align: middle;
    margin-left: 5px;
    margin-top: -3px;
}
.ic2bt.weiss path{
    stroke:#fff;
}
.ic2bt.thin path{
    stroke-width:1px;
}
.ic2bt.over{
    opacity: 0.5;
}

@keyframes ani_rotate {
  0% {transform: rotate(0deg);} 100% {transform: rotate(360deg);}
}
.ani_rotate{
	animation: ani_rotate 1s linear infinite;
}
.ani_rotate_ic2{
	animation: ani_rotate 1s linear infinite;
    margin-top:-12px;
}
@keyframes ani_puls {
  0% {opacity:1;} 80% {opacity:0.5;} 100% {opacity:1;}
}
.ani_puls{
	animation: ani_puls 1s ease-out infinite;
}
@keyframes ani_fadeout {
  0% {opacity:0.3;} 100% {opacity:0;}
}
.ani_fadeout{
	animation: ani_fadeout 5s ease-out;
}

@media only screen and (max-width:600px){
    *{
        font-size:11px;
        line-height:15px;
    }
    h1{
        font-size:18px;
        line-height: 20px
        margin-bottom: 8px;
    }
    h2{
        font-size:14px;
        line-height:16px;
        margin-bottom: 8px;
    }
    h3{
        font-size:13px;
    }
}

.pics_nav{
	position:relative;
	display:inline-block;
	vertical-align:top;
	background:url(images/pics_nav.png?v2) no-repeat 0 0;
	background-size: 400px 400px;
	width:40px;
	height:40px;
}
.pics_nav.m{
    vertical-align: middle;
}
.pics_nav.black{
    filter:invert(1) opacity(0.8);
}
.pics_nav.sitemap	 	{background-position:0px 0px;}
.pics_nav.listedit	 	{background-position:-40px 0px;}
.pics_nav.gruppe	 	{background-position:-80px 0px;}
.pics_nav.ticket_open	{background-position:-120px 0px;}
.pics_nav.ticket_booked	{background-position:-160px 0px;}
.pics_nav.web       	{background-position:-200px 0px;}
.pics_nav.cfg	 		{background-position:-240px 0px;}
.pics_nav.home	 		{background-position:-280px 0px;}
.pics_nav.papierkorb	{background-position:-320px 0px;}
.pics_nav.bug			{background-position:-360px 0px;}
.pics_nav.ticket		{background-position:0px -40px;}
.pics_nav.code			{background-position:-40px -40px;}
.pics_nav.balken		{background-position:-80px -40px;}
.pics_nav.client		{background-position:-120px -40px;}
.pics_nav.location		{background-position:-160px -40px;}
.pics_nav.personal		{background-position:-200px -40px;}
.pics_nav.cloud			{background-position:-240px -40px;}
.pics_nav.paket			{background-position:-280px -40px;}
.pics_nav.plan			{background-position:-320px -40px;}
.pics_nav.tiles			{background-position:-360px -40px;}
.pics_nav.personen		{background-position:0px -80px;}
.pics_nav.checkbox		{background-position:-40px -80px;}
.pics_nav.report		{background-position:-80px -80px;}
.pics_nav.controlling	{background-position:-120px -80px;}
.pics_nav.user,.pics_nav.benutzer			{background-position:-160px -80px;}
.pics_nav.help			{background-position:-200px -80px;}
.pics_nav.dashboard		{background-position:-240px -80px;}
.pics_nav.company		{background-position:-280px -80px;}
.pics_nav.mail			{background-position:-320px -80px;}
.pics_nav.fragebogen	{background-position:-360px -80px;}
.pics_nav.form	 	    {background-position:0px -120px;}
.pics_nav.form_cfg	 	{background-position:-40px -120px;}
.pics_nav.form_open	 	{background-position:-80px -120px;}
.pics_nav.form_booked	{background-position:-120px -120px;}
.pics_nav.ticket_storno	{background-position:-160px -120px;}
.pics_nav.form_storno	{background-position:-200px -120px;}
.pics_nav.tablet	    {background-position:-240px -120px;}
.pics_nav.euro  	    {background-position:-280px -120px;}
.pics_nav.auto  	    {background-position:-320px -120px;}
.pics_nav.gast  	    {background-position:-360px -120px;}
.pics_nav.uhr     	    {background-position:0px -160px;}
.pics_nav.fon     	    {background-position:-40px -160px;}
.pics_nav.flug     	    {background-position:-80px -160px;}
.pics_nav.gallery     	{background-position:-120px -160px;}
.pics_nav.werkzeug     	{background-position:-160px -160px;}
.pics_nav.strom     	{background-position:-200px -160px;}
.pics_nav.kran     	    {background-position:-240px -160px;}
.pics_nav.kamera     	{background-position:-280px -160px;}
.pics_nav.kalender     	{background-position:-320px -160px;}
.pics_nav.gesetz     	{background-position:-360px -160px;}
.pics_nav.ticket_edit   {background-position:0px -200px;}
.pics_nav.buch          {background-position:-40px -200px;}
.pics_nav.add           {background-position:-80px -200px;}
/* NAV ####################################################################*/
.nav{
    position: fixed;
    top:0px;
    left:0px;
    margin: auto;
    text-align: center;
    width: 100%;
    z-index: 20;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.25),0px 0px 1px rgba(0,0,0,0.35);
    -webkit-transform: translate3d(0,0,0);
    transition: all 0.4s;
    top:-140px;
    opacity: 0;
}
.nav.mitbg{
    top:0px;
    box-shadow: 0px 0px 5px rgba(0,0,0,0.25),0px 0px 1px rgba(0,0,0,0.35);
}
.nav.show{
    top:0px;
    opacity: 1;
}
.nav.soft{
    opacity:0.2;
}
.nav.mobil{
    height: 70px;
}
.nav .header,.nav .btns{
    display:block;
    position: relative;
}
.nav .header{
    position: relative;
    height: 100px;
    background: #fff;
    transition: all 0.2s;
    z-index:22;
}
.nav.mitbg .header,.nav.mitbg .btns{
    background: none;
}
.nav .logo{
    display: block;
    position: relative;
    left:20px;
    height: 60px;
    transition: all 0.2s;
    cursor: pointer;
    z-index: 1;
}
.nav .logo img{
    margin:auto;
    transition: all 0.2s;
}
.nav .logo.over{
    opacity: 0.75;
}
.nav .user{
    position: absolute;
    right:20px;
    top:22px;
    transition: all 0.2s;
    z-index: 2;
}
.nav.mobil .user{
    margin-right: 45px;
}
.nav.nobtns .user{
    margin-right: 0px;
}
.nav .user .name{
    display: inline-block;
    vertical-align: middle;
    color:#333;
    font-family:open_sansbold,Helvetica, Ariel, sans-serif;
    cursor:pointer;
}
.nav .user .name.over{
    opacity: 0.5;
}
.nav .user .bild{
    display: inline-block;
    border-radius: 100px;
    overflow: hidden;
    transition: all 0.2s;
    vertical-align: middle;
    margin-left: 20px;
    height: 50px;
    box-shadow: 0px 0px 1px rgba(0,0,0,0.5);
}
.nav .user .bild.over{
    opacity:0.75;
}
.nav .user .bild img{
    width: 100% !important;
    height: 100% !important;
}
.nav .hbtns{
    position: absolute;
    right:20px;
    top:0px;
    transition: all 0.2s;
    z-index: 2;
    height: 100%;
}
.nav .hbtns .bild{
    display: inline-block;
    height: 100%;
    transition: all 0.2s;
    margin-left: 10px;
    filter:drop-shadow(0px 0px 1px rgba(0,0,0,0.5));
}
.nav .hbtns .bild.over{
    filter:drop-shadow(0px 0px 3px #000);
}
.nav .btns{
    white-space: nowrap;
    overflow: hidden;
    transition: all 0.2s;
    background: #fff;
    height:40px;
    z-index:21;
}
.nav .btns .mitte{
    padding:0px 20px;
    max-width:calc(1000px - 40px);
    z-index: 2;
}
.nav .btns .bt{
    position: relative;
    display: inline-block;
    /*line-height: 40px;*/
    margin-right: 20px;
    color:#333;
    font-family:open_sansbold,Helvetica, Ariel, sans-serif;
    transition: all 0.2s;
}
.nav .btns .bt .pics_nav,.nav .btns .bt img,.nav .btns .bt svg{
    display: none;
}
.nav .btns .bt p{
    line-height: 40px;
}
.nav .btns .bt .pics_nav{
    display: none;
    margin: auto;
}
.nav .btns .bt .line{
    background: #f00;
    position: absolute;
    left:0px;
    bottom:0px;
    transition: all 0.2s;
    height: 0px;
    width: 100%;
}
.nav .btns .bt.aktiv .line,.nav .btns .bt.aktiv.over .line{
    height: 0px;
}
.nav .btns .bt.over .line{
    height: 6px;
}
.nav .btns .pos{
    background: #f00;
    position: absolute;
    left:20px;
    bottom:6px;
    transition: all 0.2s;
    height: 2px;
    width: 0px;
}
.nav.mobil .btns{
    position: relative;
    display:block;
    height: auto;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.5);
    white-space: normal;
}
.nav.mobil .btns .btns_bg{
    position: absolute;
    top:0px;
    left:0px;
    width:100%;
    height:100%;
    z-index: 1;
    background: #000;
    overflow: hidden;
}
.nav.mobil .btns .btns_bg img{
    position: absolute;
    left:0px;
    top:0px;
    opacity: 1;
    z-index: 1;
}
.nav.mobil .btns .btns_bg .schatten{
    position: absolute;
    left:0px;
    top:0px;
    width: 100%;
    height: 100%;
    box-shadow: inset 0px -10px 30px rgba(0,0,0,0.2),inset 0px 10px 30px rgba(255,255,255,0.1);
    z-index: 2;
}
.nav.mobil .btns .mitte{
    padding:20px 0px;
    width:300px;
    text-align: center;
}
.nav.mobil .btns .bt{
    vertical-align: top;
    display: inline-block;
    width:80px;
    padding:0px 5px;
    padding-top:10px;
    height: 75px;
    margin:5px;
    background: rgba(255,255,255,0.1);
    border-radius: 5px;
}
.nav.mobil .btns .bt.aktiv{
    background: rgba(255,255,255,1);
}
.nav.mobil .btns .bt.aktiv p{
    color:#000;
}
.nav.mobil .btns .bt.aktiv .pics_nav{
    filter:invert(1);
}
.nav.mobil .btns .bt path{
    fill:#fff;
}
.nav.mobil .btns .bt.aktiv path{
    fill:#000;
}
.nav.mobil .btns .bt p{
    line-height: 12px;
}
.nav.mobil .btns .bt .pics_nav,.nav.mobil .btns .bt img,.nav.mobil .btns .bt svg{
    display: block;
    margin:auto;
    margin-bottom: -3px;
}
.nav.mobil .btns .bt img,.nav.mobil .btns .bt svg{
    margin-top:8px;
    margin-bottom:5px;
}
.nav.mobil .btns .bt .line{
    display: none;
}
/*
.nav.mobil .btns .bt.over .line{
    height: 6px;
    bottom:3px;
}
.nav.mobil .btns .bt.aktiv .line{
    height: 2px;
    bottom:7px;
}
*/
.nav.mobil .btns .pos{
    display: none;
}
.nav .menu{
    position: relative;
    position: absolute;
    display: inline-block;
    height: 40px;
    height: 100%;
    width: 40px;
    margin-left: 10px;
    margin-right: -10px;
    vertical-align: middle;
    display: none;
    z-index: 3;
}
.nav .menu.show{
    display: inline-block;
}
.nav.nobtns .menu.show{
    display:none;
}
.nav .menu div{
    position:absolute;
    width: 30px;
    height: 2px;
    background: rgba(0,0,0,0.4);
    left:5px;
    top:calc(50% - 1px);
    transition: all 0.2s;
}
.nav .menu.over div{
    width: 40px;
    left:0px;
    background: rgba(0,0,0,0.6);
}
.nav .menu div:first-child{
    top:calc(50% - 10px);
}
.nav .menu div:last-child{
    top:calc(50% + 8px);
}
.nav .menu.aktiv div{
    opacity: 0;
}
.nav .menu.aktiv div:first-child{
    opacity: 1;
    transform: rotate(-135deg);
    top:calc(50% - 1px);
}
.nav .menu.aktiv div:last-child{
    opacity: 1;
    transform: rotate(135deg);
    top:calc(50% - 1px);
}
.nav .bg{
    position: absolute;
    top:0px;
    left:0px;
    width:100%;
    height:100%;
    background: #000;
    overflow: hidden;
}
.nav .bg img{
    position: absolute;
    left:0px;
    top:0px;
    opacity: 1;
    z-index: 1;
}
.nav .bg .schatten{
    position: absolute;
    left:0px;
    top:0px;
    width: 100%;
    height: 100%;
    box-shadow: inset 0px -10px 30px rgba(0,0,0,0.2),inset 0px 10px 30px rgba(255,255,255,0.1);
    z-index: 2;
}
/* NAV2 ####################################################################*/
.nav2{
    position: fixed;
    top:0px;
    left:0px;
    margin: auto;
    text-align: center;
    width: 100%;
    z-index: 21;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.25),0px 0px 1px rgba(0,0,0,0.35);
    -webkit-transform: translate3d(0,0,0);
    transition: all 0.3s;
    top:-140px;
    opacity: 0;
}
.nav2 .mitte{
    display: block;
    position: relative;
    height: 100%;
    max-width: 100%;
}
.nav2.show{
    top:0px;
    opacity: 1;
}
.nav2.soft{
    opacity:0.2;
}
.nav2 .header{
    display:block;
    position: relative;
    height: 100px;
    background: #fff;
    transition: all 0.2s;
    white-space: nowrap;
    z-index:22;
}
.nav2 .logo{
    position: relative;
    display: inline-block;
    cursor: default;
    height: 100%;
    padding-left: 20px;
}
.nav2 .logo img{
    display: inline-block;
    position: relative;
    height: 60px;
    transition: all 0.2s;
    margin:auto;
    z-index: 1;
}
.nav2 .logo svg{
    display:inline-block;
    position: relative;
    transition: all 0.2s;
    cursor: pointer;
    z-index: 1;
    /*fill:inherit;*/
    display: none;
    left:0px;
}
.nav2 .logo svg path{}
.nav2 .hints{
    display: inline-block;
    position: absolute;
    right:15px;
    top:0px;
    height: 100%;
    line-height: 100%;
}
.nav2 .hints a{
    position: relative;
    display: none;
    cursor: pointer;
    height: 100%;
}
.nav2 .hints a.over{
    opacity: 0.5;
}
.nav2 .hints svg{
    display: inline-block !important;
    padding:0px 5px;
}
.menu2{
    display: block;
    position: fixed;
    left:0px;
    top:100px;
    height: calc(100% - 110px);
    width:200px;
    padding-top: 10px;
    padding-left:20px;
    background: #fff;
    z-index: 18;
    transition: all 0.3s;
    left:-300px;
    opacity: 0;
}
.menu2.show{
    left:0px;
    opacity: 1;
}
.menu2.soft,.menu2.soft.aktiv{
    opacity:0.2 !important;
}
.menu2 .bt{
    display: block;
    position: relative;
    color:inherit;
    vertical-align: middle;
    font-size:14px;
    height: 50px;
    line-height: 50px;
    transition: all 0.2s;
    white-space: nowrap;
}
.menu2 .bt span{}
.menu2 .bt .ic2_box{
    position: relative;
    display: inline-block;
    vertical-align: middle;
    fill:inherit;
    stroke:inherit;

}
.menu2 .bt svg{
    position: relative;
    display: inline-block;
    vertical-align: middle;
    fill:inherit;
    stroke:inherit;
    margin-left: 2px;
    margin-right: 20px;
    transition: all 0.2s;
}
.menu2 .bt svg path{
    stroke:inherit;
    fill:inherit;
}
.menu2 .bt.over svg{
    margin-left: 7px;
    margin-right: 10px;
}
.menu2 .abstand{
    display: block;
    position: relative;
    height: 25px;
}

@media only screen and (min-width:601px) and (max-width:950px){
    .nav2 .logo svg{
        display:none !important;
    }
    .menu2{
        width:52px !important;
    }
    .menu2 .bt span{
        display:none;
        padding:10px 20px;
        border-radius: 4px;
        margin-left: 10px;
        line-height: 20px;
        color:#fff;
    }
    .menu2 .bt.over span{
        display: inline-block;
        background: rgba(0,0,0,0.7);
        -webkit-backdrop-filter: blur(5px);
        backdrop-filter: blur(5px);
    }
    .menu2 .bt.over svg{
        margin-left: 12px;
        margin-right: 10px;
    }

}
@media only screen and (max-width:600px){
    .nav2 .logo{
        cursor: pointer;
    }
    .nav2 .logo img{
        margin-left:0px;
        left:0px !important;
    }
    .nav2 .logo svg{
        display:inline-block;
        margin-left:-15px;
    }
    .nav2 .logo.over svg{
        transform: scale(1.2);
    }

    .nav2.aktiv .logo svg{
        /*transform: rotate(-90deg);*/
        top:20px;
    }
    .menu2{
        z-index: 20;
        left:-300px !important;
        opacity: 0 !important;
    }
    .menu2.aktiv{
        left:0px !important;
        opacity: 1 !important;
    }
    .menu2.soft,.menu2.soft.aktiv{
        opacity:0 !important;
    }
}
/* INHALT ####################################################################*/
.inhalt{
    display:block;
    position: absolute;
    position:fixed;
    top:0px;
    left:0px;
	width:100%;
    min-height: 20px;
    height: 100%;
    margin:0px auto;
    transition: opacity 0.2s;
    z-index:1;
    z-index:3;
    -webkit-transform: translate3d(0,0,0);
    overflow-y: scroll;
}
.inhalt.noscroll{
    overflow-y:hidden;
    pointer-events: none;
}
.inhalt.hide{
    opacity: 0;
}
.inhalt.soft{
    opacity: 0.2;
}
.inhalt.app .mitte{
    padding-top: 100px;
    padding-left: 240px;
    width: auto;
    min-height: calc(100% - 100px);
}
@media only screen and (min-width:601px) and (max-width:950px){
    .inhalt.app .mitte{
        padding-top: 100px;
        padding-left: 92px;
    }
}
@media only screen and (max-width:600px){
    .inhalt.app .mitte{
        padding-top: 100px;
        padding-left: 20px;
    }
}
.inhalt .mitte{
    padding:0px 20px;
    padding-top:20px;
    width:calc(100% - 40px);
    max-width: 960px;
    min-height:calc(100% - 20px);
}
.inhalt .linie,.inhalt .linie_report{
    display: block;
    height: 1px;
    width:100%;
    margin-top:10px;
    margin-bottom:20px;
    background: rgba(255,255,255,0.25)
}
.inhalt .linie.schwarz,.inhalt .linie_report.schwarz{
    background: rgba(0,0,0,0.25)
}
.inhalt .linie_report{
    margin-top:15px;
    margin-bottom:5px;
}
.inhalt .nav_abstand{
    display: block;
    height: 0px;
}
.inhalt .nav_abstand.mitbtns{
    height: 140px;
}
.inhalt .nav_abstand.nobtns{
    height: 100px;
}
.inhalt .abschluss{
    display: block;
    height: 20px;
}
.inhalt .buttons{
    display: block;
    text-align: right;
    margin-top:-20px;
    margin-bottom:20px;
}
.inhalt .buttons .klein{
    display:inline-block;
    font-size: 10px;
    margin-left: 20px;
    opacity: 0.5;
}
.inhalt .buttons .klein.over,
.inhalt .buttons .klein.aktiv{
    opacity: 1;
}
.inhalt .legende{
    display: inline-block;
    margin:5px;
    color:rgba(255,255,255,0.6);
    font-size: 11px;
}
.inhalt .legende.over{
    color:rgba(255,255,255,1);
}
.inhalt .legende.hide{
    text-decoration: line-through;
    color:rgba(255,255,255,1);
    opacity: 0.4;
}
.inhalt .legende .dot{
    position: relative;
    display: inline-block;
    height: 10px;
    width: 12px;
    border-radius: 3px;
    box-shadow: 0px 0px 2px #000;
    margin-right: 5px;
}
.inhalt .footer_abstand{
	position:relative;
    display: block;
}
.inhalt .footer{
    display: none;
	position:relative;
	width:100%;
    opacity: 0;
    transition: opacity 0.2s;
}
.inhalt .footer.show{
    opacity:1;
}
.inhalt .footer .mitte{
    padding:0px;
}
.inhalt .footer .rechtliches{
    display:inline-block;
    font-size:11px;
    padding:10px 10px;
    color:rgba(255,255,255,0.6);
    text-shadow: 0px 0px 1px rgba(0,0,0,0.5);
    opacity: 0.5;
}
.inhalt .footer .rechtliches.schwarz{
    color:rgba(0,0,0,0.75);
    text-shadow: none;
}
.inhalt .footer .rechtliches.over{
    opacity: 1;
}
/* Signature #################################################################*/
.sign{
    position: fixed;
    display: none;
    top:0px;
    left:0px;
    width: 100%;
    height: 100%;
    background: #333;
    z-index:99;
}
.sign .box{
    width:100%;
    max-width:600px;
}
.sign .box .reset,.sign .box .save,.sign .box .close{
    position: absolute;
    height:50px;
    width:50px;
    opacity: 0.3;
}
.sign .box .reset.over,.sign .box .save.over,.sign .box .close.over{
    opacity: 1;
}
.sign .box .reset{
    left:0px;
    top:0px;
}
.sign .box .close{
    right:0px;
    top:0px;
}
.sign .box .save{
    left:0px;
    bottom:0px;
}
.sign .box .zone{
    display: block;
    position: relative;
    background: #fff;
    border-radius:10px;
    box-shadow: 0px 0px 20px #000;
    margin-top: 50px;
    margin-bottom:50px;
    width: 100%;
    max-width: 600px;
    height: 300px;
}
.sign .box .zone .dummy{
    position: absolute;
    max-width:100%;
    max-height:100%;
    /*background:url(images/signature.png?v1) no-repeat contain;*/
    opacity: 0;
}
.sign .box .zone .linie{
    position: absolute;
    left:5%;
    bottom:30%;
    height: 1px;
    width: 90%;
    background: #333;
    opacity: 0.5;
}
.sign .box .zone .drag,.sign .box .zone canvas{
    position: absolute;
    left:0px;
    top:0px;
    height:100%;
    width: 100%;
}
.forms{
    display: block;
    position: relative;
    color:inherit;
    line-height: inherit;
    text-align: left;
    z-index:1;
}
.forms.fenster{
    overflow: visible !important;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
}
.forms.schwarz{
    color:#000;
}
.forms .ffolien{
    position: relative;
    display:none;
    color:inherit;
    line-height:inherit;
    margin-bottom: 20px;
    border-radius:3px;
}
.forms .ffolien.show{
    display: block;
}
.forms .ffolien span{
    display: inline-block;
    opacity: 0.5;
    margin-right: 10px;
    padding:5px 10px;
    border-radius:3px;
}
.forms .ffolien span.aktiv{
    opacity: 1;
}
.forms .fdaten{
    position: relative;
    display:block;
    color:inherit;
    line-height:inherit;
    padding:20px;
    background: #ccc;
    border-radius:3px;
    margin-bottom: 20px;
}
.forms .fdaten .fdaten_text,
.forms .fdaten .fdaten_titel,
.forms .fdaten .fdaten_hinweis,
.forms .fdaten .fdaten_wert{
    display:block;
    color:inherit;
    margin-bottom: 15px;
}
.forms .fdaten .fdaten_wert{
    background: rgba(0,0,0,0.1);
    margin-left: -20px;
    margin-right: -20px;
    padding:2px 20px;
}
.forms .fdaten .fdaten_wert small{
    display:inline-block;
}
.forms .ffolie{
    position: relative;
    display: block;
    color:inherit;
    line-height:inherit;
    display:none;
    opacity: 0;
    transition: all 0.2s;
}
.forms .ffolie.show{
    display:block;
    opacity: 1;
}
.forms .fzeile{
    position: relative;
    display:block;
    color:inherit;
    line-height:inherit;
}
.forms .fzeile .fspalte{
    display:inline-block;
    color:inherit;
    line-height:inherit;
    vertical-align: top;
    margin-right: 10px;
}
.forms .fzeile .fspalte:last-child{
    margin-right: 0px;
}
.forms .fzeile .fspalte.r1{
    width:100%;
}
.forms .fzeile .fspalte.r2{
    width:calc(50% - 5px);
}
.forms .fzeile .fspalte.r3{
    width:calc(100% / 3 - 20px / 3);
}
.forms .fzeile .fspalte.r4{
    width:calc(100% / 4 - 30px / 4);
}
.forms .fzeile .fspalte.rx{
    width:auto;
    margin-right: 0px;
}
.forms .fmask{
    display: none;
    position: relative;
    color:inherit;
    line-height:inherit;
}
.forms .fmask.show{
    display: block;
}
.forms .ffeld{
    display: block;
    position: relative;
    color:inherit;
    font-size: inherit;
    line-height: inherit;
    margin-bottom: 10px;
}
.forms.fenster .ffeld{
    margin-bottom: 5px;
}
.forms .ffeld.ftitel{
    font-size:1.5em;
    line-height:1.35em;
}
.forms.schwarz .ffeld.ftitel,
.forms.schwarz .ffeld.ftext,
.forms.schwarz .ffeld.fhinweis,
.forms.schwarz .ffeld.fsub{
    color:#333;
}
.forms .ffeld.fsub{
    font-size:1.3em;
    line-height:1.3em;
}
.forms .ffeld.fhinweis{
    font-style: italic;
}
.forms .ffeld.fhtml{}
.forms .ffeld.flinie{
    height: 1px;
    background: rgba(255,255,255,0.2);
}
.forms.fenster .ffeld.flinie{
    background: rgba(0,0,0,0.15);
    margin-left:-20px;
    margin-right:-20px;
}
.forms.schwarz .ffeld.flinie{
    background: rgba(0,0,0,0.15);
}
.forms .ffeld.fabstand{
    height: 10px;
}
.forms .ffeld.fno{
    margin-bottom: 0px;
}
.forms .ffeld.vars{
    display: none;
}
.forms .ffeldx,.forms .ffeldxic2{
    display:block;
    position: relative;
    padding:9px 10px;
    padding:8px 10px;
    margin:0px;
    color:inherit;
    font-size: inherit;
    line-height:16px;
    width:calc(100% - 20px);
}
.forms.fenster .ffeldx{
    padding:4px 10px;
}
.forms .ffeldxic2{
    padding:0px;
}
.forms .ffeldxic2 .ic2_box{
    display: inline-block;
    padding:7px;
    padding-top: 8px;
    padding-bottom: 6px;
}
.forms .ffeldxic2 a{
    opacity: 1;
}
.forms .ffeldxic2 a.over{
    opacity: 0.5;
}
.forms .fpflicht{
    display: none;
    position: absolute;
    top:0px;
    left:-6px;
    height: 100%;
    width: 3px;
    background: #f00;
    border-radius: 3px;
}
.forms .fpflicht.kurz{
    height: calc(100% - 10px);
}
.forms .fpflicht.show{
    display: block;
}
.forms .fbez{
    display:block;
    color:inherit;
    font-size:inherit;
    line-height: inherit;
    margin-bottom: 2px;
}
.forms.fenster .fbez{
    color:#999;
    font-size:11px;
    margin-bottom: 0px;
}
.forms.schwarz .fbez{
    color:#333;
}
.forms .fbez .fpopup{
    display: inline-block;
    margin-left: 5px;
    opacity: 0.5;
}
.forms .fbez .fpopup.over{
    opacity: 1;
}
.forms .fform{
    display:block;
    position: relative;
    background: rgba(255,255,255,0.2);
    padding:9px 10px;
    padding:8px 10px;
    margin:0px;
    color:inherit;
    font-size: inherit;
    line-height:16px;
    border-radius: 3px;
    width:calc(100% - 20px);
    box-shadow:inset 0px 0px 0.5px rgba(0,0,0,0.5);
}
.forms input.fform::-webkit-input-placeholder, .forms textarea.fform::-webkit-input-placeholder {
	color: rgba(255,255,255,0.7);
}
.forms input.fform::-moz-placeholder,.forms textarea.fform::-moz-placeholder{
	color: rgba(255,255,255,0.7);
}
.forms.fenster input.fform::-webkit-input-placeholder,
.forms.fenster textarea.fform::-webkit-input-placeholder,
.forms.schwarz input.fform::-webkit-input-placeholder,
.forms.schwarz textarea.fform::-webkit-input-placeholder {
	color: rgba(0,0,0,0.5);
}
.forms.fenster input.fform::-moz-placeholder,
.forms.fenster textarea.fform::-moz-placeholder,
.forms.schwarz input.fform::-moz-placeholder,
.forms.schwarz textarea.fform::-moz-placeholder{
	color: rgba(0,0,0,0.5);
}
.forms input[type=date],.forms input[type=time]{
    -webkit-appearance: none;
	appearance: none;
    height: 17px;
    text-align: left !important;
}
input::-webkit-date-and-time-value {
    text-align: left;
}
.forms input,.forms textarea,.forms select{
	-webkit-appearance: none;
}
.forms input:disabled,
.forms textarea:disabled,
.forms select:disabled,
.forms .fform.disabled,
.forms .fcheckbox.disabled .fkreis{
    opacity: 0.5 !important;
    cursor:not-allowed !important;
}
.forms .fbild{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    border-radius: 3px;
    margin-bottom: 5px;
}
.forms .fbild_txt{
    display: inline-block;
    position: relative;
    width: 100%;
    height: auto;
    border-radius: 3px;
    margin-bottom: 5px;
    margin-right:5px;
    vertical-align: middle;
}
.forms .fbild_zoom{
    display:inline-block;
    position: relative;
}
.forms .fbild_zoom .ic2_box{
    position: absolute;
    right:5px;
    bottom:5px;
    opacity: 1;
}
.forms .fbild_zoom.over{
    opacity: 0.5;
}
.forms .fbt.bild_block{
    display:block !important;
    margin-right:0px !important;
}
.forms .fbt .fbild{
    margin-top: 0px;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    margin-top:3px;
    margin-bottom: 5px;
}
.forms .fbt.bild_block .fbild{
    margin:auto;
    width:auto;
    margin-top:3px;
    margin-bottom: 5px;
}
.forms.fenster input:disabled,
.forms.fenster textarea:disabled,
.forms.fenster select:disabled,
.forms.fenster .fform.disabled,
.forms.fenster .fcheckbox.disabled .fkreis,
.forms.schwarz input:disabled,
.forms.schwarz textarea:disabled,
.forms.schwarz select:disabled,
.forms.schwarz .fform.disabled,
.forms.schwarz .fcheckbox.disabled .fkreis{
    background: rgba(0,0,0,0.1);
    box-shadow: inset 0px 0px 1px rgba(0,0,0,0.4);
    opacity: 0.5;
    color:#000;
}
.forms.fenster .fcheckbox.disabled .ftxt,
.forms.schwarz .fcheckbox.disabled .ftxt{
    opacity: 0.5;
}

.forms.demo input:disabled,
.forms.demo textarea:disabled,
.forms.demo select:disabled,
.forms.demo .fform.disabled,
.forms.demo .fcheckbox.disabled .fkreis{
    background: rgba(0,0,0,0);
    box-shadow: inset 0px 0px 1px rgba(0,0,0,1);
    opacity: 1 !important;
    color:#000;
}
.forms.demo .fcheckbox.disabled .ftxt{
    opacity: 1;
}
.forms.fenster .fform{
    background: rgba(0,0,0,0.1);
    border-radius: 4px;
    padding:4px 10px;
}
.forms.schwarz .fform{
    background: rgba(0,0,0,0.1);
}
.forms.demo .fform{
    background: rgba(0,0,0,0.05);
}
.forms .fform:focus{
    background: rgba(255,255,255,0.3);
}
.forms.fenster .fform:focus,
.forms.schwarz .fform:focus{
    background: rgba(0,0,0,0.2);
}
.forms.demo .fform:focus{
    background: rgba(0,0,0,0.05);
    outline: none;
}
.forms .fform.fbt,.forms .fform.ftextbt{
    display: inline-block;
    padding:9px 20px;
    padding:8px 20px;
    width: auto;
    margin-right: 10px;
    margin-bottom: 10px;
    text-align: center;
    text-align: left;
}
.forms .fform.fcolsx{
    margin-right: 10px;
}
.forms.fenster .fform.fbt,
.forms.fenster .fform.ftextbt{
    margin-right: 5px;
    margin-bottom: 5px;
    color:#333;
    padding:4px 10px;
}
.forms.schwarz .fform.fbt,
.forms.schwarz .fform.ftextbt{
    color:#333;
}
.forms .fform.fbt.over,.forms .fform.ftextbt.over{
    background: rgba(255,255,255,0.3);
}
.forms.fenster .fform.fbt.over,
.forms.fenster .fform.ftextbt.over,
.forms.schwarz .fform.fbt.over,
.forms.schwarz .fform.ftextbt.over{
    background: rgba(0,0,0,0.3);
}
.forms .fform.fbt.aktiv,
.forms .fform.ftextbt.aktiv{
    color:#000;
    background: #fff;
    opacity: 1 !important;
}
.forms .fform.fbt.rot,
.forms .fform.ftextbt.rot{
    color:#fff;
    background: #f73434;
}
.forms .fform.fbt.rot.over,.forms .fform.ftextbt.rot.over{
    color:#333;
}
.forms.fenster .fform.fbt.aktiv,
.forms.fenster .fform.ftextbt.aktiv,
.forms.schwarz .fform.fbt.aktiv,
.forms.schwarz .fform.ftextbt.aktiv{
    color:#fff;
    background: #333;
}
.forms .fform.fbt.over.aktiv,
.forms .fform.ftextbt.over.aktiv{
    color:#000;
    background: #e00;
    background:rgba(255,255,255,0.75);
}
.forms .fform.ftext{
    padding:9px 10px;
    padding:8px 10px;
}
.forms .fform.ftextbt{
    padding:9px 10px;
    padding:8px 10px;
    width:calc(100% - 20px);
}
.forms select.fform{
    width:100%;
    line-height: 20px;
}
.forms.schwarz select.fform{
    color:#000;
}
.forms .fform option{
    background: #fff;
    color:#000;
    font-size: 1.2em;
}
.forms .fform.ficon_links{
    padding-left:40px !important;
    width:calc(100% - 20px - 30px);
}
.forms .fform.ficon_rechts{
    padding-right:40px !important;
    width:calc(100% - 20px - 30px);
}
.forms .fform.ficon_beide{
    padding-left:40px !important;
    padding-right:40px !important;
    width:calc(100% - 20px - 30px - 30px);
}
.forms .fform.fbt.klein{
    padding:6px 8px;
}
.forms .fform.fbt.ficon_links,
.forms .fform.fbt.ficon_rechts,
.forms .fform.fbt.ficon_beide{
    width:auto;
}
.forms .fform.fbt i{
    color:#ccc;
    font-style: normal;
    font-size:10px;
}
.forms .ficon{
    position: absolute;
    top:0px;
    left: 0px;
    width:30px;
    height: 100%;
    background: rgba(0,250,0,0.5);
    border-radius: 3px 0px 0px 3px;
}
.forms .ficon.nobg{
    background: none;
}
.forms .ficon.hide{
    display:none;
}
.forms .ficon.rechts{
    left:auto;
    right:0px;
    border-radius: 0px 3px 3px 0px;
}
.forms .ficon.rot{
    background: #e00;
}
.forms .ficon.gruen{
    background: #0e0;
}
.forms .ficon.over{
    opacity: 0.5;
}
.forms .fblock{
    display: none;
}
.forms .fbox{
    position: relative;
    display: inline-block;
    background: rgba(0,0,0,0.5);
    border-radius:3px;
    padding:10px;
    z-index: 2;
}
.forms.fenster .fbox{
    padding:5px;
}
.forms .fbox.fixed{
    position: absolute;
    z-index:5;
    background: #000;
    margin-top: -5px;
    box-shadow: 0px 5px 5px rgba(0,0,0,0.5),0px 5px 10px rgba(0,0,0,0.5),inset 0px 0px 1px rgba(255,255,255,0.6);
}
.forms.fenster .fbox.fixed{
    margin-top: 0px;
}
.forms .fbox.btns{
    padding-right: 0px;
    padding-bottom: 0px;
}
.forms .fbox .fform.fbt{
    background: rgba(255,255,255,0.2);
    color:#fff;
}
.forms .fbox .fform.fbt.over{
    background: rgba(255,255,255,0.3);
}
.forms .fbox .monat{
    margin:0px;
    min-width:260px;
}
.forms .fbox p{
    display:block;
    margin-right: 10px;
    margin-bottom: 10px;
}
.forms.schwarz .fbox p{
    color:#fff;
}
.forms .kalender{

}
.forms .monat .tag,
.forms .monat .tag_auswahl,
.forms .monat .tag_leer,
.forms .monat .tag_auswahl_wochenende,
.forms .monat .wtage div{
    width: 35px;
}
.forms .monat .wtage{
	border-bottom:1px solid rgba(255,255,255,0.1);
}
.forms .fuhrzeit{
    white-space: nowrap;
}
.forms .fuhrzeit .fzahl{
    display: inline-block;
    vertical-align: top;
    line-height: 26px;
}
.forms .fuhrzeit .fzahl .fvalue,
.forms .fuhrzeit .fzahl .fset,
.forms .fuhrzeit .fzahl .fset .fmin{
    position: relative;
    display: block;
    width: 30px;
    height: 26px;
    text-align: center;
    line-height: 26px;
    border-radius: 3px;
    color:#999;
}
.forms .fuhrzeit .fzahl .fvalue{
    background: #333;
    color:#fff;
    text-align: right;
    font-family:open_sansbold,Helvetica, Ariel, sans-serif;
    margin-bottom: 10px;
    border-radius: 3px 0 0 3px;
    width: 24px;
    padding:0px 3px;
}
.forms .fuhrzeit .fzahl .fvalue.rechts{
    border-radius: 0 3px 3px 0;
    text-align: left;
}
.forms .fuhrzeit .fzahl .fset.over,
.forms .fuhrzeit .fzahl .fset.over .fmin{
    background: #e00;
    color:#fff;
}
.forms .fuhrzeit .fzahl .fset.aktiv,
.forms .fuhrzeit .fzahl .fset.aktiv .fmin{
    background: #fff;
    color:#000;
}
.forms .fuhrzeit .fzahl .fset .fmin{
    position: absolute;
    left:25px;
    top:0px;
    padding-left:5px;
}
.forms .fuhrzeit .fzahl .fsync{
    position: relative;
    display: block;
    width: 26px;
    height: 26px;
    border-radius: 30px;
    margin-left: 10px;
}
.forms .fuhrzeit .fzahl .fsync.over{
    background: #e00;
}
.forms .fpunkte{
    display: inline-block;
}
.forms .fpunkte.block{
    width: 100%;
    max-width: 600px;
}
.forms .fpunkte .block{
    display: block;
}
.forms .fpunkte .links,
.forms .fpunkte .rechts{
    font-size:10px;
    opacity: 0.5;
    float:left;
    margin-top:-5px;
    margin-bottom: 10px;
}
.forms.fenster .fpunkte .links,
.forms.fenster .fpunkte .rechts{
    margin-top:-10px;
    color:#000;
}
.forms.schwarz .fpunkte .links,
.forms.schwarz .fpunkte .rechts{
    color:#000;
}
.forms .fpunkte .rechts{
    float: right;
    padding-right: 10px;
}
.forms .fpunkte.block .rechts{
    padding-right: 0px;
}
.forms .fpunkte .regler{
    display:block;
    position: relative;
    width:100%;
    height: 32px;
    margin-bottom: 10px;
}
.forms.fenster .fpunkte .regler{
    height: 25px;
}
.forms .fpunkte .regler .rani{
    transition: all 0.1s;
}
.forms .fpunkte .regler .fregler{
    display: inline-block;
    position: relative;
    z-index: 1;
}
.forms .fpunkte .regler .rlinie_links,
.forms .fpunkte .regler .rlinie_rechts{
    width: 20px;
    height: 3px;
    left:0px;
    background: rgba(255,255,255,0.2);
    border-radius: 5px;
}
.forms.fenster .fpunkte .regler .rlinie_links,
.forms.fenster .fpunkte .regler .rlinie_rechts,
.forms.schwarz .fpunkte .regler .rlinie_links,
.forms.schwarz .fpunkte .regler .rlinie_rechts{
    background: rgba(0,0,0,0.2);
}
.forms .fpunkte .regler .rlinie_rechts{
    left:auto;
    right: 0px;
}
.forms .fliste{
    display:block;
}
.forms .fcheckbox{
    display: block;
    white-space: nowrap;
    color: inherit;
    line-height: inherit;
    font-size: inherit;
}
.forms .fcheckbox.abstand{
    margin-right: 5px;
}
.forms .fcheckbox .fkreis{
    display: inline-block;
    position: relative;
    vertical-align: top;
    width:32px;
    height:32px;
    background: rgba(255,255,255,0.2);
    border-radius: 40px;
    margin-right: 5px;
    box-shadow:inset 0px 0px 0.5px rgba(0,0,0,0.5);
}
.forms .fcheckbox.klein .fkreis{
    margin-top: 0px;
    width:22px;
    height:22px;
}
.forms.fenster .fcheckbox .fkreis,
.forms.schwarz .fcheckbox .fkreis{
    background: rgba(0,0,0,0.1);
}
.forms.fenster .fcheckbox .fkreis .pics,
.forms.schwarz .fcheckbox .fkreis .pics{
    filter: invert(1);
}
.forms .fcheckbox.over .fkreis{
    background: rgba(255,255,255,0.4);
}
.forms.fenster .fcheckbox.over .fkreis,
.forms.schwarz .fcheckbox.over .fkreis{
    background: rgba(0,0,0,0.2);
}
.forms .fcheckbox .ftxt{
    padding-top: 8px;
    display: inline-block;
    position: relative;
    vertical-align: top;
    color: inherit;
    line-height: inherit;
    font-size: inherit;
    white-space: normal;
    width: calc(100% - 34px - 5px);
}
.forms.schwarz .fcheckbox .ftxt{
    color:#000;
}
.forms .fcheckbox .ftxt a{
    color:inherit;
    font-family: inherit;
    font-weight: inherit;
    text-decoration: underline;
}
.forms .fcheckbox .ftxt a:hover{
    text-decoration: none;
}
.forms .fcheckbox.klein .ftxt{
    padding-top: 3px;
}

.forms .fcheckbox2{
    display: block;
    position: relative;
    white-space: nowrap;
    color: inherit;
    line-height: inherit;
    font-size: inherit;
    margin-top:10px;
    margin-bottom: 12px;
}
.forms .fcheckbox2 label{
    position: relative;
    padding-left:36px;
    white-space: normal;
    color: inherit;
    line-height: inherit;
    font-size: inherit;
    cursor:pointer;
}
.forms .fcheckbox2 input{
    display:block;
    position: absolute;
    left:0px;
    top:0px;
    left: -10000px;
}
.forms .fcheckbox2 input:checked + label .fkreis .pics{
    display:block;
}
.forms .fcheckbox2 input:hover + label .fkreis{
    background: rgba(255,255,255,0.4);
}
.forms.fenster .fcheckbox2 input:hover + label .fkreis,
.forms.schwarz .fcheckbox2 input:hover + label .fkreis{
    background: rgba(0,0,0,0.2);
}

.forms .fcheckbox2 .fkreis .pics{
    display:none;
}
.forms .fcheckbox2 .fkreis{
    display: block;
    position: absolute;
    vertical-align: top;
    top:-7px;
    width:32px;
    height:32px;
    background: rgba(255,255,255,0.2);
    border-radius: 40px;
    margin-right: 5px;
}
.forms .fcheckbox2.klein .fkreis{
    margin-top: 0px;
    width:22px;
    height:22px;
}
.forms.fenster .fcheckbox2 .fkreis,
.forms.schwarz .fcheckbox2 .fkreis{
    background: rgba(0,0,0,0.1);
}
.forms.fenster .fcheckbox2 .fkreis .pics,
.forms.schwarz .fcheckbox2 .fkreis .pics{
    filter: invert(1);
}

.forms .fdyn{
    display: block;
    position: relative;
}
.forms .fdyn.scan{
    display: inline-block;
    width:calc(100% - 60px);
    vertical-align: top;
}
.forms .fdyn .fsuche{
    display: block;
    position: relative;
    margin-bottom: 10px;
}
.forms.fenster .fdyn .fsuche{
    margin-bottom: 5px;
}
.forms .fdyn .fsuche input{
    z-index: 1;
}
.forms.fenster .fdyn .fsuche input,
.forms.schwarz .fdyn .fsuche input{
    color:#333;
}
.forms .fdyn .fsuche .ficon.rechts{
    z-index: 2;
}
.forms.schwarz .fdyn .fsuche .ficon{
    filter:invert(1);
}
.forms.schwarz .fdyn .fsuche .ficon.rechts{
    filter:invert(0);
}
.forms.schwarz .fdyn .fsuche .ficon.rechts .pics{
    filter:invert(1);
}
.forms .fdyn .fwarenkorb,
.forms .fdyn .fgruppen{
    display: block;
}
.forms .fdyn .fmenge,.forms .fdyn .fvk{
    position: relative;
    display:inline-block;
    color: inherit;
    font-size: inherit;
    line-height: inherit;
    text-align: right;
    width: 50px;
    background: rgba(0,0,0,0.1);
    box-shadow: inset 0px 0px 1px rgba(0,0,0,0.3);
    border-radius: 3px;
    padding: 4px 2px;
    margin-right: 2px;
    margin-top:-5px;
    margin-bottom: -5px;
    margin-left: -6px;
    vertical-align: baseline;
    z-index: 2;
}
.forms .fdyn .fvk{
    margin-right: 10px;
}
.forms .fdyn .fmenge.hide,.forms .fdyn .fvk.hide{
    display:none;
}
.forms .fdyn .flabel{
    position: relative;
    display: inline-block;
    color: inherit;
    font-size: inherit;
    line-height: inherit;
    padding:8px 10px;
    margin:-8px -10px;
    vertical-align: top;
    z-index: 1;
    border-radius: 3px;
}
.forms .fdyn .flabel .vk{
    background: #000;
    color:#fff;
    padding:0px 2px;
    border-radius: 2px;
    margin-right:4px;
}
.forms .fdyn .flabel i{
    color:#666;
    font-style: normal;
    font-size:10px;
}
.forms.fenster .fdyn .flabel{
    padding:4px 10px;
    margin:-4px -10px;
}
.forms .fdyn .flabel.in{
    padding-left: 60px;
    margin-left:-60px;
    width:calc(100% - 50px);
}
.forms .fdyn .flabel.invk{
    padding-left: 120px;
    margin-left:-118px;
    width:calc(100% - 110px);
}
.forms .fdyn .fform.ficon_rechts .flabel{
    border-radius: 3px 0px 0px 3px;
}
.forms .fdyn .fform.ficon_beide .flabel{
    border-radius: 0px;
}
.forms .fdyn .flabel.over{
    background: #aaa;
}
.forms .fdyn .flabel span.hide{
    display:none;
}
.forms .fsave{
    display: block;
}
.forms .fsave.blau .ficon_links{
    background: #3193f1;
    color: #fff;
}
.forms .fsave.gruen .ficon_links{
    background: #2ac432;
    color: #fff;
}
.forms .fsave.rot .ficon_links{
    background: #ff0000;
    color: #fff;
}
.forms.fenster .fsave,
.forms.schwarz .fsave{
    color:#000;
}
.forms .fsave .ficon_links{
    padding-left: 50px;
}
.forms.fenster .fsave .ficon_links{
    padding-left: 10px !important;
}
.forms.fenster .fsave .ficon_links .ficon{
    display: none;
}
.forms .fsave .rechts{
    float: right;
    margin-right: 0px;
}

.forms .fform.sign{
    width: 120px;
    text-align: center;
    margin-top: -1px;
    text-transform: uppercase;
}
.forms .vertrag_sign{
    display:inline-block;
    position: relative;
    height: 80px;
    width:140px;
    background: rgba(255,255,255,0.2);
    border-radius: 3px;
}
.forms.fenster .vertrag_sign,
.forms.schwarz .vertrag_sign{
    background: rgba(0,0,0,0.1);
}
.forms .vertrag_sign.black{
    filter:invert(1);
}
.forms .vertrag_sign.na{
    height: 40px;
}
.forms .vertrag_sign .pics{
    opacity: 0.5;
}
.forms.fenster .vertrag_sign .pics,
.forms.schwarz .vertrag_sign .pics{
    filter:invert(1);
}
.forms .vertrag_sign.over{
    background: rgba(255,255,255,0.3);
}
.forms.fenster .vertrag_sign.over,
.forms.schwarz .vertrag_sign.over{
    background: rgba(0,0,0,0.3);
}
.forms .vertrag_sign .bild{
    display: none;
    height: 80px;
    width:140px;
    filter:invert(1);
}
.forms.fenster .vertrag_sign .bild,
.forms.schwarz .vertrag_sign .bild{
    filter:invert(0);
}
.report{
    background: rgba(255,0,0,0);
    color:inherit;
}
.report .rzeile{
    display:block;
    color:inherit;
    line-height:inherit;
}
.report .rzeile .rspalte{
    display:inline-block;
    color:inherit;
    line-height:inherit;
    vertical-align: top;
    margin-right: 10px;
}
.report .rzeile .rspalte:last-child{
    margin-right: 0px;
}
.report .rzeile .rspalte.r2{
    width:calc(50% - 5px);
}
.report .rzeile .rspalte.r3{
    width:calc(100% / 3 - 20px / 3);
}
.report .rzeile .rspalte.r4{
    width:calc(100% / 4 - 30px / 4);
}
.report .text,.report .titel,.report .sub{
    display: block;
    color:inherit;
}
.report .titel{
    font-size:16px;
    margin-bottom: 10px;
}
.report .sub{
    font-size:14px;
    margin-bottom: 10px;
}
.report .text{
    font-style:italic;
}
.report .abstand{
    display: block;
}
.report .linie{
    position: relative;
    display: block;
    height: 1px;
    width:100%;
    margin:10px 0px;
    background: rgba(255,255,255,0.25);
}
.fenster .report .linie{
    background: rgba(0,0,0,0.15);
    left: -20px;
    width:calc(100% + 40px);
}
.report .feld{
    display: block;
    position: relative;
    color:inherit;
}
.report .feld_abstand{
    display: block;
    height:10px;
}
.fenster .report .feld_abstand{
    height:5px;
}
.report .feld .txt{
    display: block;
    text-align: inherit;
    margin-bottom: 3px;
    font-size:13px;
    color:inherit;
}
.fenster .report .feld .txt{
    margin-bottom: 1px;
    font-size:11px;
    color:#999;
}
.report .feld .pflicht{
    position: absolute;
    display: none;
    left:-12px;
    top:0px;
    width:5px;
    height: 100%;
    background: #f00;
    border-radius: 5px;
}
.fenster .report .feld .pflicht{
    left:-7px;
    width:4px;
}
.report .feld input,.report .feld select,.report .feld textarea{
    display: block;
    background: rgba(255,255,255,0.2);
    padding:3px 10px;
    line-height:24px;
    border-radius: 3px;
    width:calc(100% - 20px);
    color:inherit;
}
.fenster .report .feld input,.fenster .report .feld select,.fenster .report .feld textarea{
    background: rgba(0,0,0,0.1);
    padding:0px 6px;
    width:calc(100% - 12px);
	line-height:24px;
}
.fenster .report .feld select{
    width:calc(100% - 0px);
}
.fenster .report .feld option{
    margin: 0px;
    padding:0px;
    color:inherit;
}
.fenster .report .feld textarea{
    padding-top:3px;
    line-height:16px;
}
.report .feld textarea{
    height: 51px;
}
.report .feld input:focus,.report .feld select:focus,.report .feld textarea:focus{
    background: rgba(255,255,255,0.3);
}
.fenster .report .feld input:focus,.fenster .report .feld select:focus,.fenster .report .feld textarea:focus{
    background: rgba(0,0,0,0.2);
}
.report .feld input.zahl{
    max-width:120px;
}
.report .feld input.datum{
    max-width:140px;
}
.report .feld input.uhrzeit{
    max-width:80px;
}
.report .feld .txt .produktanzahl{
    display: inline-block;
    width:40px;
    text-align: right;
    margin-right:10px;
    color:inherit;
    font-size: inherit;
    line-height: inherit;
}
.report .feld .txt .produktanzahl small{
    opacity:0.5;
}

.report .foto_upload{
    padding-bottom: 10px;
}
.report .foto_upload .fotos .foto{
    margin-top: 0px;
    margin-left: 0px;
    margin-right: 10px;
    margin-bottom: 10px;
}
.report .foto_upload .neu{
    margin: 0px;
    border-radius: 3px;
    background: rgba(255,255,255,0.2);
}
.report .foto_upload .neu .pics{
    opacity: 1;
}

.report .gruppe{
    display: none;
    position: relative;
    padding:0px;
    margin:0px;
}
.report .gruppe .mask{
    display: block;
    position: relative;
    padding:0px;
    margin:0px;
    padding-bottom:10px;
}


.report .symbol{
    position: absolute;
    display:inline-block;
    border-radius: 100px;
    top:7px;
    left:10px;
    width:14px;
    height:14px;
    line-height: 14px;
    text-align: center;
    font-size: inherit;
    vertical-align: baseline;
}
.report .symbol.del{
    background: #f00;
}
.report .symbol.add{
    background: #fff;
    color:#333;
}
.report .feld .rcb{
    position: relative;
    display:inline-block;
    vertical-align: baseline;
    line-height: 14px;
    padding-top: 8px;
    padding-left: 30px;
    margin-top: 5px;
    margin-top: 13px;
}
.report .feld .rcb.noabstand{
    margin-top: 0px;
}
.report .feld .rcb .kreis{
    position: absolute;
    top:0px;
    left:0px;
    display: inline-block;
    vertical-align: top;
    width:20px;
    height:20px;
    margin-top: 4px;
    margin-right: 10px;
    border-radius: 50px;
    border:1px solid #fff;
}
.fenster .report .feld .rcb .kreis{
    border:1px solid #333;
}
.report .feld .rcb.over .kreis{
    box-shadow: inset 0 0 30px rgba(255,255,255,0.5);
}
.fenster .report .feld .rcb.over .kreis{
    box-shadow: inset 0 0 30px rgba(0,0,0,0.25);
}
.report .feld .rcb.disabled{
    cursor: default;
}
.report .feld .rcb.disabled.over .kreis{
    box-shadow: inset 0 0 30px rgba(255,255,255,0);
}
.report .feld .rbt{
    position: relative;
    display: inline-block;
    background: rgba(255,255,255,0.2);
    padding:7px 15px;
    border-radius: 3px;
    color:#fff;
    margin-right: 10px;
    margin-bottom: 7px;
    overflow: hidden;
}
.fenster .report .feld .rbt{
    background: #ccc;
    color:#333;
    transition: all 0.2s;
}
.report .feld .rbt.disabled{
    cursor: default;
}
.report .feld .rbt.rechts{
    float: right;
    margin-right: 0px;
    margin-left: 10px;
}
.report .feld .rbt.over{
    background: rgba(255,255,255,0.4);
}
.fenster .report .feld .rbt.over{
    background: #333;
    color:#fff;
}
.report .feld .rbt.disabled.over{
    background: rgba(255,255,255,0.2);
}
.report .feld .rbt.disabled.aktiv.over{
    background: rgba(255,255,255,1);
}
.report .feld .rbt.aktiv{
    background: rgba(255,255,255,1);
    color:#333;
}
.fenster .report .feld .rbt.aktiv{
    background: rgba(0,0,0,1);
    color:#fff;
}
.report .feld .rbt.suche{
    display: block;
    padding:3px 10px;
    padding-left:30px;
    width: 200px;
    transition: width 0.2s;
}
.fenster .report .feld .rbt.suche{
    padding:0px 10px;
    background: rgba(0,0,0,0.1);
    color:inherit;
}
.fenster .report .feld .rbt.suche.over{
    padding:0px 10px;
    background: rgba(0,0,0,0.2);
}
.report .feld .rbt.hide{
    display: none;
}
.report .feld .rbt.over.suche{
    display: block;
    padding:3px 10px;
    padding-left:30px;
    width:calc(100% - 40px);
}
.report .feld .rbt.suche_disabled,
.report .feld .rbt.over.suche_disabled{
    cursor: default;
    padding-left:10px !important;
}
.report .feld .rbt.suche .rbt_lupe{
    position: absolute;
    left:0px;
    top:0px;
    height: 100%;
    width:30px;
}
.report .feld .rbt.suche input{
    display: inline-block;
    background: none !important;
    padding:0px;
    width:100%;
}
.report .feld .rbt.icon,.report .feld .rbt.iconi{
    padding-left:30px;
}
.fenster .report .feld .rbt.icon,.fenster .report .feld .rbt.iconi{
    padding-left:40px;
}
.report .feld .rbt.iconi .pics{
    position: absolute;
    left:10px;
    top:8px;
}
.report .feld .rbt span{
    padding-left:10px;
    color:inherit;
    font-size: 10px;
    line-height: 12px;
    vertical-align: baseline;
}
.report .feld .rbt span.menge{
    padding-left:0px;
    color:inherit;
    font-size: inherit;
}
.report .feld .rbt .bt_close{
    position: absolute;
    left:0px;
    top:0px;
    width:30%;
    height: 100%;
}
.report .feld .rbt .bt_menge{
    position: absolute;
    right:0px;
    top:0px;
    width:60%;
    height: 100%;
}

.report .feld .rbt .pics{
    position: absolute;
}
.fenster .report .feld .rbt .rahmen{
    position: absolute;
    left:0px;
    top:0px;
    width: 30px;
    height: 100%;
    background: #333;
}
.fenster .report .feld .rbt .rahmen .pics{
    transition: all 0.2s;
}
.fenster .report .feld .rbt.over .rahmen .pics{
    margin-left: 5px;
}
.report .feld .rlegende{
    vertical-align: top;
    font-size:11px;
    padding-left: 2px;
    padding-right: 12px;
    float:left;
}

.report .feld .suche_warenkorb{
    white-space: normal;
}
.report .feld .suche_treffer{
    display:none;
    white-space: normal;
}

/*### dynlist v2 ###*/
.report .dyn,.fenster .report .dyn{
    position: relative;
    display: block;
    color:inherit;
    font-size: inherit;
}
/*
.report .dyn .pics2,.fenster .report .dyn .pics2{
    position: absolute;
    z-index: 1;
    top:8px;
    left:8px;
}
*/
.report .dyn .pics.hide,.fenster .report .dyn .pics.hide{
    display:none;
}
.report .dyn .clear{
    position: absolute;
    display: none;
    top:0px;
    right:0px;
    height: 30px;
    width:30px;
    opacity: 1;
    background: rgba(0,0,0,0);
    border-radius: 0px 3px 3px 0px;
    transition: all 0.1s;
}
.report .dyn .clear.over{
    opacity: 1;
    background: rgba(0,0,0,0.2);
}
.report .dyn .pics.del_x,.report .dyn .pics.b_del_x{
    left:auto;
    right:8px;
}
.report .dyn.icon input.focus{
    padding-right:40px;
    width:calc(100% - 20px - 30px);
}
.report .dyn .treffer{
    display: none;
    position: relative;
    color:inherit;
    font-size: inherit;
    padding-left: 5px;
    padding-bottom: 5px;
    background: rgba(0,0,0,0.5);
    border-radius: 3px;
}
.report .dyn .treffer p{
    color:inherit;
    font-size: inherit;
    padding: 3px;
}
.report .dyn .treffer .dbt{
    display: inline-block;
    position: relative;
    margin-top: 5px;
    margin-right: 5px;
    border-radius: 3px;
    background: rgba(255,255,255,0.2);
    padding:3px 10px;
    line-height:24px;
    padding:7px 10px;
    line-height:16px;
    color:inherit;
    overflow: hidden;
    vertical-align: top;
}
.report .dyn .treffer .dbt.over{
    background: rgba(255,255,255,0.3);
}
.report .dyn .treffer .block{
    display: block;
    vertical-align: top;
    height: 0px;
}
.fenster .report .dyn .pics{
    top:4px;
    left:6px;
}
.fenster .report .dyn .clear{
    height: 24px;
}
.fenster .report .dyn .pics.del_x,.fenster .report .dyn .pics.b_del_x{
    top:5px;
}
.fenster .report .dyn.icon input.focus{
    padding-right:36px;
    width:calc(100% - 12px - 30px);
}
.fenster .report .dyn .treffer .dbt{
    padding:0px 6px;
    line-height:24px;
    padding:6px 6px;
    line-height:12px;
    background: rgba(0,0,0,0.1);
}
.fenster .report .dyn .treffer .dbt.over{
    background: rgba(0,0,0,0.2);
}

/*### dynlist END ###*/
/*### auswahl START ###*/
.report .auswahl,.fenster .report .auswahl{
    position: relative;
    display: block;
    color:inherit;
    font-size: inherit;
}
.report .auswahl.show .liste{
    display: block;
}
.report .auswahl.show .abt{
    padding-right: 40px;
    width:calc(100% - 20px - 30px);
}
.report .auswahl .abt{
    position: relative;
    display: block;
    background: rgba(255,255,255,0.2);
    padding:6px 10px;
    line-height:18px;
    border-radius: 3px;
    width:calc(100% - 20px);
    color:inherit;
}
.report .auswahl .abt.over{
    background: rgba(255,255,255,0.3);
}
.report .auswahl .abt .close{
    position: absolute;
    top:0px;
    right:0px;
    width:30px;
    height:100%;
}
.report .auswahl .abt.over .close{
    background: rgba(0,0,0,0.2);
}
.report .auswahl .abt .close .pics{
    position:absolute;
	left:50%;
	top:50%;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
.report .auswahl .liste{
    display: none;
    position: relative;
    color:inherit;
    font-size: inherit;
    padding-left: 5px;
    padding-bottom: 5px;
    background: rgba(0,0,0,0.5);
    border-radius: 3px;
}
.report .auswahl .liste .albt{
    display: inline-block;
    position: relative;
    margin-top: 5px;
    margin-right: 5px;
    border-radius: 3px;
    background: rgba(255,255,255,0.1);
    padding:7px 10px;
    padding-left:7px;
    line-height:16px;
    color:inherit;
    overflow: hidden;
    vertical-align: top;
}
.report .auswahl .liste .albt.over{
    background: rgba(255,255,255,0.2);
}
.report .auswahl .liste .albt .ic{
    margin-right: 5px;
}
/*### auswahl END ###*/
/*
.report .warenkorb{
    display: block;
}
.report .produkte{
    display: block;
    white-space: nowrap;
    overflow: scroll;
    -webkit-overflow-scrolling:touch;
}
.report .produkte .produktgruppe{
    display: inline-block;
    vertical-align: top;
    white-space: normal;
    width:auto;
    margin-top:10px;
    margin-right:10px;
    padding-right:10px;
}
.report .dyn_erg{
    display: none;
    background: #666;
    margin:0px 20px;
    margin-top:-4px;
    border-radius: 3px;
    overflow:hidden;
}
.report .dyn_erg_bt{
    display: block;
    background: #333;
    padding:7px 10px;
    border-bottom:1px solid rgba(255,255,255,0.3);
}
.report .dyn_erg_bt:last-child{
    border-bottom:0px;
}
.report .dyn_erg_bt .pics{
    border:1px solid #fff;
    border-radius: 30px;
    margin-right:5px;
}
.report .dyn_erg_leer{
    display: block;
    padding:5px 10px;
}
.report .erg{
    display:none;
    white-space: normal;
    margin-top:10px;
}
.report .suche{
    position: relative;
    margin-top:5px;
    transition: all 0.2s;
    padding:0px;
    overflow: hidden;
}
.report .suche .treffer{
    display: none;
    position: absolute;
    bottom:0px;
    left:0px;
    width:100%;
    height: 5px;
    z-index: 8;
}
.report .suche .bt_lupe{
    position: absolute;
    left:0px;
    top:0px;
    width: 100%;
    height: 100%;
    z-index:9;
}
.report .suche .bt_lupe.over{
    opacity:0.5 !important;
}

.report .suche .bt_clear{
    position: absolute;
    right:0px;
    top:0px;
    width: 100%;
    height: 100%;
    opacity:0;
    z-index:9;
}
.report .suche .bt_clear.over{
    opacity:1 !important;
}
.report .suche input{
    position: absolute;
    top:0px;
    left:0px;
    width:100%;
    height: 100%;
    -webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
    vertical-align: top;
    border-radius:0;
    border:0;
    background: none;
    opacity: 0;
    z-index:10;
}
.report .suche .sichtbar{
    opacity: 1;
    z-index:8;
}
.report .feld .eingabe,.form_input{
    position: relative;
    display: block;
    padding:10px 10px;
    -webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
    border-radius:0;
    border:0;
    background: none;
    resize:none;
    width:200px;
}
.report .feld .signatur{
    padding:0px;
}
.report .feld .signatur .pics{
    opacity: 0.25;
    transform: scale(1.3);
    margin-left:-65px;
    margin-top:-25px;
}
.report .feld .signatur .bild{
    display: none;
    position: absolute;
    width:100%;
    height: 100%;
    top:0px;
    left:0px;
}
.report .rechtliches{
    column-count: 3;
    column-gap: 40px;
    vertical-align: top;
    text-align: justify;
    text-align: left;
}
.report .feld .checkbox{
    display: block;
    position: relative;
    vertical-align: middle;
}
.report .feld .checkbox .bt{
    position: relative;
    display: inline-block;
    height:30px;
    width:30px;
    padding: 0px;
    vertical-align: middle;
}
.report .feld .checkbox .bt .pics{
    opacity:0;
}
.report .feld .checkbox span{
    color:inherit;
    font-weight: inherit;
    font-size: inherit;
    line-height: inherit;
    margin-left: 5px;
    vertical-align: middle;
}
*/


@media only screen and (max-width:600px){
    .report .titel{
        font-size:15px;
    }
    .report .feld .txt{
        font-size:12px;
    }
    .fenster .report .feld .txt{
        margin-bottom: 0px;
    }
    .fenster .report .feld input,.fenster .report .feld select,.fenster .report .feld textarea{
        font-size:11px;
    	line-height:22px;
    }
    .fenster .report .feld textarea{
        line-height:15px;
    }
    .report .feld .rlegende{
        font-size: 10px;
    }
    .report .feld .rcb{
        margin-top: 11px;
    }
    .fenster .report .dyn .clear{
        height: 22px;
    }
    .report .dyn .pics.del_x,.report .dyn .pics.b_del_x{
        top:4px;
    }
}
/* Upload ######################################################################*/
.foto_upload,.file_upload{
    display: block;
    position: relative;
    overflow: hidden;
}
.foto_upload .foto_label{
    position: relative;
    display:inline-block;
    vertical-align: middle;
    margin-top: 5px;
    margin-right: 0px;
    height: 50px;
    width:100px;
}
.foto_upload.fenster,.file_upload.fenster{
    color:#333;
    text-align: left;
}
.foto_upload.schwarz,.file_upload.schwarz{
    color:#333;
}
.foto_upload .fotos{
    display: block;
    vertical-align: top;
    text-align: left;
}
.foto_upload .fotos .foto_box{
    position: relative;
    display: inline-block;
    vertical-align: top;
    white-space: nowrap;
    z-index:1;
}
.foto_upload .fotos .foto_box.preview{
    display: block;
}
.foto_upload .fotos.tags .foto_box{
    display: block;
}
.foto_upload .fotos .foto{
    position: relative;
    display: inline-block;
    height:60px;
    width:60px;
    padding:0px;
    vertical-align: top;
    white-space: normal;
    margin-right:10px;
    margin-bottom: 10px;
    overflow:hidden;
}
.foto_upload .fotos .foto_tags{
    position: relative;
    display: inline-block;
    vertical-align: top;
    white-space: normal;
    margin-left: -5px;
    padding-bottom: 10px;
}
.foto_upload .fotos .foto_tags .tag_bt{
    position: relative;
    display: inline-block;
    background: rgba(255,255,255,0.2);
    padding:7px 15px;
    padding:5px 12px;
    font-size:11px;
    border-radius: 3px;
    color:#fff;
    margin-right: 5px;
    margin-bottom: 5px;
    vertical-align: top;
    overflow: hidden;
}
.foto_upload .fotos .foto_tags .tag_bt.over{
    background: rgba(255,255,255,0.4);
}
.foto_upload .fotos .foto_tags .tag_bt.aktiv{
    background: rgba(255,255,255,1);
    color:#333;
}
.foto_upload.fenster .fotos .foto_tags .tag_bt{
    padding:3px 8px;
    box-shadow: inset 0px 0px 0.5px rgba(0,0,0,0.5);
    background: rgba(0,0,0,0.1);
    color:#333;
}
.foto_upload.fenster .fotos .foto_tags .tag_bt.over{
    background: rgba(0,0,0,0.4);
}
.foto_upload.fenster .fotos .foto_tags .tag_bt.aktiv{
    background: #333;
    color:#fff;
}
.foto_upload .fotos .foto_tags .tag_bt.hide{
    display: none;
}
.foto_upload.inline .fotos,
.foto_upload.inline .neu{
    display:inline-block;
}
.foto_upload.scan{
    display:inline-block;
    vertical-align: top;
}
.foto_upload.scan .neu{
    height: 32px;
}

.file_upload .files .file_box{
    position: relative;
    display: block;
    vertical-align: top;
    white-space: nowrap;
    z-index:1;
}
.file_upload .files .file_box .file{
    position: relative;
    display: inline-block;
    vertical-align: top;
    height: 50px;
    width: 50px;
    margin-right: 10px;
    background: rgba(255,255,255,0.2);
    border-radius: 3px;
    margin-bottom: 10px;
}
.file_upload .files .file_box .txt{
    vertical-align: top;
    display:inline-block;
    white-space: normal;
    padding-top:11px;
    width: calc(100% - 60px);
    overflow: hidden;
    padding-bottom:10px;
}
.file_upload.fenster .files .file_box .txt,
.file_upload.schwarz .files .file_box .txt{
    color:#333;
}
.file_upload .files .file_box .txt.over{
    opacity: 0.5;
}
.file_upload .files .file_box .txt small{
    display:block;
    opacity: 0.5;
    line-height: 10px;
    color:inherit;
}
.file_upload .files .file_box .hide{
    display:none;
}

.foto_upload .neu,.file_upload .neu{
    display: block;
    position: relative;
    height: 50px;
    width: 50px;
    vertical-align: top;
    background: rgba(255,255,255,0.2);
    border-radius: 3px;
    margin-bottom: 0px;
    margin-right: 10px;
}
.foto_upload.fenster .neu,
.foto_upload.schwarz .neu{
    background: rgba(0,0,0,0.1);
}
.file_upload .neu{
    width: 100%;
    background: none;
}
.file_upload .neu .icon{
    display: inline-block;
    position: relative;
    vertical-align: top;
    height: 50px;
    width: 50px;
    margin-right: 0px;
    background: rgba(255,255,255,0.2);
    border-radius: 3px;
}
.file_upload.fenster .neu .icon,
.file_upload.schwarz .neu .icon{
    background: rgba(0,0,0,0.1);
}
.file_upload.fenster .neu .txt,
.file_upload.schwarz .neu .txt{
    color:#333;
}
.foto_upload .neu input,.file_upload .neu input{
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	margin: 0;
	padding: 0;
	opacity:0;
	cursor:pointer;
	z-index:1;
}
.foto_upload .neu .label,.file_upload .neu .label{
    opacity: 1;
}
.foto_upload .neu .label.over,.file_upload .neu .label.over{
    opacity: 0.5;
}
.foto_upload .neu .pics,
.file_upload .neu .pics,
.foto_upload .neu .ic2_box,
.file_upload .neu .ic2_box{
    opacity: 1;
    position:absolute;
}
.foto_upload .neu .ic2_box,
.file_upload .neu .ic2_box{
    filter:invert(1);
}
.foto_upload.fenster .neu .pics,
.file_upload.fenster .neu .pics,
.foto_upload.schwarz .neu .pics,
.file_upload.schwarz .neu .pics{
    filter:invert(1);
}
.foto_upload.fenster .neu .ic2_box,
.file_upload.fenster .neu .ic2_box,
.foto_upload.schwarz .neu .ic2_box,
.file_upload.schwarz .neu .ic2_box{
    filter:invert(0);
}
.foto_upload .abstand,.file_upload .abstand{
    display: block;
    height: 10px;
}
.file_upload .neu .txt{
    display: inline-block;
    cursor: pointer;
    padding-left:10px;
    width:calc(100% - 60px - 10px);
}

.foto_upload .fhover img{
    position: relative;
    vertical-align: top;
    border-radius: 3px;
}
.foto_upload .fhover.over img{
    box-shadow: inset 0px 0px 20px #000;
    opacity: 0.5;
}
.file_upload .fhover.over .pics{
    opacity: 0.5;
}
.foto_upload .fhover,.file_upload .fhover{
    display: inline-block;
    position: relative;
    height:100%;
    width:100%;
    vertical-align: top;
    overflow:hidden;
    z-index: 2;
    background: none;
    border-radius: 3px;
}
.file_upload.fenster .fhover,
.file_upload.schwarz .fhover{
    background: rgba(0,0,0,0.1);
}


.foto_upload .del,.file_upload .del{
    position: absolute;
    width: 30px;
    height: 30px;
    top:5px;
    left:5px;
    left:-30px;
    background: #f00;
    opacity: 0;
    text-align: center;
    border-radius: 3px 3px 0px 0px;
    border-radius: 30px;
    transition: all 0.2s;
    box-shadow: 0px 0px 5px #000;
    z-index: 2;
    overflow: hidden;
}
.foto_upload .del .icon_close,.file_upload .del .icon_close{
    transition: all 0.2s;
    margin-left: -5px;
    margin-top: -5px;
}
.foto_upload .del.over,.file_upload .del.over{
    width: 40px;
    height: 40px;
}
.foto_upload .del.over .icon_close,.file_upload .del.over .icon_close{
    margin-left: 0px;
    margin-top: 0px;
}
/* dCHART3 #########################################################################*/
:root{
    --main-border-radius:3px;
    --main-box-shadow:0px 1px 5px rgba(0,0,0,0.4);
}

.dashboard{
    display:block;
    position: relative;
    width:calc(100% + 5px);
}
.dashboard .seiten{
    display:block;
    margin-bottom: 15px;
}
.dashboard .seiten .bt_seite{
    display:inline-block;
    background: #fff;
    border-radius: var(--main-border-radius);
    box-shadow: var(--main-box-shadow);
    text-decoration: none;
    padding:10px 15px;
    margin-right: 5px;
    margin-bottom: 5px;
    font-weight:100;
    vertical-align: top;
    transition: all 0.1s;
    color:#000;
}
.dashboard .seiten .bt_seite.aktiv{
    font-family:open_sansbold,Helvetica, Ariel, sans-serif;
}
.dashboard .seiten .bt_seite:hover{
    opacity: 0.5;
}


.dCHART3{
    position: relative;
    display: inline-block;
	margin: 0px;
	vertical-align: top;
    box-shadow: var(--main-box-shadow);
    margin-right: 5px;
    margin-bottom: 5px;
    white-space: nowrap;
    background: #fff;
    border-radius:var(--main-border-radius);
    padding:0px;
    overflow: hidden;
    max-width: calc(100% - 5px);
}
.dCHART3.init{
    display:none;
}
.dCHART3 .header{
    position: absolute;
    top:0px;
    left:0px;
    width:calc(100% - 20px);
    height:20px;
    line-height: 20px;
    padding:5px 10px;
    white-space: nowrap;
    z-index: 1;
}
.dCHART3 .header .title{
    display: inline-block;
    line-height: 20px;
    font-size: 12px;
    color:#000;
}
.dCHART3 .header .edit{
    display: inline-block;
    float:right;
    margin-right: -2px;
    padding-left:3px;
    padding-top: 3px;
    padding-bottom: 0px;
    vertical-align: top;
    opacity: 0;
    transition: all 0.1s;
}
.dCHART3:hover .header .edit{
    opacity: 1;
}
.dCHART3:hover .header .edit:hover{
    opacity: 0.5;
}
.dCHART3 .canvas{
    position: absolute;
    top:20px;
    left:0px;
    width:calc(100% - 0px);
    height:calc(100% - 20px);
}
.dCHART3 .canvas.bar{
    top:30px;
    height:calc(100% - 25px);
}
.dCHART3 .canvas.tiles{
    white-space: nowrap;
    padding:10px 7.5px;
    opacity: 0.5;
    transform: scaleY(0);
    transition: 0.3s all cubic-bezier(0, 0, 0, 1.0);
}
.dCHART3 .canvas.tiles.show{
    opacity: 1;
    transform: scaleY(1);
}
.dCHART3 .canvas .tile{
    display: inline-block;
    position: relative;
    border-radius: 3px;
    margin-left:2.5px;
    margin-right: 2.5px;
    height: calc(100% - 20px);
    width:100px;
    box-shadow: inset 20px 20px 30px rgba(255,255,255,0.1);
    white-space: normal;
}
.dCHART3 .canvas .tile .title{
    text-align: center;
    display: block;
    font-size:11px;
    line-height: 12px;
    color:#fff;
    text-shadow:0px 0px 1px rgba(0,0,0,1);
    padding-top: 10px;
}
.dCHART3 .canvas .tile .value{
    text-align: center;
    font-size:18px;
    color:#fff;
    text-shadow:0px 0px 1px rgba(0,0,0,1);
}
.dCHART3 .canvas canvas{
    position: absolute;
    top:0px;
    left:0px;
    width:100%;
    height:100%;
}
.dCHART3 .load{
    filter:invert(1);
    opacity: 0.25;
}
.dCHART3 .load div{
	position:absolute;
	left:-20px;
	top:-20px;
	width:40px;
	height:40px;
	animation: loading_ani 0.5s linear infinite;
}
.dCHART3box{
    display: block;
    position: relative;
    width:calc(100% - 0px);
}
/* INDIVIDUELL ###############################################################*/
#backg{opacity: 1;filter: none;}
#backg.blur img{filter: none;}
code{
    color:#f00;
    font-size:9px;
    background: #fff;
    padding:1px;
    border-radius: 2px;
}

.mitte{
    width:100%;
    text-align: left;
    margin:0;
}
.inhalt .mitte{
    max-width: calc(100% - 40px);
    width: calc(100% - 40px);

    text-align: left;
    margin:0;
}

.nav2{
    box-shadow: 0px 0px 10px rgba(0,0,0,0.4),0px 0px 1px rgba(0,0,0,0.5);
}
.nav2 .header,.nav.mobil{
    height: 80px;
}
.nav2 .logo{
    left:4px;
    height: 35px;
    top:21px;
    display:inline-block !important;
}
.nav2.scroll .logo{
    top:21px;
}
.nav2 svg{
    top:22px;
    fill:#333;
}
.menu2{
    top:80px;
    height: calc(100% - 80px);
    width:200px;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.4),0px 0px 1px rgba(0,0,0,0.5);
}
.menu2 .bt{
    fill:#333;
    fill:none;
    stroke:#333;
    color:#333;
}
.menu2 .bt svg{
    margin-top: -4px;
}
.menu2 .bt svg path{
    stroke-width:1;
}
@media only screen and (min-width:601px) and (max-width:950px){
    .menu2 .bt span{
        color:#333;
    }
    .menu2 .bt.over span{
        background: rgba(255,255,255,0.9);
        -webkit-backdrop-filter: blur(5px);
        backdrop-filter: blur(5px);
    }
}
@media only screen and (max-width:600px){
    .nav2 .header,.nav.mobil{
        height:60px;
    }
    .nav2 .logo{
        top:10px;
    }
    .nav2 svg{
        top:12px;
    }
    .menu2{
        top:60px;
        height: calc(100% - 60px);
    }
    .inhalt.app .mitte{
        padding-top: 80px;
    }
}


.cockpit_box{
    display: block;
    position: relative;
    color: inherit;
    vertical-align: top;
}
.cockpit_abstand{
    display: inline-block;
    width: 20px;
    height: 20px;
}
@media only screen and (max-width:600px){
    .cockpit_abstand{
        display: none;
    }
}
.cp_box{
    display: block;
    position: relative;
    padding-left: 10px;
    margin-bottom: 20px;
}
.cp_box .cplinie{
    position: absolute;
    left:0px;
    top:0px;
    height: 100%;
    width: 3px;
    background: #f00;
    border-radius: 5px;
}
.cp_buttons{
    display: block;
    padding-left: 0px;
}
.cp_buttons .cp_bt{
    display:inline-block;
    position: relative;
    background: rgba(255,255,255,0.2);
    padding:6px 8px;
    padding-left:35px;
    color:inherit;
    font-size: inherit;
    line-height:16px;
    border-radius: 3px;
    margin-top: 5px;
}
.cp_buttons .cp_bt.only{
    margin-top: 0px;
}
.cp_buttons .cp_bt.block{
    display:block;
}
.cp_buttons div.cp_bt{
    background: rgba(255,255,255,0);
    box-shadow: inset 0 0 1px rgba(255,255,255,0.5);
}
.cp_buttons .cp_bt.over{
    background: #fff;
    color:#333;
}
.cp_buttons .cp_bt .ic{
    position: absolute;
    left:9px;
    top:6px;
}
.cp_buttons .cp_mask{
    overflow:hidden;
    height: 0px;
    display: block;
    transition: 0.2s all;
}
.cp_box .termininfos{
    display: block;
    margin-top: 5px;
    padding-left:8px;
    font-size:10px;
}
.cp_box .termininfos .ic{
    margin-right: 13px;
}
.cp_box .tinfos{
    display: inline-block;
    position: relative;
    vertical-align: top;
    padding-left: 35px;
}
.cp_box .tinfos.over{
    opacity: 0.5;
}
.cp_box .tinfos .ticon{
    position: absolute;
    top:0px;
    left:0px;
    width: 28px;
    height: 28px;
    border-radius: 3px;
    box-shadow: 0px 0px 2px rgba(0,0,0,0.5);
}
.cp_box .tinfos .tzeiten{
    display: inline-block;
    margin-top: 4px;
    line-height: 20px;
    vertical-align: top;
    overflow: hidden;
}
.cp_box .tinfos .tzeiten .tuhr{
    display: inline-block;
    font-size: 20px;
    line-height: 20px;
    vertical-align: top;
    color: inherit;
    font-family:open_sansbold,Helvetica, Ariel, sans-serif;
}
.cp_box .tinfos .tzeiten .tuhr.pfeil{
    padding:0px 5px;
    vertical-align: top;
    margin-top: 2px;
    line-height: 10px;
}
.cp_box .tinfos .tzeiten .ttitel{
    display: block;
    font-size: 18px;
    line-height: 18px;
    vertical-align: top;
    margin-bottom: 8px;
    color: inherit;

}
.cp_box .tinfos .tzeiten .tdatum{
    display: inline-block;
    font-size: 20px;
    line-height: 20px;
    vertical-align: top;
    color: inherit;
    font-family:open_sansbold,Helvetica, Ariel, sans-serif;
}
.cp_box .tinfos .tzeiten .tinfoicon{
    display: inline-block;
    position: relative;
    margin-left: 10px;
    margin-top: 2px;
    vertical-align: top;
    height: 14px;
    width: 14px;
    border-radius: 30px;
    border: 1px solid rgba(255,255,255,0.3);
    opacity: 0.5;
}
.cp_foto .abstand{
    display:none !important;
}
.cp_foto .neu{
    margin-top: 5px;
}
.cp_foto .fotos .foto_box .foto{
    margin-top: 5px;
    margin-bottom: 0px;
    margin-right: 5px;
}
#cockpit_besuchsziel .dCHART3{
    margin-right:0 !important;
    max-width: 100% !important;
}

.inhalt .buttons{
    margin-top: -10px;
    text-align: left;
    margin-left: 0px;
}
.inhalt .buttons .klein{
    margin-left: 0px;
    margin-right: 20px;
}
.inhalt .nav_abstand.mitbtns{
    height: 110px;
}
.inhalt .nav_abstand.nobtns{
    height: 70px;
}
.inhalt .forms.reminder{
    z-index:2;
}

.fenster .termin_status{
    display: inline-block;
    vertical-align: middle;
    border-radius: 4px;
    height: 14px;
    line-height: 14px;
    padding:0px 5px;
    font-size: 9px;
    margin-right: 5px;
}
.fenster .termin_details{
	margin-top:5px;
	margin-bottom:5px;
}
.fenster .suche.extra{
    margin-top:5px;
}
.fenster .suche.add{
    width:calc(100% - 30px - 5px);
}
.fenster .location_add{
    position: absolute;
    top:0px;
    right:-38px;
    font-size:20px;
    line-height: 26px;
    height: 26px;
    width: 26px;
    text-align: center;
    border-radius: 30px;
    background: rgba(0,0,0,0.1);
    color:#999;
    transition: all 0.2s;
}
.fenster .location_add.over{
    background: #333;
    color:#fff;
}
.fenster .location_lager_dot{
    display: inline-block;
    background: #3193f1;
    border-radius: 10px;
    height: 5px;
    width: 5px;
    margin-left: 0px;
    margin-right: 3px;
    margin-top:-1px;
    vertical-align: middle;
}
.fenster .location_ad_dot,
.fenster .location_route_dot{
    display: inline-block;
    background: #ee1616;
    border-radius: 10px;
    height: 5px;
    width: 5px;
    margin-left: 0px;
    margin-right: 3px;
    margin-top:-1px;
    vertical-align: middle;
}
.fenster .location_route_dot{
    background: var(--farbe-gruen);
}
.fenster .person{
	display: block;
	position: relative;
	color:inherit;
}
.fenster .person .avatar{
	text-align: center;
	display: inline-block;
	width:50px;
	height: 50px;
	vertical-align: top;
}
.fenster .person .avatar .foto{
	display: inline-block;
	width:50px;
	height: 50px;
	box-shadow: 0px 0px 1px rgba(0,0,0,0.5);
	border-radius: 50px;
	overflow: hidden;
}
.fenster .person .avatar .foto img{
	width:50px !important;
	height:50px !important;
}
.fenster .person .infos{
	display: inline-block;
	position: relative;
	width:calc(100% - 65px);
	margin-left:15px;
	vertical-align: top;
	color:inherit;
}
.fenster .person .infos .status{
	display: inline-block;
	padding:0px 5px;
    height: 14px;
	font-size:9px;
	line-height: 14px;
	border-radius: 4px;
	color:#fff;
}
.fenster .person .infos .termin_move{
    display: inline-block;
    padding:0px 1px;
    background: #ddd;
    border-radius: 50px;
    margin-left: 5px;
    vertical-align: middle;
    transition: all 0.2s;
}
.fenster .person .infos .termin_move.over{
    background: #ccc;
}
.fenster .person .termin_storno{
    position: absolute;
    right:-10px;
    font-size:20px;
    line-height: 30px;
    height: 30px;
    width: 12px;
    padding-left:9px;
    padding-right:9px;
    text-align: center;
    border-radius: 30px;
    background: #fff;
    color:#f00;
    opacity: 0.5;
    transition: all 0.2s;
    overflow: hidden;
    white-space: nowrap;
    vertical-align: top;
}
.fenster .person .termin_storno.aktiv{
    width:74px;
}
.fenster .person .termin_storno.over,
.fenster .person .termin_storno.aktiv{
    background: #f00;
    color:#fff;
    opacity: 1;
}
.fenster .person .termin_storno.aktiv.over{
    opacity: 0.5;
}
.fenster .person .termin_storno .txt{
    display: inline-block;
    line-height: 30px;
    color:#fff;
    vertical-align: top;
    margin-left:10px;
    text-transform: uppercase;
}
.fenster .person .termin_move_box{
    display: block;
    display: none;
    position: relative;
    color:inherit;
    line-height: inherit;
    margin-top: 10px;
    padding-bottom:170px;
}

.fenster .location_link{
    display: block;
    padding-left:25px;
    position: relative;
}
.fenster .location_link.meldung{
    padding-left:16px;
    margin-bottom:5px;
}
.fenster .location_link.over{
    opacity: 0.5;
}
.fenster .location_link h2{
    margin-bottom: 0px;
}
.fenster .location_link .pics{
    position: absolute;
    left:-10px;
    top:-6px;
}
.fenster .location_link.meldung .pics{
    position: relative;
    left:auto;
    top:auto;
}
.fenster .location_link.meldung .ic{
    position: absolute;
    left:0px;
    top:0px;
}
.fenster .blockx{
    width: calc(100% + 5px);
}
.fenster .bt.route{
    display: inline-block;
    padding:7px 15px;
    margin-right:10px;
    width:calc(100% - 30px - 40px);
}
.fenster .bt.route_add{
    padding:7px 0px;
    text-align: center;
    width:30px;
    border-radius: 20px;
    margin-right: 0px;
}
.fenster .bt.route_add .pics{
    margin-left: 0px;
    margin-top: 0px;
}
.fenster .bt.route_add.aktiv{
    background:var(--farbe-gruen);
}
.fenster .bt.route_add.over .ic,
.fenster .bt.route_add.aktiv .ic{
    filter:invert(1);
}
.fenster .bt.route_add.over.aktiv{
    opacity: 0.5;
}
.fenster .block{
    display:block;
}

.fenster .meldungen{
    color:inherit;
}
.fenster .meldungen .abstand{
    display: block;
    height: 5px;
}
.fenster .meldungen .mbox{
    display: block;
    position: relative;
    color: inherit;
    padding-left: 16px;
    margin-top: 5px;
}
.fenster .meldungen .mbox p{
    display: block;
    color: inherit;
}
.fenster .meldungen .mbox .linie{
    position: absolute;
    left:6px;
    top:0px;
    width: 2px;
    height: 100%;
    border-radius: 5px;
    background: #999;
}
.fenster .meldungen .mbox .linie.rot{
    background: #f00;
    left:5px;
    width:4px;
}
.fenster .meldungen .mbox.fotos a{
    display: inline-block;
    vertical-align: top;
    margin: 5px;
    margin-left: 0px;
    margin-right: 10px;
}
.fenster .meldungen .mbox.fotos a img{
    border-radius: 2px;
    display: inline-block;
}

.fenster .kls{
    display:none;
    background: #ddd;
    background: rgba(0,0,0,0.1);
    border-radius: 2px;
    margin-top: 5px;
    color:#333;
    padding:5px;
}
.fenster .kls strong{
    display: block;
    font-family:open_sansbold,Helvetica, Ariel, sans-serif;
    color:inherit;
    padding:2px 0px;
}
.fenster .kls p{
    display: block;
    color:inherit;
    padding:2px 0px;
}

.monat .tag_bg.weiss{
    background: #fff;
}
.monat .tag_bg.rot{
    background: #f00;
}
.monat .tag_bg.rot_rand{
    width:calc(100% - 8px);
    height:calc(100% - 8px);
    border: 2px solid rgba(255,0,0,0.5);
}
.monat .rot_rand span{
    color:#fff;
}

.lager_hinweis{
    display: block;
    margin-bottom:10px;
}
.lager_artikel{
    position: relative;
    display:block;
    margin-top:5px;
    background: rgba(0,0,0,0.05);
    padding:3px;
    border-radius: 3px;
    color:#333;
    min-height: 30px;
}
.lager_artikel.over{
    background: rgba(0,0,0,0.15);
}
.lager_artikel.bestellung{
    padding-right: 60px;
}
.lager_artikel .name{
    padding-left: 80px;
    color:#333;
    font-family:open_sansbold,Helvetica, Ariel, sans-serif;
    font-size: 11px;
}
.lager_artikel b{
    color:#333;
    font-family:open_sansbold,Helvetica, Ariel, sans-serif;
    font-size: 11px;
    display: block;
}
.lager_artikel .name small{
    color:inherit;
    width: 40px;
    margin-left: -50px;
    padding-right: 10px;
    text-align: right;
}
.lager_artikel .anzeige{
    display: block;
    padding-left:80px;
    /*min-height: 55px;*/
    color:inherit;
    font-size: 10px;
}
.lager_artikel .anzeige small{
    color:#777;
}
.lager_artikel .anzeige .ic{
    vertical-align: top;
    margin-top: 0px;
}
.lager_artikel .artikel_bild{
    display:block;
    position: absolute;
    top:3px;
    left:3px;
    width:30px;
    height:30px;
}
.lager_artikel .artikel_bild img{
    max-width: 100%;
    max-height: 100%;
    border-radius: 3px;
}
.lager_artikel.mitbild{
    min-height: 60px;
}
.lager_artikel.mitbild .anzeige{
    padding-left:70px;
    padding-right:30px;
}
.lager_artikel.mitbild .anzeige.details{
    margin-top: -55px;
    padding-right:10px;
}
.lager_artikel.mitbild .anzeige.details .name{
    padding-left:0px;
}
.lager_artikel.mitbild .bild_box{
    display:block;
    position: relative;
    width:60px;
    height:60px;
}
.lager_artikel.mitbild .bild_box img{
    max-width: 100%;
    max-height: 100%;
    border-radius: 3px;
}
.lager_artikel.mitbild .plus{
    position: absolute;
    right:5px;
}

.lager_artikel input{
    position: absolute;
    right: 3px;
    top:3px;
    color:#333;
    border-radius: 3px;
    padding:0px 3px;
    text-align: right;
    width: 50px;
    font-size:11px;
    font-family:open_sansbold,Helvetica, Ariel, sans-serif;
    line-height: 11px;
    box-shadow: 0px 0px 1px rgba(0,0,0,0.2);
}
.lager_artikel .bearbeiten{
    position: absolute;
    top:2px;
    right: 2px;
    padding-left:10px;
    padding-bottom:10px;
}
.lager_artikel.over{
    background: rgba(0,0,0,0.1);
}
.lager_auftrag{
    display:block;
    position: relative;
    padding:7px 15px;
    height: auto;
    line-height: auto;
    background: rgba(0,0,0,0.05);
    color:#333;
    vertical-align: top;
    border-radius: 3px;
    transition: all 0.2s;
    margin-bottom: 10px;
    overflow: hidden;
}
.lager_auftrag.over{
    background: rgba(0,0,0,0.1);
}
.lager_auftrag.over .farbe{
    width: 10px;
}
.lager_auftrag .farbe{
    position: absolute;
    left:0px;
    top:0px;
    height: 100%;
    width: 5px;
    transition: 0.2s all;
}
.lager_auftrag .status{
    font-size: 10px;
    color:#666;
}
.lager_auftrag .datum{
    font-family:open_sansbold,Helvetica, Ariel, sans-serif;
}
.lager_auftrag div{
    color:inherit;
}
.lager_auftrag .artikel_liste{
    display: block;
    position: relative;
    overflow: hidden;
    height: 0px;
    transition: 0.2s all;
}
.lager_auftrag .artikel_liste .mask{
    display: block;
    position: relative;
}

.route{
    display:block;
}
.route.cp{
    margin-left: -40px;
}
.route .termine{
    display:block;
    margin-bottom:5px;
}
.route .termine .datum{
    display: block;
    margin-top: 15px;
    margin-bottom: 10px;
}
.route .termine .datum .wtag{
    display: inline-block;
    margin-right: 10px;
    background: #fff;
    color:#333;
    border-radius: 3px;
    padding:1px 0px;
    text-align: center;
    width:30px;
    vertical-align: top;
}
.route .termine .datum .add_vorschlag{
    display: inline-block;
    margin-right: 10px;
    background: var(--farbe-blau);
    color:#fff;
    font-size:11px;
    border-radius: 3px;
    padding:1px 5px;
    text-align: center;
    vertical-align: top;
}
.route .termine .datum .add_vorschlag.over{
    opacity: 0.5;
}
.route .termine .datum .frei{
    display: inline-block;
    background: #fff;
    color:#333;
    border-radius: 3px;
    padding:1px 5px;
    margin-left: 10px;
}
.route .termine .tageswechsel,
.route .termine .wochenwechsel{
    display:block;
    height: 1px;
    background: #fff;
    opacity: 0.25;
    margin-top: 15px;
    margin-bottom: 15px;
}
.route .termine .wochenwechsel{
    height: 14px;
    line-height: 14px;
    border-radius: 3px;
    padding-left:7px;
    opacity: 1;
    color:#fff;
    background: rgba(255,255,255,0.25);
    font-size:10px;
}
.route .termine .urlaub{
    display: inline-block;
    position: relative;
    margin-bottom: 5px;
    margin-left: 40px;
    background: #fff;
    color:#333;
    border-radius: 3px;
    padding:1px 5px;

}
.route .termine .eintrag{
    display: block;
    position: relative;
    margin-bottom: 5px;
    padding-left: 90px;
}
.route .termine .eintrag .zeit{
    position: absolute;
    left:40px;
    top:0px;
    margin-right: 10px;
    background: #fff;
    color:#333;
    border-radius: 3px;
    padding:1px 0px;
    text-align: center;
    width:40px;
    overflow: hidden;
}
.route .termine .eintrag .details{
    display: inline-block;
    background:rgba(255,255,255,0.2);
    border-radius: 3px;
    padding:1px 5px;
}
.route .termine .eintrag .details.over{
    background:#fff;
    color:#333;
}
.route .termine .eintrag.loc{
    padding-left: 135px;
}
.route .termine .eintrag.loc .zeit{
    width:80px;
    padding-right: 10px;
}
.route .termine .eintrag .status{
    position: absolute;
    top:0px;
    right:0px;
    width:10px;
    height: 100%;
}
.route .termine .dauer{
    display: block;
    margin-bottom: 5px;
    padding-left: 53px;
    opacity: 0.75;
}
.route .termine .dauer.hint{
    opacity: 1;
}
.route .termine .hotel{
    display: inline-block;
    background: #fff;
    color:#333;
    border-radius: 3px;
    padding:1px 5px;
    margin-left:40px;
}
.route_map_woche{
    display: block;
    position:relative;
    width: 100% !important;
    height: 100% !important;
    background: #ccc;
    border-radius: 6px !important;
}
#map {
    display: block;
    height: 500px;
    width: 100%;
    border-radius: 3px;
    margin-bottom: 20px;
}


.shop{
    display: block;
    position: relative;
}
.shop .artikelliste{
    display: block;
    position: relative;
    margin:-10px;
    margin-top:10px;
}
.shop .artikelliste .artikel{
    position:relative;
    display:inline-block;
    width:165px;
    height:200px;
    vertical-align: top;
    overflow: hidden;
    margin:10px;
    background: #fff;
    border-radius: 3px;
}
.shop .artikelliste .artikel img{
    position:relative;
    display:block;
    width:100%;
    height:150px;
    object-position: center;
    object-fit: cover;
}
.shop .artikelliste .artikel .name{
    position:absolute;
    bottom:0px;
    left:0px;
    width:calc(100% - 10px);
    display:block;
    padding:5px;
    color:#000;
    background: #fff;
    border-top:1px solid #eee;
}
.shop_artikel_big{
    display: block;
    width:240px;
    height:240px;
    object-position: center;
    object-fit: cover;
    margin:auto;
}
.shop_artikel_menge{
    display: inline-block;
    width:60px;
    position: relative;
    margin:0px;
    margin-bottom: 5px;
    color:inherit;
    font-size: 11px;
    line-height:15px;

    background: rgba(0,0,0,0.1);
    border-radius: 4px;
    padding:4px 10px;
}

.ticket_max,.ticket_gebucht{
    display:inline-block;
    margin-left: 5px;
    padding:1px 3px;
    background: #ccc;
    background: #ffce44;
    font-size:11px;
    font-weight: bold;
    border-radius: 2px;
    color:#333;
}
.ticket_gebucht{
    background: #bbb;
}
.news_suche{
    position: relative;
    display: block;
    max-width: 300px;
    background: rgba(255,255,255,0.2);
    border-radius: 4px;
    height: 30px;
    line-height: 30px;
    margin-bottom: 30px;
    margin-bottom: 10px;
    margin-top: 0px;
    margin-left: 100px;
}
.news_suche .news_suche_lupe{
    position: absolute;
    top:0px;
    left:0px;
    height: 30px;
    width:30px;
}
.news_suche input{
    position: absolute;
    top:0px;
    left:40px;
    width:calc(100% - 40px);
    height: 30px;
    line-height: 30px;
    background: none;
}
@media only screen and (max-width:600px){
    .news_suche{
        max-width: 100%;
        margin-left: 0px;
    }
}
