@charset "utf-8";
/* CSS Document */

html, body, #all {height: 100%;}
body > #all {height: auto; min-height: 100%;}
#main {padding-bottom: 40px;}  /* Muss genau so hoch sein wie der Footer */


/* CLEAR FIX */
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {display: inline-block;}

/* Bereich nicht fuer IE-mac Anfang \*/
* html .clearfix { height: 1%;}
.clearfix {display: block;}
/* Bereich nicht fuer IE-mac Ende */

html, input, select, textarea {
    color: #5a5a5a;
}
body {
	background-color:#FFF;
	font-family: 'Open Sans', Arial, Helvetica, sans-serif;
	font-size:12px;
	color:#5a5a5a;
	line-height:17px;
}

#all {
	width:90%;
	background-color:#FFF;
	padding:20px;	
	display:block;
	overflow:hidden;
	vertical-align:middle;
	margin: 0 auto;
}

* {
    margin: 0;
    padding: 0;
    border: 0 none;
    box-sizing: border-box;

}
a, a:active, a:visited {
    color: #2382c8;
    text-decoration: none;
}
 a:hover {
    color: #2382c8;
}
a[href^="tel"]:link, a[href^="tel"]:visited, a[href^="tel"]:hover {
    color: #444444;
}
h1{
	font-size:18px;
	font-weight:bold;
	color:#ff6600;
	margin:0px;
	padding:0px 0px 17px 0px;
	}

h2{
	font-size:16px;
	font-weight:bold;
	color:#ff6600;
	margin:0px;
	padding:0px 0px 17px 0px;
	}
p {
    font-size:1em;
    line-height:1.6em;
	margin:1.5em 0;
}
.small {
	font-size: 0.929em;
    line-height: 1.286em;
    margin: 1.5em 0;
	color:#999999;
}
.mandatoryHint { color:#000001; }
.error { color:#ff0000; }
.invisible { display: none !important; }
div.error, label.error {
	font-size:0.929em !important; 
	line-height:1.286em !important; 
	display:inline; 
}

.msg_error, .msg_error_incomplete {
	margin:10px 0;
	color:#b11b3b;
}

.msg_error_incomplete {
	display:none;
}
.unanswered input[type='text'],
.unanswered textarea,
.unanswered select {
	border:solid red 1px;
}

.unanswered .body > div label,
.unanswered .body > div label .mandatoryHint,
.unanswered .body td.answer,
.unanswered .body td.question {
	color:red;
}

hr {
    -moz-border-bottom-colors: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    border-color: #ccc -moz-use-text-color -moz-use-text-color;
    border-image: none;
    border-style: solid none none;
    border-width: 1px 0 0;
    display: block;
    height: 1px;
    margin: 1em 0;
    padding: 0;
}
img {
    height: auto;
    max-width: 100%;
    padding: 0;
    vertical-align: middle;
}

.pagination {
	color: #cccccc;
    font-size: 0.857em;
    margin: 5px 0 0;
    text-align: right;
}
table { width:100%; border-collapse: collapse; }
.body td { width:auto !important; padding: 5px 10px; }

div.questions {
	margin:10px 0;
}
div.question, div.html {
	padding:5px 0;
}
div.question_between {
	height:5px;
}
div.actions {
	margin:10px 0;
	padding:5px 0;
}
div.bg_white {
	background-color:#fff;
	padding-bottom: 20px;
	padding-left:5px;
	padding-right:5px;
	height:100%;
	width: 600px;
}
fieldset {
    border: 0 none;
    margin: 0;
    padding: 0;
}
textarea {
    resize: vertical;
}

#content_box {
	width:90%;	
	display:block;
	overflow:hidden;
	margin: 0 auto;
}
#logo_box {
	display: block;
    overflow: hidden;	
}
#logo {
	display:block;
    overflow:hidden;
	width:100%;
	margin: 0 0 1em 0;
	text-align: right;
}
#logo img { width:40%;
}
#logo a {
	display:block;
	overflow:hidden;
}
.line01, .line02, .line03 {
	height:8px;
	display:block; 
	overflow:hidden;
	float:left;
}
.line01 {	
	width:21.875%; 
	background:#b11a3b; 
	
}
.line02 {
	width:0.3125%;
	background:#e4f1f9; 
}
.line03 {
	width:77.8125%; 
	background:#e23e21;
}

#header {
border-bottom: 1px solid #cccccc;
	
}

#content {
	padding-bottom: 1em;
	display:block;
	overflow:hidden;
}

#footer {
	background-color:#FFF;
	position: relative;
	margin-top: -40px; /* Negativer Wert der Footer-HĂśhe */
	height: 40px;
	clear:both;
	border-top: 1px solid #cccccc;
}

#footer-content {
	width:90%;
	padding:10px 20px 10px 20px;	
	display:block;
	overflow:hidden;
	vertical-align:middle;
	margin: 0 auto;
}


/* Button */
.button {
    background-color: #ff6703;
    box-sizing: border-box;
    color: #ffffff !important;
    display: inline-block;
    margin: 0;
    min-height: 30px;
    overflow: visible;
    padding: 5px 12px 6px 12px;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
	font-weight:bold;
	width:auto;
	border:none;
	-webkit-appearance: none;
}
.button:hover, .button:focus {
    background: #ee482b;
    color: #ffffff;
    outline: medium none;
    text-decoration: none;
}

.answer {
	font-size: 0.875em;
    line-height: 1.125em;
    text-align: center;
}

label[for^="a_"] {
	font-size: 0.938em;
    line-height: 1.25em;
    text-align: center;
	display:block; 
	margin:auto;
}
.gauge table {
	width: auto;
}
.gauge td {
	text-align: center;
}

.html .head { display:none; }
.html .body { width:100%; }
.question {
  	padding:2px 6px 3px 0px;
}
td.question {
	font-size: 0.875em;
    line-height: 1.125em;
}
div.wrapper, div.row, div.set, div.enum, div.varchar, div.to {
	background:#f9f9f9;
	margin-bottom:5px;
	padding: 5px 10px;
	display:block;
	overflow:hidden;
}

div.foot {
	clear: both;
    color: #afafaf;
    display: block;
    font-size: 0.9em;
    line-height: 1.2em;
    overflow: hidden;
    padding-top: 0.3em;
}
.abstand {
    border-top: 1px solid #e4e4e4;
    height: 1px;
    margin: 10px 0 10px 0;
}
.pflicht { 
 text-align:right;
 color:#683c11;
}
.body tr:nth-child(even) {
 background-color: #e5eff7;
}
.head label {
 font-size:0.929em; 
 line-height:1.2em;
 font-weight:bold;
 display: block;
 margin: 0 0 5px 0;
 color:#000001;	
}
.head div {
 font-size:0.929em; 
 line-height:1.4em;
 color:#5a5a5a;
 margin: 0 0 5px 0;
}
div.head, div.body, input, select, textarea, 
.row label, .row input,
.set label, .set input, .varchar label, .varchar input, .enum label, .enum input  { 
	width: 100%;
	display:block;
}
.row label, .row input, 
.set label, .set input, .varchar label, .varchar input, .enum label, .enum input, .enum select,
label.sub, div.sub label { 
	display:block;
}
input, select, textarea {
	border:#e4e4e4 solid 1px;
	padding: 2px 3px;
	font-family: 'Open Sans', Arial, Helvetica, sans-serif;
	font-size:12px;
}

.radiobutton_group .head,
.radiobutton_group .body,
.radiobutton_group input,
.radiobutton_group .head label,
.radiobutton_matrix .head,
.radiobutton_matrix .body, 
.checkbox_group .head,
.checkbox_group .body,
.checkbox_group input,
.checkbox_group .head label,
.checkbox_matrix .head,
.checkbox_matrix .body, 
.polarity_matrix .head,
.polarity_matrix .body, 
.gauge .head,
.gauge .body {
 width:100%;
 display:block;
 margin-top:5px;
}

.table-scrollable {
  width: 100%;
  overflow-y: auto;
  margin: 0 0 1em;
}

.table-scrollable::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 14px;
  height: 14px;
}

.table-scrollable::-webkit-scrollbar-thumb {
  border-radius: 8px;
  border: 3px solid #fff;
  background-color: rgba(0, 0, 0, .3);
}
.radiobutton_group input, .checkbox_group input {
 margin-top: 2px;
}
.radiobutton_group .body div, .checkbox_group .body div {
 display:block;
 width: 100%;
 overflow: hidden;
 clear:both;
 margin:5px 0;
}
.checkbox_matrix input[type=checkbox],
.checkbox_matrix input[type=radio],
.polarity_matrix input[type=checkbox],
.polarity_matrix input[type=radio],
.radiobutton_matrix input[type=checkbox],
.radiobutton_matrix input[type=radio] {
 display: block;
 float: none;
 margin: 0 auto;
 width: auto;
}
.polarity_matrix .body table td.question:last-child {
 text-align: left;
}

.radiobutton_group input[type=checkbox],
.radiobutton_group input[type=radio],
.checkbox_group input[type=checkbox],
.checkbox_group input[type=radio] {
 display: block;
 float: left;
 width: 10%;
}
.radiobutton_group label,
.checkbox_group label {
 float:left; 
 display:block;
 text-align: left;
 font-size: 0.938em;
 line-height: 1em;
 padding: 0 0 3px 0;
 width: 90%;
}

div.sub label.sub {
 display: block;
 width: 100%;
}

div.sub label.sub input {
    display: block;
    width: auto;
	margin: 4px 10px 0 0;
}
/***************************/

div.date input {
	cursor:pointer;
}

#datepicker {
	position:absolute;
	width:175px;
	padding:5px;
	background-color:#fff;
	border:solid 1px #000;
	z-index:9999;
	font-family:arial;
	font-size:12px;
}

#datepicker p {
	margin:0px;
	padding:0px;
}

#datepicker a {
	color:#999;
	text-decoration:none;
}
#datepicker a:hover {
	color:#000;
}

#datepicker a.active {
	color:#F56E01 !important;
	font-weight:bold;
}

#datepicker a.today {
	color:#F56E01;
}

#datepicker a.weekend {
	color:#9adaf3;
}

#datepicker ul {
	margin:0px;
	padding:0px;
	list-style-type:none;
}

#datepicker ul li {
	float:left;
	width:21px;
	margin:2px;
	padding:0px;
	list-style-type:none;
	text-align:right;
}

#datepicker ul li a{
	padding:2px;
}

#datepicker p {
	text-align:center;
}

#datepicker_year_month {
	font-weight:bold;
}

#datepicker_weekdays {
	margin-top:3px;
}

@media only screen and (min-width: 480px) {
#logo img { width:40%; }

div.head, div.body, .row label, .row input, .enum label, .enum select, .set input, .varchar input, .enum input, div.set label, div.sub { 
	float:left;
}

div.sub label { 
	display:block;
}

div.head, .row label,
.set label, .varchar label, .enum label { width:40%; word-wrap: break-word; margin-right:1% }

div.body, .row input,
.set input, .varchar input, .enum input, .enum select { width:59%; }

div.foot { margin-left: 41.5%; }
	
}

@media only screen and (min-width: 640px) {
#logo {
    width:auto !important;
	height:auto !important;	
}
#logo img { width:30%; }

div.head, .row label,
.set label, .varchar label, .enum label { float: left; width:30%; word-wrap: break-word; margin-right:1%; }


div.body, .row input,
.set input, .varchar input, .enum input, .enum select { width:69%; }

div.foot { margin-left: 31.5%; }

}
@media only screen and (min-width: 768px) {
#logo img { width:30%; }
.line01, .line02, .line03 {
	height:15px !important;
}
.radiobutton_group input[type=checkbox],
.radiobutton_group input[type=radio],
.checkbox_group input[type=checkbox],
.checkbox_group input[type=radio] {
 width: 5%;
}
.radiobutton_group label, .checkbox_group label { 
 width: 95%;
}
}

@media only screen and (min-width: 1024px) {
#all, #footer-content {
    width: 960px;	
}

}