/*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/ */

html {
	color: #222;
	font-size: 14px;
    line-height: 1.5;
    box-sizing: border-box;
	font-family:"SegoeUI", "Segoe UI", "Droid Sans", "Myriad", "Lucida Grande", "Helvetica Neue", "Arial", sans-serif;
}
*, *:before, *:after {
  box-sizing: inherit;
}
::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}


input:focus,
select:focus,
textarea:focus,
button:focus {
    outline: none;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
h1, h2, h3, h4, h5, h6 { margin:0; }
h1 { font-weight:300; font-size:3rem; }
h2, .teilschritt header { font-weight:lighter; font-size:1.8rem; }
h3 { font-weight:600; font-size:1.15rem; line-height:1.2; }
h4 { font-weight:normal; font-size:0.9rem; }
h5 { font-weight:normal; font-size:0.8rem; }
h6 { font-weight:normal; font-size:1rem; }
ul, ol { margin:0; padding:0; }

#head-text ul, ol {
    display: block;
    list-style-position: outside;
    margin-left: 15px; /* this was commented out (and list-style-position: inside was used) in order to properly show the numbers/bullets in the new TinyMCE editor but it seems that using the margin in combination with list-style-position: outside is the better approach */
    padding-left: 5px;
}

input[type="text"], input[type="number"] { height:30px; width:30%; margin-left:35%; text-align:right; padding:0 5px 0 1px; border:1px solid #ddd; background:#fff; }

.ui-spinner { height:30px; width:102px; margin-left:29%; text-align:right; padding:0; border:0 solid #ddd; background:#fff; border-radius:0;}
.uni .ui-spinner { width:102px; margin-left:40%;}
.ui-spinner input { height:100%; margin: 0 35px 0 0; border:0 solid #ddd; width:100%; padding:0 25px; font-size:1rem; background-color:#f6f6f6; }
section > :last-child .ui-spinner input { background:#ffffff; }
section > .uni .ui-spinner input { background:#f6f6f6; }

.ui-spinner .ui-spinner-button {
	top:0;
	height:30px;
	width:20px;
	border:0 solid #ddd !important;
	cursor:pointer;
	background-image:none;
	background-color:#ffffff;
	border-radius:0 !important;
}
section > div:last-child .ui-spinner .ui-spinner-button {
	background-color:#f6f6f6;
}
section > div.uni .ui-spinner .ui-spinner-button {
	background-color:#ffffff;
}

.ui-spinner .ui-spinner-button:hover {
	background-image:none;
}
.ui-spinner .ui-spinner-down {
	left:0;
	right:auto;
	border-right:0 solid #eee !important;
}
.ui-spinner .ui-spinner-up {
	left:auto;
	right:0;
	border-left:0 solid #eee !important;
}

.ui-spinner .ui-icon {
    left: 1px;
    margin-top: -9px;
    position: absolute;
    top: 50%;
	opacity:0.6;
}
.ui-spinner .ui-spinner-button:hover .ui-icon {
	opacity:1;
}

.ui-icon-caret-1-n {
  background-image: url("../img/spinner_up.png") !important;
  background-size: 10px !important;
  background-position: center !important;
}

.ui-icon-caret-1-s {
    background-image: url(../img/spinner_down.png) !important;
    background-size: 10px !important;
    background-position: center !important;
}

.tableForm .readonlyTextField { width: 62px; margin: 0 20px 0 20px; border:0px solid #f6f6f6; font-size:1rem; background-color:#fff; }

.center { text-align:center; }

.gruen {
	color:#00BB00;
	font-weight: 700;
	background-color: #eefaee;
	background-clip: padding-box;
}
.rot, .red  {
	color:#dd0000;
	font-weight: 700;
	background-color: #ffeaea;
	background-clip: padding-box;
}
.gelb { color:#ccaa00 }
.orange { color: #cc7506}
.blau { color:#8ABBD1 }

.bggruen { background-color:#00BB00 }
.bgrot { background-color:#dd0000 }
.bggelb { background-color: #faee4c
}
.bgblau { background-color:#8ABBD1 }

.gross { font-size:1.8rem; font-weight:lighter; }
.mittel { font-size:1.2rem; font-weight:lighter; }
.klein { font-size:0.8rem; }


body {
	/*background-color: transparent;*/
	background-color: #007ca2;
	/*background-image: url('../img/AdobeStock_295710209_Preview2.jpg');*/
	/*AdobeStock_122040268_Preview.jpg
	AdobeStock_229927970_Preview.jpg
	AdobeStock_295710209_Preview.jpg
	AdobeStock_385308649_Preview.jpg*/
	overflow-y: auto;
	background-size: cover;
	background-attachment: fixed ;
	background-repeat: no-repeat;
	/*background-color: grey;*/
}

main {
	width:100%;
	max-width:850px; /*740*/
	margin: 0 auto 20px;
	position:relative;
	padding: 5px;
}

#headerLogo {
	/*height: 80px;*/
	margin-right: 50px;
}

#headerRegionSelectorContainer {
	height: 90px;
}

#headlineContainer {
	float: left;
	cursor: pointer;
	cursor: hand;
}

#logoContainer {
	float: right;
}

@media only screen and (max-width: 830px) {
	#headerLogo {
		margin-right: 25px;
	}
}

@media only screen and (max-width: 800px) {
	#headerLogo {
		height: 40px;
		margin-right: 15px;
	}

	#headerRegionSelectorContainer {
		height: 45px;
	}
}

@media only screen and (max-width: 640px) {
	#headerLogo {
		display: none;
	}

	#headlineContainer, #logoContainer {
		float: none;
		text-align: center;
	}
}

#logoContainer img {
	margin-top: 25px;
	margin-left: 10px;
	padding: 5px;
	background-color: white;
}

.teilschritt {
	margin-bottom:15px;
	position:relative;
}
.teilschrittnummer {
	height:50px;
	line-height:50px;
	width:50px;
	text-align:center;
	color:black;
	background-color:white;
	border-right:1px solid #87ACD8;
	font-weight:300;
	font-size:2em;
	display: inline-block;
}
.teilschrittnummer-old {
	position:absolute;
	z-index:11;
	left:0;
	top:0;
	height:50px;
	line-height:50px;
	width:50px;
	text-align:center;
	color:black;
	background-color:white;
	border-right:1px solid #87ACD8;
	font-weight:300;
	font-size:2em;
}
.teilschrittedit {
	display:block;
	position:absolute;
	z-index:10;
	right:5px;
	top:5px;
	color:white;
	width:40px;
	height:40px;
	background: url("../img/arr-down.png") no-repeat 5px center;
	cursor:pointer;
}
/* .done .teilschrittedit:hover::after {
	content:"Schritt bearbeiten";
	margin-left:40px;
	display:block;
} */
/*.done footer {
	 cursor:pointer;
}*/
.start-disable .teilschrittedit {
	display:none;
}


.teilschritt > article {
	background:#ffffff;
	display:none;
	margin-top:5px;
	/*border: 3px solid rgb(253, 196, 0);*/
	/* border: 3px solid rgb(1, 88, 1); */
	border: 3px solid #345;
}

header {
	position:relative;
	padding:0 60px;
	line-height:48px;
	background-repeat: no-repeat;
	background-color:#fff;
	background-position: right 20px top 18px;
	cursor:pointer;
	display: inline-block;
	vertical-align: top;
}
.open .teilschrittedit { display:block; background-image:url('../img/arr-up.png') !important;}
.open.done .teilschrittedit { display:block; background-image:url('../img/arr-up.png') !important;}
.done header {  }
.open.done .teilschrittedit {  }



footer {
	margin-top:5px;
	background:none;
}
footer .ergebnis {
	background:#fff;
	border-top:none;
}
#sy1-erg table,
#sy2-erg table {
	width:100%;
}
#sy1-erg table td:last-child,
#sy2-erg table td:last-child {
	text-align:left;
}



section {
	display:table;
	table-layout: fixed;
	width:100%;
	border-top:1px solid #eee;
}

section.trenner,
footer > section.trenner{
	border-top:1px solid #bbb;
}

section.b-trenner{
	border-bottom:1px solid #bbb;
}



section.ergebnis,
footer > section.ergebnis {
	display:table;
	width:100%;
	font-weight:300;
}

/*section.ergebnis {
	border-top:3px solid #ccc;
}*/


section > h3,
section > h4 {
	display:table-cell;
	width:30%;
	text-align:right;
	padding-right:10px;
	vertical-align:middle;
}

/*
.empfehlungHeadline {
	vertical-align: top;
    padding-top: 13px;
    text-align: left;
}
*/

section > div {
	display:table-cell;
	/*background:#f2f2f2;*/
	text-align:left;
	vertical-align:middle;
	padding:5px 0;
}
div.bhelp,
div.bhelptable,
div.bnohelp {
	width:30px;
	cursor:pointer;
	padding:6px 0 !important;
	vertical-align:top !important;
}

td > div.bhelp{
	position: absolute;
	top: 0;
	left: 0;
}
td > div.bhelptable{
	position: absolute;
	top: 0;
	left: 0;
}
div.bnohelp {
	cursor:auto;
}

div.bhelp > div {
	margin:0 0 0 5px;
	padding-left:1px;
	width:22px; height:22px;
	line-height:20px;
	background:#ccc;
	border-radius:50%;
	font-weight:bold;
	color:white;
}
div.bhelptable > div {
	margin:0 0 0 5px;
	padding-left:1px;
	width:22px; height:22px;
	line-height:20px;
	background:#ccc;
	border-radius:50%;
	font-weight:bold;
	color:white;
}
div.bnohelp > div {
	display:none;
}

section > :last-child {
	background:#f6f6f6;
}

#chartHeadlineSection > :last-child {
	background-color: inherit;
}

section.info { padding-left: 60px !important; padding-right: 60px; }
section.info > :last-child {
	background:none;
}

section > div {
	text-align:center;
}
section > div.inputcont,
section.info div {
	text-align:left;
}
section > .uni {
	background:#ffffff;
	/* background: linear-gradient(165deg, #eee 0%,  #eee 40%, #ddd 55%, #ddd 100%); */
}
section > .bgrot, section > .bgrot:last-child {
	background:#dd0000;
	color:#fff;
}
section > .bggruen, section > .bggruen:last-child {
	background:#00BB00;
	color:#fff;
}
section > .bggelb, section > .bggelb:last-child {
	background:#ffd500;
	color:#000;
}
section > .bgblau, section > .bgblau:last-child {
	background:#8ABBD1;
	color:#fff;
}
section > .interpret {
	border:15px solid white;
	border-radius:20px;
	font-weight:500 !important;
}

input[type="text"].rot {
	border: 1px solid #dd0000;
		color:black;
}
input[type="text"].gruen {
	border: 1px solid #00BB00;
	color:black;
}
input[type="text"].gelb {
	border: 1px solid #ccaa00;
	color:black;
}
input[type="text"].blau {
	border: 1px solid #8ABBD1;
	color:black;
}

footer > section > div {
	padding:0;
	height:50px;
	line-height:50px;
}

.weitersection {
	display:none;
	text-align:center;
}
.open .weitersection {
	display:block;
}
.open .weitersection.start-hide {
	display:none;
}
.weitersection .uni {
	background:none;

}
.weiterbutton {
	color:white;
	background-color:transparent;
	font-size:1.3rem;
	cursor:pointer;
	text-align:center;
	text-shadow: 0 0 6px #333, 0 0 2px #333;
	width:100%;
	display:inline-block;
	margin-top:5px;
	padding-top:5px;
	height:100px;
	background-image:url("../img/nextstep.png");
	background-position:center 46px;
	background-repeat:no-repeat;
	background-size:45px;
}
.weiterbutton:hover {
	font-size:1.4rem;
	background-size:50px;
}

.zwischenschritt {
	height:75px;
	background-image:url("../img/nextstepsmall.png") !important;
	background-position:center 33px !important;
	background-repeat:no-repeat !important;
	background-size:30px !important;
	vertical-align:top;
	cursor:pointer;
}
.zwischenschritt:hover {
	background-size:33px !important;
	font-size:1.1em;
}


aside,.aside-content {
	display:none;
	background: #f7f7f7;
	background: linear-gradient(to top, #ccc 0%, #f7f7f7 10%);
	border-bottom:1px solid #ccc;
	color:#666;
	padding:20px;
	font-size:0.9rem;
	text-align: left !important;
}

.aside-content > td{
	padding: 20px;
}

aside.none{
	display: none !important;
}

.helptextAside td {
	border: 1px solid darkgrey;
	padding: 5px;
}

.helptextAside td p {
	margin: 0;
}

.start-hide {
	display:none;
}
.start-disable {
	opacity:0.6;
	pointer-events:none;
}



/**************** Iconformatierung BUTTON / DROPDOWN allgemein *******************/

.bgroup li table,
.bsolo li table,
.dropgroup table {
	width:100%;
}

.bgroup li table tr td,
.bsolo li table tr td,
.dropgroup table tr td {
	height:39px;
	vertical-align:middle;
	text-align:center;
	font-size:0.8rem;
	line-height:1.2;
	font-weight:600;
	color:black;
	padding:0;
}

.bgroup li.small table tr td,
.bsolo li.small table tr td {
	height:24px;
}


/**************** BUTTON-Formatierung aus machvier kopiert ******************/

.bgroup, .bsolo {
	font-size:0;
	vertical-align:top;
	margin:5px 0 5px 0;
}

.bgroup li,
.bsolo li {
	display:inline-block;
	vertical-align:top;
	width:100px; height:100px;
	border:1px solid #eeeeee;
	background-color:#ffffff;
	cursor:pointer;
}

.bgroup li.small,
.bsolo li.small {
	width:66px; height:66px;
	border:1px solid #eeeeee;
}


li table tr td.icon {
	vertical-align:middle;
	border-bottom:1px solid #fff;
	height:60px;
}
li.small table tr td.icon {
	height:40px;
}


li table tr td.icon img {
	display:block;
	max-height:50px;
	margin:auto;
}
li.small table tr td.icon img {
	max-height:25px;
}


.bgroup li:hover,
.bsolo li:hover {
	border:1px solid #bbb;
	width:100px;
	position:relative; z-index:200;
	-webkit-transition: all 0.1s;
	-moz-transition: all 0.1s;
	-ms-transition: all 0.1s;
	transition: all 0.1s;
}
.bgroup li.small:hover,
.bsolo li.small:hover {
	width:66px;
}

.bgroup li.selected,
.bsolo li.selected {
	border:1px solid #ddd;
}


.bgroup li.selected table tr:last-child td,
.bsolo li.selected table tr:last-child td {
	background-color:#ddd;
	-webkit-print-color-adjust: exact;
	color-adjust: exact;
}


/**************** DROPDOWN-Formatierung ******************/

.dropgroup {
	background:white;
	margin:10px 20px;
	cursor:pointer;
}

.drophead {
	height:40px;
	line-height:40px;
}
.drophead table {border: 1px solid #ddd; }
.drophead table td:last-child {
		background:#ddd;
}

.dropselect {
	list-style-type:none;
	display:none;
}

.dropselect li {
	border-top:1px solid #ddd;
}
.dropselect li:first-child {
	border-top:2px solid #555;
}

.dropicon {
	height:40px;
	width:25%;
}
.dropicon img {
	height:30px;
	width:auto;
}

.dropgroup table tr .droptext {
	text-align:left;
	padding:0 0 0 10px;
}

/**** Infobuttons druck, info ******/
.infobutton {
	vertical-align:top;
	display:inline-block;
	margin-right:10px;
	width:50px;
	height:50px;
	background-color:white;
	cursor:pointer;
}

.infobuttonactive {
	border:2px solid #ccc;
}

.infobtton img {
	max-width:80%;
	max-height:80%;
}

.euDisclaimer {
	color: white;
	font-size: 12px;
}

.euDisclaimer div {
	display: table-cell;
	padding-bottom: 20px;
	vertical-align: top;
}

.sy1-txt .droptext,
.sy2-txt .droptext {
	font-size:1.2rem;
	line-height:1.2;
	font-weight:300;
}

/**** generic buttons ****/
.genericButton {
	height: 36px;
	/*font-size: 13px;*/
	line-height: 90%;
	font-weight: bold;
	border: 1px solid #000;
	/*background-color: rgb(2, 121, 2);*/
	background-color: #ddd;
	color: black;
	margin-bottom: 2px;
}

.genericButton:hover {
	/* background-color: rgb(3, 165, 3); */
	background-color: rgb(109, 109, 109);
	color: white;
}

/**** chart related styles ****/
.chartControlBtns table {
	width: 96%;
	margin: 10px auto;
	table-layout: fixed;
}

.chartControlBtns button {
	width: 100%;
	height: 36px;
	font-size: 13px;
	line-height: 90%;
	font-weight: bold;
	border: 1px solid #000;
	/*background-color: rgb(2, 121, 2);*/
	background-color: #ddd;
	color: black;
	margin-bottom: 2px;
}

.chartControlBtns .co2CostsButton {
	background-color: rgb(255, 204, 0);
}

.chartControlBtns button:hover {
	/* background-color: rgb(3, 165, 3); */
	background-color: rgb(109, 109, 109);
	color: white;
}

.chartControlBtns button.selected {
	/* background-color: rgb(1, 88, 1); */
	background-color: #345;
	color: white;
}

.chartHeadline {
	text-align: center;
	font-size: 16pt;
	color: darkgray;
	background-color: #fff;
	margin-top: 5px;
	line-height: 1.0;
}

.chartLegendContainer {
	width: 96%;
	margin: 5px auto 5px;
	text-align: center;
}

.chartLegend {
	display: inline-block;
}

.legendColorbox {
	width: 13px;
	height: 13px;
	float: left;
	margin-right: 6px;
	margin-top: 4px;
	-webkit-print-color-adjust: exact;
}

.legendText {
	color: #222;
	font-size: 13px;
	line-height: 1.5;
	font-weight: normal;
	text-align: left;
	float: left;
	margin-right: 20px;
}

/* ==========================================================================
   Media Queries
   ========================================================================== */

@media only screen and (max-width: 370px) {
    .msg-info-box i{
        left: 5px;
    }
    .msg-info-box-text{
        margin-left: 30px;
        padding-right: 10px;
    }
}
@media only screen and (max-width: 585px) {

	#schritt1 article p {
		width: 100% !important;
	}

	#schritt1 div.uni {
		margin: 0 !important;
	}

	#schritt1 article > section{
		text-align: center;
	}

	header{
		width: 100%;
		text-align: center;
		border-top: 1px solid #9cbade;
		font-size: 17px !important;
	}

}
@media only screen and (max-width: 640px) {

	#section-top-2 > p{
		width: auto !important;
	}
	#section-top-3 > p{
		width: auto !important;
	}

	section > h3, section > h4 {
		display:block;
		width:100%;
		text-align:center;
		padding:5px;
		font-weight:bold;
		background-color:#f6f6f6;
	}

	section > div {
		display:inline-block;
		width:calc( 50% - 2px );
	}
	section > div.inputcont {
		text-align:center;
	}

	section > .uni {
		width:100%;
	}
	section > .uni.tre {
		width:auto;
	}

	div.bnohelp {
		display:none;
	}


	/*
	h2, .teilschritt header {
		display:table;
		width:100%;
	}
	h2, .teilschritt header div {
		font-size:1.3rem;
		line-height:1.1;
		display:table-cell;
		vertical-align:middle;
	} */

	.ui-spinner {
		margin-left:0;
	}
	.uni .ui-spinner {
		margin-left:0;
	}

	.mittel .droptext {
		font-size:0.9rem;
	}

	.weiterbutton {
		height:120px;
		background-position: center 70px;
	}

	section > :last-child {
		background:none;
		/* border-left:1px solid #f6f6f6; */
	}
	section > :last-child .ui-spinner input {
		background-color:#f6f6f6;
	}
	section > div:last-child .ui-spinner .ui-spinner-button {
		background-color:#ffffff;
	}

	section > .interpret {
		font-size:1rem;
	}


	#schritt1 article p{
		width: 60%;
	}

	header{
		padding: 0;
	}

	#tablebox{
		overflow-x: scroll;
		width: 98%;
		margin: 5px;
	}

	#results{
		text-align: left;
	}

}


/* ==========================================================================
   Helper classes
   ========================================================================== */

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
	body {
		background-image:none !important;
		-webkit-print-color-adjust: economy !important;
	}
	.teilschritt {
		opacity:1 !important;
	}
	/*.teilschritt > article {
	}*/
	.teilschritt > header {
		margin-top:80px !important;
		color:black !important;
	}

	.bhelp > div,
	.bhelptable > div,
	.bhelp-th,
	.teilschrittnummer,
	.infobutton,
	.ui-spinner-button,
	.chartControlBtns,
	#refreshRankingBtn,
	#regionAndLanguageSelector {
		display:none;
	}

	main > h1, main > h4 {
		color:black !important;
	}

	section > .bgrot {
		background:none !important;
		color:#dd0000 !important;
		font-weight:bold !important;
	}
	section > .bggruen {
		background:none !important;
		color:#00BB00 !important;
		font-weight:bold !important;
	}
	section > .bggelb {
		background:none !important;
		color:#edc500 !important;
		font-weight:bold !important;
	}
	section > .bgblau {
		background:none !important;
		color:#8ABBD1 !important;
		font-weight:bold !important;
	}

	section > :last-child {
		background:none !important;
	}

	.done header {
		display:block;
	}

	.ui-spinner {
		background:none;
	}
	.ui-spinner input, section > .uni .ui-spinner input {
		background:none;
		border:1px solid #bbb;
	}

	main {
		margin-bottom:0;
	}

    *,
    *:before,
    *:after {
        box-shadow: none !important;
        text-shadow: none !important;
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    p,
    h2,
    h3 {
        orphans: 1;
        widows: 1;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }


	.bgroup li.selected table tr:last-child td,
	.bsolo li.selected table tr:last-child td{
		font-weight: 800;
	}

	.teilschritt > article, #schritt-info, #debug-info-global, .header-box{
		border: none !important;
	}
	.header-box{
		font-weight: 800 !important;
	}
	.tableizer-table th{
		background-color: #fff !important;
		color: #000 !important;
		border: 1px solid #CCC !important;
		border-bottom-width: 3px !important;
		padding-left: 0 !important;
		text-align: center !important;
	}
	.tablehead{
		box-shadow:none !important;;
		background: none !important;;
		border: 1px solid #ccc !important;
	}

	#schritt-info, #debug-info-global {
		border-top: 1px solid #eee !important;
	}

	.content{
		page-break-before: avoid;
		page-break-inside: avoid;
	}

}

/****************************** FLO **************************/

.expand{
	text-align: center;
}

.expand > img{
	height: 24px;
	transform: rotate(180deg);
	cursor: pointer;
}

.expand.collaps > img{
	transform: rotate(0deg);
}

tr.opentable, .tablehead{
	box-shadow: -1px 2px 4px -2px rgba(0,0,0,0.65);
	background: #f3f3f3;
}

.unit{
	font-weight: normal;
	font-family: Arial, serif;
	letter-spacing: 2px;
}

.content{
	box-shadow: inset 0 -2px 7px -4px rgba(0,0,0,0.75);
	font-size: 13px;
}

.content > td{
	padding: 20px;
}

.header-box{
	/*border: 3px solid rgb(253, 196, 0);*/
	/*border: 3px solid rgb(1, 88, 1); */
	border: 3px solid #345;
	background-color: white;
}

th[role=columnheader]:not(.no-sort) {
	cursor: pointer;
}

th[role=columnheader]:not(.no-sort):after {
	content: '';
	border-width: 0 4px 4px;
	border-style: solid;
	border-color: #FDC400 transparent;
	visibility: hidden;
	opacity: 0;
	-ms-user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	top: 50%;
	right: 8px;
	position: absolute;
}

th[aria-sort=ascending]:not(.no-sort):after {
	border-bottom: none;
	border-width: 4px 4px 0;
}

th[aria-sort]:not(.no-sort):after {
	visibility: visible;
	opacity: 1;
}

th[role=columnheader]:not(.no-sort):hover:after {
	visibility: visible;
	opacity: 1;
}

.bhelp-th{
	border: 1px solid #fff;
	border-radius: 50%;
	padding-left: 1px;
	width: 16px;
	height: 16px;
	line-height: 14px;
	position: absolute;
	top: 12px;
	font-size: 12px;
	z-index: 100;
	left: 5px;
	text-align: center;
}

.bnohelptable {
	display: none;
}
.bhelp-th.bnohelp{
	width: 16px;
	height: 16px;
	display: none;
}

table.tableizer-table {
	border: 1px solid #CCC;
	width: 96%;
	margin: 10px auto;
	background: #fff;
}
.tableizer-firstrow {
	height: 40px;
	max-height: 40px;
	cursor: pointer;
}
.tableizer-table .row {
	padding: 6px;
	margin: 3px;
	border: 1px solid #CCC;
	font-size: 15px;
	position: relative;
}
.tableizer-table .row.expand {
	padding: 2px;
	width: 30px;
}
.tableizer-table .row:first-child {
	text-align: center;
	padding: 3px 0px 0px 0px;
}
.tableizer-table .row:first-child > .iconAndName {
	text-align: left;
	margin-left: 30px; /* reserve space for "?" help button */
}
.tableizer-table .row:first-child > .iconAndName > img {
	height: 30px;
}
.tableizer-table th {
	/*background-color: #EB6909;*/
	/*background-color: rgb(1, 88, 1); */
	background-color: #345;
	color: #FFF;
	font-weight: bold;
	position: relative;
	min-width: 70px;
	text-align: left;
	font-size: 13px;
	padding-left: 27px;
}

/*.tableizer-table th:nth-child(1) {
	width: 135px;
}*/
.tableizer-table th:nth-child(2) {
	width: 140px;
}
.tableizer-table th:nth-child(3) {
	width: 80px;
}

.expander{
	min-width: 15px !important;
}



#co2box{
	display: inline-block;
	width: 35%;
	vertical-align: top;
	margin-top: 40px;
}

.uni.co2 > span{
	margin-left: 5% !important;
}

#schritt-info, #debug-info-global {
	/*border: 3px solid rgb(253, 196, 0);*/
	/*border: 3px solid rgb(1, 88, 1); */
	border: 3px solid #345;
	background: #ffffff;
	padding: 10px;
	margin-bottom: 10px;
	page-break-inside: avoid;
}

#tablebox{
	width: 100%;
	margin: 10px auto;
	margin-top: 0;
	display: block;
	background: none !important;
}

.content{
	text-align: left !important;
}

h1{
	color:white;
	margin-top:10px;
}
h2{
	color:white;
	margin-top:-10px;
	margin-bottom:15px;
	font-size: 25px;
	font-weight: 600;
}
#head-text{
	color:white;
	font-size: 15px;
}

#Text_Subheadline {
	color: white;
	font-size: 20px;
}

.blockimport{
	display: block !important;
}

.block{
	display:block;
}

#section-top, section.info{
	padding:0 30px !important;
	text-align: center;
}

#section-top > p{
	display: inline-block;
	width: 70%;
	vertical-align: middle;
}

#section-top > div{
	display: inline-block;
	margin-left: 10%;
}

#sw-region,#sw-altheiz{
	width:45%;
	margin:0 auto;
}

#sw-altheiz > div.drophead > table {
	border-color:#ddd;
}

.break{
	page-break-before: always
}

.p030{
	padding:0 30px;
}

.bhelper{
	text-align: center;
}

#debug-info-box {
	display: block !important;
}

@media only screen and (min-width: 1180px) {
	#debug-info-box {
		position: fixed;
		top: 10px;
		left: 10px;
		height: 96vh;
		overflow-y: scroll;
	}
}

.debug-info-box-hidden{
	display: none;
}

#schritt-info ul{
	margin-left: 25px;
}

.disabled-row{
	background: #efefef;
	opacity: 0.5;
	-webkit-print-color-adjust: exact;
	color-adjust: exact;
}

.rowclick{
	cursor: pointer;
}
/*
#section-top-2 > p{
	width: 620px;
}*/

#section-top-3 > p{
	width: 600px;
	margin-left: auto;
	margin-right: auto;
}

.dropdown-icon{
	height: 10px !important;
}

/*#section-top-4 > p{
	margin-bottom: 0;
}*/

#msg{
	position: absolute;
	top: 35px;
	right: 21px;
}


/* The actual popup */
.popuptext {
	visibility: hidden;
	width: 210px;
	/*background-color: #EB6909;*/
	/*background-color: rgb(1, 88, 1); */
	background-color: #345;
	color: #fff;
	text-align: center;
	border-radius: 6px;
	padding: 8px 0;
	position: absolute;
	z-index: 1;
	bottom: 125%;
	left: 50%;
	margin-left: -105px;
	margin-bottom: -23px;
}

/* Popup arrow */
.popuptext::after {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -5px;
	border-width: 5px;
	border-style: solid;
	/*border-color: #eb6909 transparent transparent transparent;*/
	/* border-color: rgb(1, 88, 1) transparent transparent transparent; */
	border-color: #345 transparent transparent transparent;
}

/* Toggle this class - hide and show the popup */
.popuptext.show {
	visibility: visible;
	-webkit-animation: fadeIn 1s;
	animation: fadeIn 1s;
}

/* Add animation (fade in the popup) */
@-webkit-keyframes fadeIn {
	from {opacity: 0;}
	to {opacity: 1;}
}

@keyframes fadeIn {
	from {opacity: 0;}
	to {opacity:1 ;}
}

h2.blackh2{
	font-size: 1.8rem;
	color: #222;
	margin: 0;
	font-weight: lighter;
}

section.info{
	text-align: left;
	padding: 10px 60px !important;
}

/*
#co2InputSection .ui-spinner {
	margin-left: 0;
	width: 100px;
}

#co2InputSection div {
	display: inline-block;
}

#co2InputSection div.inputcont {
	text-align: right;
	margin-right: 20px;
}*/

/*
#co2InputSectionContainer {
	width: 60%;
	float: right;
}

#co2InputSectionContainer .uni .ui-spinner input {
	background-color: rgb(255, 204, 0);
}*/

#co2InputSection,
#chartHeadlineSection,
#solarResultSection {
	width: 96%;
	margin-left: 17px;
	border-top: none;
}

#co2InputSection, #co2InputSection > div.inputcont {
	background-color: rgb(255, 204, 0);
}

#solarResultSection p {
	padding-left: 13px;
	background-color: white;
}

#solarResultSection > div.bhelp > div {
	margin-top: 12px;
}

.msg-info-box > div{
    border: 2px solid #0e9fe6;
    border-radius: 3px;
    position: relative;
    width: 100%;
}

.msg-info-box i{
    font-size: 24px;
    position: absolute;
    left: 15px;
    top: 50%;
    background-image: url('../img/info-icon.svg');
    background-repeat: no-repeat;
    background-position: center;
    height: 20px;
    width: 20px;
    background-size: cover;
    margin-top: -10px;
}
.msg-info-box-text{
    margin-left: 50px;
	padding: 5px;
    padding-right: 10px;
	text-align: left;
}

/* ---- result area styles ---- */
.gradientBarsAndFormAndFurtherInfoDiv {
	float: left;
	width: 65%;
	padding: 3px;
	background-color: #e3effd;
}

.resultSystemInfo, .storageSpaceInfo {
	padding: 3px;
	margin: 13px 0 3px 0;
}

.resultFormToggle {
	cursor: pointer;
	cursor: hand;
	margin: 0px 0px 3px 0px;
	padding: 3px 9px 6px 3px;
	font-size: 120%;
	font-weight: bold;
}

.tableForm {
	display: none; /* will be shown via toggle() */
	margin: 3px 0 3px 0;
}

.furtherInfo, .furtherInfoDocuments {
	padding: 3px;
	/*background-color: #f3f3f3;*/
	background-color: #ffffff;
	margin: 13px 0 0 0;
}

.resultTableContentRowContainer {
	display: flex;
}

.factboxDiv {
	float: right;
	width: 35%;
	margin-left: 3px;
	padding: 3px;
	/*background-color: #f3f3f3;*/
	background-color: #fff;
	border: 3px solid #eee;
}

.gradientBarsContainer {
	text-align: center;
}

/* gradient bar blöcke abwechselnd links und rechts floaten lassen */
.gradientBarWithTexts:nth-child(odd) {
	float: left;
}

.gradientBarWithTexts:nth-child(even) {
	float: right;
}

/* bei zu wenig platz aber dann untereinander darstellen */
@media only screen and (max-width: 826px) {
	.gradientBarWithTexts:nth-child(even) {
		float: left;
	}
}

/* ---- table form styles ---- */
.tableForm {
	border: 0;
}

.tableForm table {
	table-layout: fixed;
	width: 100%;
}

.tableForm table td {
	text-align: center;
}

.tableForm tr:nth-child(2) td {
	padding-bottom: 5px;
}

.tableForm .uni .ui-spinner {
	margin-left: 0;
}

/*.tableForm td {
	text-align: center;
}*/

/* ----- gradient bar styles ---- */
.gradientBarWithTexts {
	text-align: center;
	float: left;
}

.gradientBarWithTexts .label {
	font-weight: bold;
	font-size: 100%;
	color: black;
}

.gradientBarWithTexts .labelSuffix {
	font-weight: normal;
	font-size: 75%;
}

.gradientBarAndMarker {
	position: relative; /* needed for absolute positioning of children */
	height: 25px; /* bar height + some space for the marker */
}

.gradientBar {
	height: 20px;
	background-image: linear-gradient(90deg, green, yellow, red);
}

.marker {
	position: absolute;
	width: 9px;
	height: 5px;
	top: 20px;
	background-image: url(../img/marker.png);
}

.gradientBarWithTexts .value {
	font-weight: normal;
	font-size: 95%;
	color: black;
}

/* "inline" text editing styles */
.editableText {
	position: relative;
	display: inline-block;
}
.editableText:hover .editTextBtn {
	display: block;
}
.editTextBtn {
	position: absolute;
	left: 0;
	top: 0;
	display: none;
	height: 28px;
	line-height: 18px;
	vertical-align: middle;
	font-size: 18px;
	border: 2px solid black;
	background-color: white;
	padding: 0px 5px 5px 5px;
}