/* ***********************************************************************************************
   *                                          - FORMS -                                          *
   *********************************************************************************************** */

textarea.f, input.f:not([type=submit]):not([type=reset]) {
	font-family: Verdana, Arial, Sans-serif;
    border-radius: 3px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    -webkit-transition: 0.3s border ease;
    -moz-transition: 0.3s border ease;
    -o-transition: 0.3s border ease;
    -ms-transition: 0.3s border ease;
    transition: 0.3s border ease;
}

textarea.f {
	font-size: 13px;
	padding: 2px 2px 0;
	border: 1px solid #c3c3c3;
    vertical-align: top;
}

select.f {
	font-family: Verdana, Arial, Sans-serif;
	font-size: 12px;
    height: 25px;
    line-height: 25px;
	border: 1px solid #c3c3c3;
    cursor: pointer;
}

input.f:not([type=submit]):not([type=reset]) {
	border: 1px solid #c3c3c3;
	padding: 2px 3px;
	font-size: 13px;
}

input.f::-webkit-input-placeholder, textarea.f::-webkit-input-placeholder {
    font-style: italic;
    color: #aaa;
}
input.f:-moz-placeholder, textarea.f:-moz-placeholder {
    font-style: italic;
    color: #aaa;
}

input[disabled], textarea[disabled] {
	border-color: #ddd;
    cursor: not-allowed;
}

input.f:not([type=submit]):not([type=reset]):focus, textarea.f:focus, select.f:focus {
    border-color: #7c7c7c;
    -moz-box-shadow: 0 0 2px 1px #b0b0b0;
    -webkit-box-shadow: 0 0 2px 1px #b0b0b0;
    box-shadow: 0 0 2px 1px #b0b0b0;
}




input.f:required, textarea.f:required {
    background: url(../images/red_asterisk.png) no-repeat 99% center;
}
input.f:focus:invalid, textarea.f:focus:required {
    border-color: #ff0000 !important;
    background: url(../images/ico_invalid.png) no-repeat 99% center;
}
input.f:focus:valid, textarea.f:focus:valid {
    background: url(../images/ico_valid2.png) no-repeat 99% center;
}





/* Radio / Checkbox */
input[type=radio], input[type=checkbox] {
    margin-right: 3px;
    position: relative;
    top: 1px;
    cursor: pointer;
}






span.help-block {
    display: block;
    font-size: 12px;
    color: #bfbfbf;
    line-height: 18px;
}

span.required {
    color: red;
    font-weight: bold;
    font-size: 16px;
    margin-left: 5px;
}





/* Submit / Reset / Button */
input[type=submit].f, input[type=reset].f, button.f {
	-moz-box-shadow: inset 0 1px 0 0 #fff;
	-webkit-box-shadow: inset 0 1px 0 0 #fff;
	box-shadow: inset 0 1px 0 0 #fff;
    
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #ededed), color-stop(1, #dfdfdf));
	background: -moz-linear-gradient(center top, #ededed 5%, #dfdfdf 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed', endColorstr='#dfdfdf');
	background-color: #ededed;
    
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	border: 1px solid #dcdcdc;
    
	display: inline-block;
	color: #777777;
	font-family: arial;
	font-size: 15px;
	font-weight: bold;
	padding: 6px 24px;
	text-decoration: none;
	text-shadow: 1px 1px 0 #fff;
}
input[type=submit].f:hover, input[type=reset].f:hover, button.f:hover {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #dfdfdf), color-stop(1, #ededed));
	background: -moz-linear-gradient(center top, #dfdfdf 5%, #ededed 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#dfdfdf', endColorstr='#ededed');
	background-color: #dfdfdf;
    cursor: pointer;
}
input[type=submit].f:active, input[type=reset].f:active, button.f:active {
	position: relative;
	top: 1px;
}


/* Submit */
input[type=submit].f, button.submit {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #e3eedf), color-stop(1, #addca5));
	background: -moz-linear-gradient(center top, #e3eedf 5%, #addca5 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e3eedf', endColorstr='#addca5');
	background-color: #addca5;
	border: 1px solid #addca5;
	color: #3c7e30;
}
input[type=submit].f:hover, button.submit:hover {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #addca5), color-stop(1, #e3eedf));
	background: -moz-linear-gradient(center top, #addca5 5%, #e3eedf 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#addca5', endColorstr='#e3eedf');
	background-color: #e3eedf;
}

/* Reset */
input[type=reset].f, button.reset {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #dda4a4), color-stop(1, #c46060));
	background: -moz-linear-gradient(center top, #dda4a4 5%, #c46060 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#dda4a4', endColorstr='#c46060');
	background-color: #c46060;
	border: 1px solid #c46060;
	color: #742c2c;
	text-shadow: 1px 1px 0 #cacaca;
}
input[type=reset].f:hover, button.reset:hover {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #c46060), color-stop(1, #dda4a4));
	background: -moz-linear-gradient(center top, #c46060 5%, #dda4a4 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#c46060', endColorstr='#dda4a4');
	background-color: #dda4a4;
}


input[type=submit][disabled].f {
    cursor: not-allowed;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #ededed), color-stop(1, #dfdfdf));
	background: -moz-linear-gradient(center top, #ededed 5%, #dfdfdf 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed', endColorstr='#dfdfdf');
	background-color: #ededed;
	border: 1px solid #dcdcdc;
	color: #777777;
}
input[type=submit][disabled].f:hover {
    top: 0;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #ededed), color-stop(1, #dfdfdf));
	background: -moz-linear-gradient(center top, #ededed 5%, #dfdfdf 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed', endColorstr='#dfdfdf');
	background-color: #ededed;
	border: 1px solid #dcdcdc;
	color: #777777;
}





/* ****************************************************************************************************
   *                                        - FORMS - LABELS -                                        *
   **************************************************************************************************** */
label.side {
    font-size: 14px;
    line-height: 20px;
    display: block;
    width: 125px;
    float: left;
    clear: left;
    text-align: left;
    margin-right: 10px;
}

label.side2 {
    font-size: 14px;
    line-height: 30px;
    display: block;
    width: 250px;
    float: left;
    clear: left;
    text-align: right;
    margin-right: 10px;
}

label.side3 {
    font-size: 11px;
    line-height: 19px;
    display: block;
    width: 95px;
    float: left;
    clear: left;
    text-align: left;
    margin-right: 10px;
}


/* *********************************************************************
   *                - TIPS POUR REMPLISSAGE DES FORMS -                *
   ********************************************************************* */
span.tips {
	position: absolute;
	color: black;
	font-size: 10px;
	font-weight: bold;
	padding: 1px 3px;
	margin-left: 5px;
	margin-top: 3px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}
 
span.tips.valid {
	color: #0c0;
	border: 1px solid #0c0;
 	background-color: #c6ffc6;
}
 
span.tips.invalid {
	color: red;
	background-color: #ffc4c4; 
	border: 1px solid red;
	
}

input.invalid, textarea.invalid {
	border: 2px solid red !important;
}
