.fieldset, .fieldset * {
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.fieldset .checkradioholder {
	padding-left:1.6em;
	min-height:1.33em;
	line-height:1em;
	position:relative;
	margin:0.125em 0;
	display:block;
}

.table.fieldset.list>.tr>.td {
	border-top:1px solid rgba(0,0,0,0.1);
	padding:0.125em 0;
}
.table.fieldset.list>.tr:first-child>.td {
	border-top:0px solid rgba(0,0,0,0.0);
}
.fieldset  .checkradioholder>input,
.fieldset  .checkradioholder>label>input {
	position:absolute;
	left:0;
	top:0;
	overflow:visible;
}
.fieldset  .checkradioholder>label>input[type="radio"] {
	top:0.1em;
}

.fieldsetholder label {

	line-height:1.3em;
	padding:0;
	margin:0;
	display:inline-block;
}
.fieldset label >strong {
	font-weight:900;
}
.fieldset dfn {
	font-weight:200;
}
.checkradioholder dfn {
	display:block;
	padding-top:0.25em;
}

.fieldsetholder label.label {
	font-size:0.75em;
	line-height:1em;
	padding:0.25em;
	margin:0;
	display:block;
}

.fieldset .checkradioholder label {
	margin-right:0.33em;
}

.selectholder>select,
.selectholder>select:focus {
	padding:0 0.66em;
	padding-right:1.125em;
	margin:0;
	outline:none;
	border-collapse:collapse;
	border:none;
	height:2em;
	border:0;
	-webkit-appearance:none;
	-moz-appearance:none;
	text-indent: 0.01px;
	text-overflow: '';
	position:relative;

	background:rgba(255,255,255,1);
	-ms-border-radius: 0.1em;
	-moz-border-radius: 0.1em;
	-webkit-border-radius: 0.1em;
	-o-border-radius: 0.1em;
	border-radius: 0.1em;
}
.selectholder>select::-ms-expand {
	display: none;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	filter: alpha(opacity=0);
	-ms-opacity:0;
	opacity:0;
}

.lt-ie10 .selectholder>select {
	background-image: none;
}

.bigselection .selectholder>select {
	height:2.5em;
	line-height:2.5em;
}
.bigselection .selectholder:after {
	line-height: 2.33em;
}

form .anredewidth {
	width:3.25em;
}
form .miniselection.anredewidth {
	width:3.25em;
}

form .landwidth {
	width:2.9em;
}
form .miniselection.landwidth {
	width:2.9em;
	background:rgba(0,0,0,0.15);
	padding-right:0 !important;
}

.miniselection .selectholder>select,
.selectholder.miniselect>select {
	font-size:0.85em !important;
	height:2.125em;
	padding:0  1em 0 0.5em;

}

.miniselection.landwidth .selectholder>select,
.selectholder .landwidth>select {
	font-size:0.85em !important;
	height:2.125em;
	padding:0  20px 0 0.5em;
	z-index:2;

}


.miniselection .selectholder:after,
.selectholder.miniselect:after {
	font-size:1em;
	width: 0.85em;
}
.selectholder.anrede {
	max-width:3.2em;
}

.selectholder {
	position:relative;
	width:100%;
	top:0;
	display:block;
}
.selectholder.shortselection {

}
.selectholder.shortselection select {
	-moz-opacity:0.0 !important;
	-webkit-opacity:0.0 !important;
	-ms-opacity:0.0 !important;
	-moz-opacity:0.0 !important;
	opacity:0.0 !important; 
}


.selectholder.shortselection .selectinfo {
	position:absolute;
	left:0;
	top:50%;
	font-size:0.9em;
	padding:0 1em 0 0;
	height:2em;
	line-height:2.125em;
	width:100%;
	color:#000;
	z-index:0;
	overflow:hidden;
	text-align:center;
	-webkit-transform: translate(0,-50%);
	-moz-transform: translate(0,-50%);
	-o-transform: translate(0,-50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0,-50%);
}
.selectholder.multiselection {
	height:auto;
	margin-bottom:0.66em;
}
.selectholder.hide {
	display:none;
}
body input, body textarea, body button, body select,
input, textarea, button, select, select option {
	font-family: 'Oxygen', Arial, Helvetica, sans serif !important;
	font-size:1em;
	font-weight:400;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font: 400 1em 'Oxygen', Arial, Helvetica, sans serif !important;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
::-webkit-input-placeholder { font-size:0.95em; color:rgb(220,220,220); }
::-moz-placeholder { font-size:0.95em;  color:rgb(220,220,220); }
:-ms-input-placeholder { font-size:0.95em;  color:rgb(220,220,220); }
input:-moz-placeholder { font-size:0.95em;  color:rgb(220,220,220); }


.isrequired ::-webkit-input-placeholder:after { content:'*'; }
.isrequired ::-moz-placeholder:after { content:'*';  }
.isrequired :-ms-input-placeholder:after { content:'*';  }
.isrequired input:-moz-placeholder:after { content:'*';  }


input:focus, input:active,
textarea:focus, textarea:active,
button:focus, button:active,
select:focus, select:active {
	outline:none;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}


.error_msg {
	font-weight:900  !important;;
	color:rgb(205,0,0) !important;
	padding: 0.25em 0;
	width:100%;
	display:none;
}
.error_msg.akt {
	display:block;
}
.errorbg,
.box.error,
.box.error * {
	color:#fff !important;
	background:rgb(205,0,0);
}
.fieldset.errorbg {
	padding:0.33em;
}
.box.error,
.box.error * {
	margin-bottom:0;
}




.fieldset,
.table.fieldset {
	margin-bottom:0.33em;
}
.table.fieldset>.tr>.td {
	margin-right:0.1em;
	vertical-align:middle;
	text-align:left;
}
.table.fieldset>.tr>.td:last-child {
	margin-right:0;
}

.table.fieldset>.tr>.td.dateholder {
	background-color:#fff;
}
.table.fieldset>.tr>.td.dateholder > input[type="date"] {
	background-color:rgba(255,255,255,0) !important;
	position:relative;
	z-index:2;
	display:block;
}

.datepicker.selection .selectholder,
.datepicker .dateholder {
	display:inline-block !important;
}
.table.fieldset > .tr > .td.dateholder {
	padding-right:0;
}
.datepicker.selection .td.selectholder,
.datepicker .td.dateholder {
	display:table-cell !important;
}
.datepicker.selection .dateholder,
.datepicker .selectholder,
.datepicker .td.selectholder {
	display:none !important;
}
.selectholder.landvorwahl>select,
.td.selectholder.landvorwahl>select,
.datepicker .td.selectholder select.date {
	padding-left:0.5em !important;
	letter-spacing:-0.05em;

}
.selectholder.landvorwahl>select,
.td.selectholder.landvorwahl>select {
	letter-spacing:-0.066em;

}

.selection.landvorwahl {
	max-width:4.5em !important;
	width:4.5em;
	min-width:4.5em !important;
}
.selection.landvorwahl select>option {
	font-size:0.85em;
	letter-spacing:-0.05em;
}

.datepicker .td.selectholder.day {
	min-width:3.66em !important;
}
.datepicker .td.selectholder.month {
	min-width:4.75em !important;
}
.datepicker .td.selectholder.year {
	min-width:4.25em !important;
}
select::-ms-expand {
	display: none;
}
select,
input[type="search"],
input[type="email"],
input[type="text"], input[type="password"],
input[type="number"],
input[type="date"],
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	height:2em;
	line-height:2em;
	font-size:1em;
	outline:none;
	outline-width: none;
	outline-style: none;
	outline-color: transparent;
	margin:0;
	width:100%;
	-webkit-border-radius:0;
	border-radius:0;
	outline:none;
	border-collapse:collapse;
	padding: 0 0.33em;
	max-width:100% !important;
	box-shadow: none;
	border-style: solid

}

input[type=number],
input[type="number"] {
	-webkit-appearance: none !important;
	margin: 0 !important;
	-moz-appearance:textfield !important;
	appearance: none;
	margin: 0; 
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
	-moz-appearance:textfield !important;
	appearance: none;
	margin: 0; 
}

input[type="number"]:hover,
input[type="number"]:focus {
	-moz-appearance:textfield !important;
}
.selectholder>select::-ms-expand {
  display: none;
}
select:focus::-ms-value {
  background-color: transparent;
}
select {
	text-indent: 0.01px;
	text-overflow: '';
}
@-moz-document url-prefix() {
	.selectholder {
	}
	.selectholder select {
		-moz-appearance: none !important;
	}
	.selectholder select > option {
		background-color: rgb(255,255,255);
	}
}
select.kursselect > optgroup > option::before,
select.kursselect > optgroup > option:before {
	content:'\2022 ';
}
input::-moz-focus-inner,
select::-moz-focus-inner,
textarea::-moz-focus-inner {
	border: 0;
	padding: 0;
	-moz-appearance: none;
}
textarea {
	min-height:12em;
	width:100% !important;
	line-height:1.2em;
}


input[type="search"],
input[type="email"],
input[type="text"], input[type="password"],
input[type="number"],
input[type="date"],
input[type="tel"],
textarea,
.labelinput input[type="search"],
.labelinput input[type="email"],
.labelinput input[type="text"], .labelinput input[type="password"],
.labelinput input[type="number"],
.labelinput input[type="date"],
.labelinput input[type="tel"],
.labelinput textarea {
	border:1px solid rgba(100,100,100,0.25);
	background:#fff;
	-webkit-appearance: none;
	-moz-appearance: none;
	font-size:1em;
	outline:none;
	margin:0;
	width:100%;
	border-collapse:collapse;
	width:100%;
	max-width:100% !important;
}
select::-webkit-scrollbar,
textarea::-webkit-scrollbar {
	width: 0.5em;
	height:0.5em;
}
select::-webkit-scrollbar-button,
textarea::-webkit-scrollbar-button {
  width: 0px;
  height: 0px;
}
select::-webkit-scrollbar-thumb,
textarea::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,0.25);
  border: 0px none #ffffff;
  border-radius: 50px;
}
select::-webkit-scrollbar-thumb:hover,
textarea::-webkit-scrollbar-thumb:hover {
 background: rgba(0,0,0,0.25);
}
select::-webkit-scrollbar-thumb:active,
textarea::-webkit-scrollbar-thumb:active {
  background: rgb(255, 135, 0);
}
select::-webkit-scrollbar-track,
textarea::-webkit-scrollbar-track {
  background: rgba(0,0,0,0.1);
  border: 0px none #ffffff;
  border-radius: 50px;
}
select::-webkit-scrollbar-track:hover,
textarea::-webkit-scrollbar-track:hover {
  background: rgba(0,0,0,0.1);
}
select::-webkit-scrollbar-track:active,
textarea::-webkit-scrollbar-track:active {
  background: rgba(0,0,0,0.1);
}
select::-webkit-scrollbar-corner,
textarea::-webkit-scrollbar-corner {
  background: transparent;
}
@-moz-document url-prefix(http://),url-prefix(https://) {
	scrollbar {
	   -moz-appearance: none !important;
	   background: rgb(0,255,0) !important;
	}
	thumb,scrollbarbutton {
	   -moz-appearance: none !important;
	   background-color: rgb(0,0,255) !important;
	}

	thumb:hover,scrollbarbutton:hover {
	   -moz-appearance: none !important;
	   background-color: rgb(255,0,0) !important;
	}
	scrollbarbutton {
	   display: none !important;
	}
	scrollbar[orient="vertical"] {
	  min-width: 15px !important;
	}
}




.labelinput input[type="search"],
.labelinput input[type="email"],
.labelinput input[type="text"], .labelinput input[type="password"],
.labelinput input[type="number"],
.labelinput input[type="date"],
.labelinput input[type="tel"],
.labelinput textarea {
	height:2.5em;
	line-height:2em;
	padding:0.5em 0.33em 0 0.33em;
}
.labelinput input[type="date"] {
	padding: 0.5em 0 0 0.33em;
}
.labelinput textarea,
textarea {
	line-height:1.2em;
	padding-top:1em !important;
	padding-bottom:0.5em;
	height:auto;
	min-height:10em;
}


.labelinput {
	position:relative;
	padding-top:0;
	font-size:1em;
	/* background:rgb(255,255,255) !important;   */

}

.td.labelinput.vorwahl {
	max-width:10em;
	min-width:6em;
	width:33%;
}
.table.labelrows>.tr>.td {
	padding-top:0.25em;
}
.table.labelrows>.tr:first-child>.td {
	padding-top:0;
}

.labelinput label {
	position:absolute;
	top:0.33em;
	left:1px;
	right:1px;
	width:calc(100% - 2px);
	line-height:2em;
	height:2em;
	font-size:1em;
	z-index:0;
	padding:0 0.5em;
	color:rgba(0,0,0,1);
	white-space:nowrap;
	-webkit-transition: all .2s ease-in;
	-moz-transition: all .2s ease-in;
	-o-transition: all .2s ease-in;
	-ms-transition: all .2s ease-in;
	transition: all .2s ease-in;
	background:#fff;
}

.label,
.error .labelinput label,
.labelinput.on label,
.labelinput.ok label {
	top:0.2em;
	left:0;
	line-height:1em;
	height:1em;
	font-size:0.66em;
	-webkit-transition: all .2s ease-in;
	-moz-transition: all .2s ease-in;
	-o-transition: all .2s ease-in;
	-ms-transition: all .2s ease-in;
	transition: all .2s ease-in;
	background:none;
}
.label {
	display:block;
	position:relative;
	top:0;
	height:auto;
	padding:0 0.5em 0.33em 0.5em;
}


.labelinput.ok label>span {
	display:none;
}

.error .labelinput .input {
	background:rgba(25,255,255,0) !important;
	position:relative;
	z-index:1;
}



input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
	/* display: none; <- Crashes Chrome on hover */
	-webkit-appearance: none;
	margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}


select,
input[type="search"],
input[type="email"],
input[type="text"], input[type="password"],
input[type="number"],
input[type="date"],
input[type="tel"],
textarea  {

	margin:0;
	outline:0;
	border-collapse:collapse;
	width:100%;
}

select {
	font-size:0.95em;
	padding:0;
}
.selectholder:after {
	content:'';
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M 24.068282,188.50847 H 207.93171 c 16.53227,0 24.79839,23.8818 13.13312,37.80518 L 129.1331,336.04088 c -7.26183,8.66753 -19.00437,8.66753 -26.18895,0 L 10.935182,226.31365 c -11.665287,-13.92338 -3.3991572,-37.80518 13.1331,-37.80518 z'/%3E%3C/svg%3E");
	background-repeat:no-repeat;
	opacity:0.66;
	position:absolute;
	right:0;
	top:50%;
	margin-top:-0.625em;
	z-index:0;
	height:1.25em;
	line-height:1.25em;
	width:1em;
	text-align:center;
	z-index:0;
}
.selectholder>select {
	position:relative;
	z-index:1;
	top:0;
}

input[type="checkbox"] {
	color:#fff;
	background-color:rgba(255,255,255,0);

}
input[type="radio"] i,
input[type="checkbox"] i,
input[type="radio"]:focus i,
input[type="checkbox"]:focus i,
input[type="radio"]:not(old),
input[type="radio"],
input[type="checkbox"],
input[type="radio"]:focus,
input[type="checkbox"]:focus {
	background-color:rgba(255,255,255,0);
	background-repeat:no-repeat;
	background-position: 50% 0;
	top:0;
	-webkit-appearance: none;
	-moz-appearance: none;
	-o-appearance:none;
	-ms-appearance:none;
	appearance: none;
	outline:none;

	border-collapse:collapse;
	margin:0;
	padding:0;
	margin-right:0.25em;
	border-radius: 0;
	border:0;
	width:1.25em;
	height:1.25em;
	text-align:center;
	overflow:hidden;
	vertical-align: middle;
	outline-offset: 0px;
	font-size:1em;
	top:0;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

input[type="checkbox"]:not(old),
input[type="checkbox"],
input[type="radio"]:not(old),
input[type="radio"] {
	border-radius:0;
}
input[type="checkbox"],
input[type="checkbox"] i {
	background-image:url('../images/ic/check-off.svg');
}

.error input[type="checkbox"],
.error input[type="checkbox"] i {
	background-image:url('../images/ic/check-error.svg');
}

input[type="checkbox"]:checked,
input[type="checkbox"]:checked i {
	background-image:url('../images/ic/check-on.svg');
}


input[type="radio"],
input[type="radio"] i {
	background-image:url('../images/ic/radio-off.svg');
}
.error input[type="radio"],
.error input[type="radio"] i {
	background-image:url('../images/ic/radio-error.svg');
}

input[type="radio"]:checked,
input[type="radio"]:checked i {
	background-image:url('../images/ic/radio-on.svg');
}


input[type="radio"] i,
input[type="radio"]:focus i,
input[type="radio"]:not(old),
input[type="radio"],
input[type="radio"]:focus {

	background-size: 90% auto;

}

input[type="checkbox"] i,
input[type="checkbox"]:focus i,
input[type="checkbox"]:not(old),
input[type="checkbox"],
input[type="checkbox"]:focus{
	background-size: 90% auto;
}

input[type="button"],
input[type="submit"],
button {
	cursor:pointer;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	outline:none;
	border:none;
	border-collapse: collapse;;
	padding:0 1em;
}
input[type="button"],
input[type="submit"],
button {
	color:#fff;
	
}
a,
buttonbar a {
	color:#fff;
	color:#005ea8;
}

input:selected, textarea:selected, select:selected, button:selected,
input:active, textarea:active, select:active, button:active,
input:focus, textarea:focus, select:focus, button:focus {
	outline:none;
	border-collapse:collapse;
}
.msg ::-webkit-input-placeholder,
.error ::-webkit-input-placeholder { color:rgba(205,0,0,0.66); }
.msg ::-moz-placeholder,
.error ::-moz-placeholder { color:rgba(205,0,0,0.66) } 
.msg :-ms-input-placeholder,
.error :-ms-input-placeholder { color:rgba(205,0,0,0.66); }
.msg input:-moz-placeholder,
.error input:-moz-placeholder { color:rgba(205,0,0,0.66); }

.cgruen,
.kursbewertung strong.note.good,
.kursbewertung strong.note {
	color:rgb(0,160,20) !important;
}

.crot,
.kursbewertung strong.note.bad ,
.videoholder.playit .stop,
.error,
.error label,
.on.error.labelinput label,
.error.labelinput label.on,
.error a.internaltrigger {
	color: rgb(205,0,0);
}

.miniselection.graybg.errormarker.error,
.error .selectholder.shortselection,
.error select  {
	background-color:rgba(205,0,0,0.33);
}
.miniselection.graybg.errormarker.error .selectholder.shortselection {
	background-color:rgba(205,0,0,0);
}
.error input,
.error textarea {
	border-color:rgba(205,0,0,0.33) !important;
}

.error input:not(:checked):after {
	color:rgba(205,0,0,0.33) !important;
}

textarea::-webkit-scrollbar {
	width: 1em;
}


.datepointer {
	display:block !important;
}
.datecourse{
	display:none  !important;
}
input:-webkit-autofill:blur {
	 -webkit-text-fill-color: #fff;
}
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  border: 1px solid rgba(100,100,100,0.25);

  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
  transition: background-color 5000s ease-in-out 0s;
	background-color: #fff !important;
}




@media only screen and (max-width: 800px) {
	.fieldset  .checkradioholder {
		margin: 0 0 0.25em 0;
	}

}
@media (pointer:coarse) {
	.fieldset  .checkradioholder>input {
		top:-0.05em;
	}
	textarea:hover,
	input:hover,
	select:hover,
	textarea:active,
	input:active,
	select:active,
	textarea:focus,
	input:focus,
	select:focus {
		font-size: 1em !important;
	}

	input[type="radio"],
	input[type="radio"]:hover,
	input[type="radio"]:focus,
	input[type="radio"]:active,
	input[type="checkbox"],
	input[type="checkbox"]:hover,
	input[type="checkbox"]:focus,
	input[type="checkbox"]:active {
		font-size: 1.2em !important;
	}
	



}


form fieldset input:focus,
form fieldset input:selected {
	background:#fff !important;
}
form fieldset input[type=text], form fieldset  input[type=password] {
	width: 100% !important;
	margin: 0 0 0.33em 0;
	background:#fff !important;
}
