/**
 * top concepts Standard-CSS Deklarationen für Formulare
 */

FORM {
	width: 100%;
	margin: 0px;
	padding-bottom: 3px;

}

INPUT {
    font-size: 1em;
}

/**
 * Required
 */
FORM .required {
    font-weight: bold;
}

/**
 * Allgemeinde Struktur
 */
DIV.formElement, .clear, .clearFix {
	clear: both;
}

.clearFix {
	line-height: 0px;
}

DIV.formElement {
	padding: 5px 0px 5px 5px;
}

DIV.formElementDescription {
	float: left;
	width: 30%;
}


FORM LABEL {
    display: block;
    width: 100%;
}

FORM .formElementDescription .infoText,
FORM .formElementDescription .infoText A {
    color: #999999;
    display: block;
}

FORM .formElementDescription .infoText {
    font-size: 0.9em;
    margin-top: 2px;
}

DIV.formElementContent {
	text-align: left;
	float: right;
	width: 65%;
}

/**
 * Gruppen
 */
DIV.group DIV.formElementContent DIV {
	display: inline;
	float: none;
    padding-left: 0px;
    margin-left: 0px;
}

DIV.group DIV.formElementContent DIV.formElementDescription {
    display: none;
}
 
/**
 * Checkboxgruppen
 */
FORM .checkboxgroup .formElementContent .required {
    font-weight: normal;
}

FORM .checkboxgroup DIV.formElementContent DIV.formElementDescription {
	float: right;
	text-align: left;
	width: 95%;
	padding-top: 2px;
}

FORM .checkboxgroup DIV.formElement {
    padding-left: 0px;   
}

FORM .checkboxgroup DIV.formElementContent DIV.formElementContent {
	width: 25px;
    float: left;
}

/**
 * Fehler
 */
 
FORM DIV.formError, FORM .formElement .elementErrorBox {
	background-color: #CC0000;
	padding: 5px;
	color: white;
	font-weight: bold;
	border: 2px solid white;
}

FORM .elementErrorMessage {
	padding-bottom: 3px;
}

FORM DIV.elementError {
	margin-bottom: 2px;
}

FORM SELECT OPTION.elementError {
	background-color: #CC0000;
	color: white;
}

INPUT {
    width: 300px;
}

INPUT.checkbox {
    width: 15px;
}

FORM DIV.date INPUT.day,
FORM DIV.date INPUT.month,
FORM DIV.time INPUT.hours,
FORM DIV.time INPUT.minutes,
FORM DIV.time INPUT.seconds {
    width: 25px;
}

FORM DIV.date INPUT.year {
    width: 40px;
}

/**
 * Wert-Elemente
 */
FORM DIV.values .formElementContent DIV {
	width: 49%;
	float: left;
}

DIV.formElementValueContainer {
	background-color: #D2D2D2;
}

/**
 * Adresse
 */
FORM DIV.address DIV.formElementContent DIV.formElementDescription {
    float: left
}

FORM DIV.address DIV.streetnumber {
    padding-top: 0px;
}

FORM DIV.address DIV.streetnumber DIV.formElementContent,
FORM DIV.address DIV.ziptown DIV.formElementContent {
    float: left;
    width: 100%;
}
 
FORM DIV.address DIV.streetnumber INPUT.street {
    width: 75% !important;
}
 
FORM DIV.address DIV.streetnumber INPUT.number {
    width: 35px !important;
}

FORM DIV.address DIV.ziptown INPUT.zip {
    width: 50px !important;
}

FORM DIV.address DIV.ziptown INPUT.town {
    width: 70% !important;
}

FORM DIV.address DIV.group DIV.formElementContent .elementErrorMessage,
FORM DIV.address DIV.group DIV.formElementContent .elementErrorBox {
    display: block;
}

FORM DIV.address DIV.group DIV.formElementContent .elementErrorBox {
    padding: 4px;
}

FORM DIV.address DIV.formElementDescription {
    display: none;
}

 FORM DIV.address DIV.group DIV.formElementDescription {
    display: block;
}

 FORM DIV.address DIV.formElementDescription {
    width: 100%;
    
}

 FORM DIV.address DIV.formElementContent {
    width: 100%;
}

 FORM DIV.address DIV.formElementContent DIV.formElementContent {
    width: 65%;
}

 FORM DIV.address DIV.formElementContent DIV.formElementDescription {
    width: 34%;
}

 FORM .streetnumber .input_street {
    float: left;
    width: 74%;
    display: block;
}

 FORM .streetnumber .input_number {
    float: right;
    width: 22%;
    display: block;
}

 FORM DIV.streetnumber SPAN.input_number INPUT.number,  FORM
DIV.streetnumber SPAN.input_street INPUT.street {
    width: 100% !important;
}
