/************************************************** sto.com layout *****/
/*************************************** Copyright (c) 2014 Sto ********/
/***********************************************************************/
/********************************************* form element styles *****/
/***********************************************************************/
/************************************** author virtual identity AG *****/
/***********************************************************************/

/* START: legend and label */
legend
{
	font-size: 11px;
	line-height: 13px;
	font-weight: bold;
	padding: 0;
}

legend.access
{
	font-size: 0;
	line-height: 0;
}

label
{
	display: block;
	font-size: 11px;
	line-height: 13px;
	color: #999;
	padding: 3px 0;
	cursor: pointer;
}
/* END: legend and label */
/***********************************************************************/
/* START: text input */
div.input_wrapper
{
	padding: 4px 0 0;
}

input.text
{
	font-size: 11px;
	color: #000;
	border: 1px solid #bbb;
	padding: 2px 5px;
	width: 288px;
	outline: 0; /*safari blue outline*/
}

div.input_wrapper input.text
{
	display: block;
}

input.street,
label.street
{
	float: left;
	width: 241px;
	margin: 0 5px 0 0;
}

label.street
{
	padding-right: 12px; /* equals padding+border of input */
}

input.street_no,
label.street_no
{
	float: left;
	width: 30px;
}

label.street_no
{
	width: 32px;
}

input.zip_code,
label.zip_code
{
	float: left;
	width: 45px;
	margin: 0 10px 0 0;
}

label.zip_code
{
	padding-right: 12px; /* equals padding+border of input */
}

input.city,
label.city
{
	float: left;
	width: 221px;
}

input.date
{
	width: 84px;
}

.mac.firefox input.text
{
	padding: 2px 5px 1px;
}

.webkit input.text
{
	margin: 0;
}

.webkit input.street,
.webkit input.zip_code
{
	margin-right: 10px;
}

.safari input.text
{
	padding: 6px 5px 0;
}

.win.safari input.text
{
	padding: 4px 5px 0;
}
/* END: text input */
/***********************************************************************/
/* START: file input */
input.file
{
	color: #000;
	font-size: 11px;
	margin: 0;
	padding: 2px 5px;
	width: 281px;
	outline: 0; /*safari blue outline*/
}

div.input_wrapper input.file
{
	display: block;
}

.firefox input.file
{
	margin-bottom: -1px;
}

.mac.firefox input.file
{
	margin-bottom: -2px;
}

.webkit input.file
{
	margin: 2px 0 0;
	padding: 0;
}

.mac.safari input.file
{
	margin: 1px 0 1px;
}
/* END: file input */
/***********************************************************************/
/* START: select */
select
{
	font-size: 11px;
	color: #000;
	border: 1px solid #bbb;
	padding: 1px 1px 1px 2px;
	width: 300px;
	outline: 0; /*safari blue outline*/
}

div.input_wrapper select
{
	display: block;
}

.safari select
{
	margin-top: 1px;
}

.mac select
{
	height: 20px;
}
.mac.firefox select
{
	margin-bottom: 1px;
	padding: 1px 0 1px 2px;
}
/* END: select */
/***********************************************************************/
/* START: textarea */
textarea
{
	overflow: auto;
	font-size: 11px;
	line-height: 15px;
	color: #000;
	border: 1px solid #bbb;
	padding: 2px 5px;
	width: 288px;
	height: 138px;
	outline: 0; /*safari blue outline*/
}

.ie textarea
{
	padding-top: 3px;
}

.mac textarea
{
	line-height: 15px;
	margin: 0;
}

.mac.firefox textarea
{
	margin-top: -1px;
	padding: 3px 5px 2px;
	height: 135px;
}

.webkit textarea
{
	padding: 1px 4px 2px 6px;
	resize: none;
	height: 140px;
}

.win.safari textarea
{
	padding: 2px 3px 0;
	width: 292px;
}

textarea.double_wide {
	width: 618px;
}
/* END: textarea */
/***********************************************************************/
/* START: radio- and checkboxes */
div.checkbox-wrapper div.checkbox,
div.radio-wrapper div.radio
{
	float: left;
}

div.checkbox,
div.radio
{
	position: relative;
	padding: 3px 15px 3px 0;
}

div.checkbox:last-child,
div.radio:last-child
{
	padding-right: 0;
}

div.checkbox label,
div.radio label
{
	color: #000;
	/*padding: 0 0 0 18px;*/
}

div.checkbox input,
div.radio input,
ul.checkboxes input
{
	position: absolute;
	top: 3px;
	left: 0;
	margin: 0;
	padding: 0;
}

.content ul.checkboxes li
{
	clear: left;
}

ul.checkboxes input
{
	position: relative;
	top: 1px;
	float: left;
	margin-right: 5px;
}

ul.checkboxes label
{
	display: inline;
}

.mac.firefox div.checkbox input
{
	top: 1px;
}
/* END: radio- and checkboxes */
/***********************************************************************/
/* START: buttons */
a.button,
input.button
{
	font-size: 11px;
	line-height: 13px;
	color: #fff!important;
	background: #333;
	margin: 10px 0 3px;
	border: none;
	padding: 2px 7px;
	overflow: visible;
	width: auto;
	outline: 0; /*supress safari blue outline*/
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
}

a.button:hover {
	text-decoration: none!important;
}
input.submit.disabled {
	background: #ccc;
	cursor: default;
}
input.reset
{
	background: #999;
}

.ie  input.button,
.win.chrome input.button
{
	padding: 3px 10px;
}

.mac input.button
{
	padding: 0 7px 1px;
}
.mac.webkit input.button
{
	padding: 1px 10px 2px;
}

div.buttons input.button
{
	float: left;
	margin: 0 10px 0 0;
}

/* button bar */
div.buttons
{
	margin-top: 20px;
	border-top: 1px solid #bbb;
	padding: 10px 0 3px;
}
/* END: buttons */
/***********************************************************************/