/*
Standard Formular CSS

@site       	wien-ticket.at IFRAME
@author     	Sindre Wimberger // wimberger@echonet.at
@copyright  	echonet communication gmbh
							schottenfeldgasse 24, 1070 vienna
							http://www.echonet.at
@date       	11.04.2011
							
@sections   	=formulare
								=layout
								=error
								=label
								=elements
								=standard
							=buttons
							=custom
								=size
								=color

@section =formulare
-------------------------------------------------------------------*/
/* ----- +layout ----- */
form {clear: both;margin: 1.38em 0;padding:0;width:100%;}
fieldset {border:0 none;margin:0 0 1em;padding:0.5em 0;position:relative;text-align: left;}
fieldset.p0 {padding:0;}
legend {font-weight:bold;font-size:1.1em;padding:0;margin: 20px 0 0 0;}
/*fieldset {background-color:#F1F1F2;border:0 none;margin:-2.5em 0 2px;padding:10px 15px 10px; position:relative;text-align: left;}
fieldset.nolegend {margin-top:0px;padding-top:10px;}
legend {font-weight:bold;font-size:1.54em;margin:0;padding:2em 0 0;}*/
form ol, form ul {list-style-type:none;margin:0;overflow:hidden;padding:0;}
form ol li, form ul li {background-image:none;float:left;list-style-image:none;padding:3px 0;width:100%;}
form li ol, form li ul {/*float:left;*/padding:0;}
form ol li li, form ul li li {list-style-image:none;padding:1px 0;}
form ol div label, form ul div label {display:block;float:none;margin:0;width:auto;font-family:'wienermelange',sans-serif; }
form .optgroup, form .optgroup li {width:auto;}
form .optgroup {float:none;}
form .optgroup li {margin-right:10px;}
form li.req {}

	/* ----- +gmap ----- */
	/*#GDform { display: none; }*/

/* ----- +error ----- */
form .error-msg {border:1px solid;clear:both;margin:.69em 0;padding:.5em 1em;}
form .error-msg legend {border:1px solid;padding:.2em .5em;}
form .error-msg ul { list-style-type:square;margin-left:20px;overflow:visible;}
form .error-msg ul li {clear:both;float: none;list-style-image:none;padding:2px 0;width:auto;}
form .error-msg label {float:none;display:inline;margin:0;padding:0;width:auto;}
form li.error label:not(.checktxt):not(.radiotxt):not(.labelcheckradio) { width: 100%; }
form li.error label:not(.checktxt):not(.radiotxt):after { content: 'Pflichtfeld';  position: absolute;right: 0;font-family:'wienermelange',sans-serif; font-size:0.8571428571428571em; }
form li.error label.labelcheckradio:after { right: auto;left: 0;top: 34px; }
form li.error input, form li.error select, form li.error textarea {font-weight:normal;}

/* ----- +label ----- */
form small {display:block;font-size:0.85em;}
label, form ol div, form ul div {float:left;line-height:1.3;margin:5px 20px 5px 0;vertical-align:top;font-family:'wienermelange',sans-serif; }
.req label {/*font-weight:bold;*/}
form .checktxt, form .radiotxt, form .widetxt { margin-right:0;}
form .radiotxt.full, form .checktxt.full {width:90%;}
form fieldset .autotxt {width:auto;}
form label.req {display:block;float:none;font-weight:bold;margin:0 0 .69em;width:100%;}

/* ----- +elements ----- */
input, select, textarea {border: 1px solid;float:left;font-size:1em;padding:4px 6px;
-webkit-transition: all 0.25s ease-in-out;
-moz-transition: all 0.25s ease-in-out;
-o-transition: all 0.25s ease-in-out;
transition: all 0.25s ease-in-out;
/* Safari/Chrome/Firefox/Opera/IE 8+ http://css-tricks.com/box-sizing/ */
/*-webkit-box-sizing: border-box; 
-moz-box-sizing: border-box;  
box-sizing: border-box;  */
	-webkit-appearance:auto !important;
}
input[type=text],input[type=email],input[type=url],input[type=date],input[type=tel],input[type=number], select { border-top: none; border-left:none; border-right:none;font-weight: bold; }
select {width:100% !important;-webkit-appearance: none !important;-moz-appearance: none !important;appearance: none !important;cursor: pointer;  }
select::-ms-expand { display: none; } /* fix for IE <= 11 */
.select-icon {
  position: absolute;
    bottom: 10px;
    right: 4px;
    width: 30px;
    height: 27px;
    pointer-events: none;
    padding-left: 5px;
    margin: 0;background-image: url("../content/default/selectbox_icon.svg"); background-position: center; background-repeat: no-repeat; background-size: 18px;
}
/*select:focus:active:hover + .select-icon { transform: rotate(180deg); }*/

option {padding-left: 0.4em;} /* resets rendering error */
textarea {vertical-align:top;resize:none;}
input.button {text-align:center;}
input.button:focus {text-decoration:underline;}
input.img {border:0 none;padding:0;width: auto;}
input.noborder {background-color: transparent;border: 0 none;margin-bottom:.7em;margin-right:5px;padding:0;width:auto;}
input.checkbox, input.radio {background-color: transparent;border: 0 none;margin:7px 5px 0 0;padding:0;width:auto;}
label, input[type=checkbox], input[type=radio], input[type=submit], button {cursor:pointer;}
input[type='text'],input[type='password']{cursor:text;}
input[type='hidden']{display:none;}
input[disabled='disabled'] {background-color:#DADADD; cursor:auto;}
input[type="submit"]::-moz-focus-inner {border:0;} /* http://christophzillgens.com/de/articles/input-und-button-gleich-hoch */
label.checktxt, label.radiotxt { position: relative;padding: 2px 5px 3px 25px;display: inline-block;float: none; width: auto;margin: 0 0 5px 0;font-family:'wienermelange',sans-serif;font-weight: normal; }
input[type="radio"]:checked + label.radiotxt::before { background-image: url(../content/default/radio.svg); border-color:#000; }
input[type="checkbox"]:checked + label.checktxt::before { background-image: url(../content/default/check.svg); border-color:#000; }
input[type="radio"]:checked + label.radiotxt, input[type="checkbox"]:checked + label.checktxt { font-weight: bold; }
label.checktxt::before, label.radiotxt::before {
  content: "";
  color: #fff;
  display: inline-block;
  width: 20px;
  height: 20px;
  background-repeat: no-repeat;
    background-color: transparent;
  border: 2px solid #707070;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  margin: 0px 10px -7px -25px;
    background-position: center;
    background-size: 14px auto;
}
label.radiotxt::before { border-radius: 50%; }



/* ----- +standard ----- */
form .wauto {width:auto;}
form .full {width:98%;}
form .spacer {display:block;margin:.2em 5px 0 0;float:left; text-align:center;}
form .short {margin-right:10px;width:100px;}
form img.captcha {float:left;margin-right:.5em;}

/* @section =buttons mit Hintergrundbild
-------------------------------------------------------------------*/
a.button:link, a.button:visited, a.button:focus, a.button:hover, a.button:active, button {border:1px solid;cursor:pointer;display:inline-block;font-size:1em;font-weight:bold;line-height:1.2;margin:0;padding:12px 40px;text-align:center;text-decoration:none; } 
button {/*width: 284px;*/ overflow: visible; } /* http://www.viget.com/inspire/styling-the-button-element-in-internet-explorer/ */
a.button:focus, a.button:hover, a.button:active { text-decoration:underline;}
button::-moz-focus-inner {border: none;}
button.auto, a.auto:link, a.auto:visited, a.auto:focus, a.auto:hover, a.auto:active {width:auto;}
button.fright, a.fright:link, a.fright:visited, a.fright:focus, a.fright:hover, a.fright:active {float:right;}

/* ----- +size ----- */
label, form ol div, form ul div {overflow:hidden;/*width:160px;*/width: 100%;float: none;display: block; }
form fieldset .right {margin-left:170px;} /* label width + label margin-right 160px + 10px */
input, select, textarea {/*width:270px;*/width: 100%;}
form .checktxt, form .radiotxt, form .widetxt {/*width:254px;*/}
form li ol, form li ul, select, input.button {/*width:284px;*/}
input.captcha {margin-top:10px;width:100px;}

/* ----- +color ----- */
form li.req {}
form .req li label {background-color:transparent;}
input, select, textarea {background-color: transparent;border-color: #333;}
a.button:link, a.button:visited, a.button:focus, a.button:hover, a.button:active, button {background-color: transparent;color:#000;border-color:#000; box-shadow: none;text-decoration: none; }
a.button:focus, a.button:hover, a.button:active, button:focus, button:hover, button:active { background-color: #8789AA;color:#ffffff;border-color:#8789AA; }
input.placeholder {color:#B3B3B3;}
input::-webkit-input-placeholder {color:#B3B3B3;}
input:-moz-placeholder {color:#B3B3B3s;}
a.button:focus, a.button:hover, a.button:active, button:focus, button:hover, button:active,
input:focus, select:focus, textarea:focus {border-color:#8789AA; }
form .error-msg, form .error-msg legend {background-color: #FFCECF;border-color:#BF0027;}
form .error-msg legend {
-webkit-box-shadow: 0 0 5px #BF0027;
-moz-box-shadow: 0 0 5px #BF0027;
-o-box-shadow: 0 0 5px #BF0027;
box-shadow: 0 0 5px #BF0027;
}
form .error-msg {background-color: #FFCECF;border-color:#f00;
/*-webkit-box-shadow: 0 0 5px #f00;
-moz-box-shadow: 0 0 5px #f00;
-o-box-shadow: 0 0 5px #f00;
box-shadow: 0 0 5px #f00;*/
}
form li.error label {color:#f00;}
input[type=text]:focus:invalid,
input[type=email]:focus:invalid,
input[type=url]:focus:invalid,
input[type=date]:focus:invalid,
input[type=tel]:focus:invalid,
input[type=number]:focus:out-of-range,
form li.error input, form li.error select, form li.error textarea {border-color:#f00;}
form li.error textarea { background-color: rgba(199, 42, 42, 0.1); }
/*
input[type=text]:focus:valid,
input[type=email]:focus:valid,
input[type=number]:focus:in-range { outline: 2px #0f0 solid; }*/

.custom-select, .bf-custom-select{
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 10px;
	border: 1px solid var(--grey);
	height: 44px;
}
.custom-select__trigger{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
}
.custom-select__trigger .arrow{
	position: relative;
	height: 15px;
	width: 15px;
	background: url("/_assets/content/dhw_icons/arrow.svg") no-repeat center;
	background-size: contain;
	filter: var(--filter-red);
	transition: 0.3s ease;
	top: 4px;
}
.custom-select.open .arrow, .bf-custom-select.open .arrow{ transform: rotateX(180deg)}
.custom-options{
	position: absolute;
	display: none;
	border:  1px solid var(--grey);
	background-color: #fff;
	top: 43px;
	left: -1px;
	right: 0;
	width: calc(100% + 2px);
	transition: all 0.3s;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	z-index: 2;
	overflow-y: hidden;
	overflow-x: hidden;
}
.custom-option, .bf-custom-option{
	position: relative;
	display: block;
	padding: 10px;
	cursor: pointer;
	font-weight: bold;
}
.custom-option.selected, .bf-custom-option.selected{
	background-color: #494C80;
}
.custom-option.selected *, .bf-custom-option.selected *{
	color: #ffffff;
}
.custom-option:hover, .bf-custom-option:hover{color: var(--red);}
.custom-select.open .custom-options, .bf-custom-select.open .custom-options{
	display: block;
	border-top: none;
	pointer-events: all;
	overflow-y: auto;
	z-index: 999;
	opacity: 1;
	visibility: visible
}

#askeditform .bf-custom-select {margin-bottom: 10px;}
#askeditform .bf-custom-option {background-color: #494C80;}
#askeditform .bf-custom-select .arrow{filter: invert(100%) sepia(91%) saturate(0%) hue-rotate(246deg) brightness(104%) contrast(101%);}
#askeditform .label {line-height: 1.3;margin: 5px 20px 5px 0; white-space: normal;}

/*@media screen and (min-width: 720px) {*/
@media screen and (min-width: 1270px) {
    label, form ol div, form ul div {overflow:hidden;/*width:160px;*/width: auto;}
}
