:root {
		/* Hintergrundfarben */
		--hintergrund-main: white;
		
			/* Buttons */
			--button-hintergrund-normal: rgb(220,220,220);
			--button-hintergrund-normal-hover: rgb(240,240,240);
			
			--button-hintergrund-weiter: #04444d;
			--button-hintergrund-weiter-hover: rgb(170,0,0);
		
			/* jquery */
			--jquery-hintergrund-normal: yellow;
			--jquery-schriftfarbe-normal: blue;
		
		/* Schriftfarben */
		--schriftfarbe-main: black;
		--schriftfarbe-titel: #04444d;
		--schriftfarbe-subtitel: grey;
		
			/* Buttons */
			--button-schriftfarbe-normal: rgb(80,80,80);
			--button-schriftfarbe-weiter: white;
			--button-schriftfarbe-disabled: rgb(200,200,200);
	
		/* Schriftgrößen */
		--schriftgroesse-normal: 14pt;
		--schriftgroesse-gross: 22pt;
		--schriftgroesse-klein: 10pt;
			
}
.ui-accordion-header-active {
	
	background-color: var(--button-hintergrund-normal);
	border: 0px;
	
}

* {
		font-family: "Arial", sans-serif;
		font-size: var(--schriftgroesse-normal);
		box-sizing: border-box;
		color: var(--schriftfarbe-main);
   } 

h1 {
		font-size: var(--schriftgroesse-gross);
		padding-bottom: 40px;
		color: var(--schriftfarbe-titel);
		 font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-weight: 900;
   }
   
h2, h3 {
		background-color: var(--button-hintergrund-weiter);
		font-size: var(--schriftgroesse-normal);
		border: 1px darkgrey solid;
		border-width: 0px 0px 1px 0px;
		width: 100%;
		color: var(--schriftfarbe-subtitel);
   }

h3 {
color: var(--schriftfarbe-titel);

}	
h4 { 
font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-weight: 900;
text-align: right;

}   
   
button {
		color: var(--button-schriftfarbe-normal);
		padding: 5px;
		border: 1px darkgrey solid;
		background-color: var(button-hintergrund-normal);
		cursor: pointer;
}

button:hover {
		background-color: var(button-hintergrund-normal-hover);
}

input, select { 

		height: 45px;
		color: var(--schriftfarbe-main);
		border: 1px grey solid;
		border-radius: 0px;		
		padding-left: 14px;
}

#rangeSlider, #kontakteSlider, #vonSlider, #bisSlider, #laufzeitSlider {
		height: 12px;
}

.ui-selectmenu-button {
		background-color: white !important; 
		color: var(--schriftfarbe-main);
		border: 1px grey solid;
		border-radius: 0px;
}

.ui-selectmenu-button:hover {
		background-color: white !important; 
		border: 1px grey solid;
		border-radius: 0px;
}

.ui-selectmenu-menu .ui-menu {
		background-color: white !important; 
}

.ui-selectmenu-menu .ui-menu .ui-state-active,
.ui-selectmenu-menu .ui-menu .ui-state-focus {
		background-color: var(--button-hintergrund-normal) !important;
		color: var(--schriftfarbe-main) !important; 
		border: 0px;
		border-radius: 0px;		
}

table {
		width: 100%;
		border-collapse: collapse;
    }

input[type="range"] {
		width: 90%;
		accent-color: grey;
    }

input[type="range"]::-webkit-slider-thumb {
		background: grey;
    }
input[type="range"]::-moz-range-thumb {
		background: grey;
    }
input[type="range"]::-ms-thumb {
		background: grey;
    }

input[type="text"], input[readonly] {
		width: 100%;
		padding: 4px;
    }

.form-row {
		display: flex;
		width: 100%;
		gap: 10px;
		box-sizing: border-box;
		margin-bottom: 10px;
		
}

.form-label {
		flex: 0 0 20%;
		font-weight: bold;
		padding-top: 6px;
}

.form-control {
		flex: 0 0 78%;
}

#map 	{
		width: 100%;
		height: 50vh;
		box-sizing: border-box;
		border: 0px solid #ccc;
}
  
#resultsContainer {
		height: 50vh;
		overflow-y: auto;
		border: 0px solid #ccc;
		padding: 5px;
		box-sizing: border-box;
		background: white;
}

input[type="checkbox"], input[type="radio"] {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		width: 20px;
		height: 20px;
		border: 1px solid rgb(80,80,80);
		border-radius: 0px;
		cursor: pointer;
		position: relative;
		vertical-align: middle;
		margin-right: 8px;
		background-color: white;
		transition: background-color 0.2s ease;
}

input[type="checkbox"]:checked, input[type="radio"]:checked {
		background-color: rgb(80,80,80);
}

input[type="checkbox"]:checked::after, input[type="radio"]:checked::after {
		content: "";
		position: absolute;
		left: 4px;
		top: 0px;
		width: 6px;
		height: 12px;
		border: solid rgb(230,230,230);
		border-width: 0px 3px 3px 0px;
		transform: rotate(35deg);
}

.navigation {
	
		display: table-cell;
		width: 20%;
		line-height: 20px;
}

.content {
	
		border: 1px darkgrey solid;
		border-width: 0px 0px 0px 1px; 
		display: table-cell;
		width: 80%;
		padding-left: 30px;
		height: 100%;
		overflow-y: auto;
		
}

.frame {
		
		width: 100%;
		overflow: hidden;
		max-height: 90vh;
		overflow-y: auto;
}


#branding {
	
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 9999;
}

.button-menu {
		color: var(--button-schriftfarbe-normal);
		width: 90%;
		padding: 10px 10px 10px 10px;
		text-align: left;
		background-color: white;
		border: 0px;
		margin-bottom: 5px;	
		margin-left:10%;
}

.button-menu:hover {
		background-color: rgb(235,235,235);
}

.button-weiter {	
		margin-top: 30px;
		color: var(--button-schriftfarbe-weiter);
		border: 0px;
		background-color: var(--button-hintergrund-weiter);
		padding: 5px 10px 5px 10px;
		text-align: left;
		cursor: pointer;
}

.button-weiter:hover {
		background-color: var(--button-hintergrund-weiter-hover);
}

.button-back {	
		margin-top: 30px;
		color: var(--button-schriftfarbe-normal);
		border: 0px;
		background-color: var(--button-hintergrund-normal);
		padding: 5px 10px 5px 10px;
		text-align: left;
		cursor: pointer;
}

.button-back:hover {
		background-color: var(--button-hintergrund-normal-hover);
}


.ui-datepicker {
		background: #fff;
        border: 1px solid #000;
}

.ui-datepicker td a {
		color: var(--schriftfarbe-main);
}

.ui-datepicker .ui-state-highlight {
		background: #eee;
}

.feiertag, .sonntag {
		background-color: #fff0f0 !important;
        color: darkred !important;
        font-weight: bold;
}
		
#progress-container {
		width: 100%;
		background-color: #eee;
		margin-top: 10px;
		overflow: hidden;
		display: none;
}

#progress-bar {
		height: 20px;
		width: 0%;
		background-color: darkgrey;
}
	
.sub-checkboxes {
		margin-left: 20px;
		display: none;
}	

.channel-item {
		position: relative;
		margin-bottom: 10px;
}

.portfolio-info {
		opacity: 0;
		max-height: 0px;
		overflow: hidden;
		transition: opacity 0.3s ease, max-height 0.3s ease;
		margin-left: 40px;
		font-size: 11pt;
		pointer-events: none;
}

.channel-item:hover .portfolio-info {
		opacity: 1;
		max-height: 500px;
		pointer-events: auto;
}	

.fenster  {
		position: absolute;
		top: 20px;
		left: 100px;
		width: calc(100% - 200px);
		height: calc(100% - 60px);
		border: 1px darkgrey solid;
		
}

input:invalid {
		border: 1px solid red;
}

button.highlighted,
button:disabled.highlighted {
    background-color: var(--button-hintergrund-weiter);
    color: var(--button-schriftfarbe-weiter);
    border: 0px solid #ffa500;
    opacity: 1;
    cursor: default;
}
button:disabled {
	
	color: var(--button-schriftfarbe-disabled);
}
button.highlighted {
    cursor: pointer;
}
button:disabled.highlighted {
    cursor: pointer;
}
button.inactive {
    background-color: #ffd700;
    color: var(--schriftfarbe-main);
    border: 2px solid #ffa500;
    pointer-events: none;
    opacity: 1;
}

.button-sondermenu {
	
	background-color: grey;
	color: white;
	display: block;
	width: 100%;
	text-align: left;
	border: 0px;
	padding: 10px;
	margin-top: 5px;
	
}

.button-sondermenu:hover {
	
	background-color: rgb(170,170,170);
	color: white;
	
}
