form{
    width:80%;
    margin:150px auto 30px;
    font-size: 1.071em; /* 15px */
}

* {outline: none;}

label,
input,
button,
select,
textarea {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

fieldset {
    margin: 0;
    border:1px solid #1D6093;
    padding:10px 40px 30px;
    -ms-border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}

legend {
    display: block;
    padding: 0 10px;
    font-size: 1.2em; /* 18px  18px/15px (taille font du formulaire) = 1.2 */
    line-height: inherit;
    color: #1D6093;
}

.form_ligne_titre {
    margin: 40px 0 20px;
    padding-left:40px;
    text-align:left;
    font-size: 1.06em; /* 16px  16px/15px (taille font du formulaire) = 1.066 */
    color: #18ade5;
    border:0 solid grey;
}
.form_ligne_input {
    margin-bottom: 15px;
    border:0 solid darkmagenta;
}
.checkbox_seule{
    border:0 solid chocolate;
}
.groupe_checkbox_enligne{
    padding-left: 14%;
    padding-right: 0;
    border:0 solid forestgreen;
}

::-webkit-input-placeholder { color:#979797; } /* WebKit, Blink (Safari, Google Chrome, Opera 15+) and Microsoft Edge */
::-moz-placeholder { color:#979797; } /* firefox 19+ */
:-ms-input-placeholder { color:#979797 !important; } /* IE10 et 11 */
input:-moz-placeholder { color:#979797; } /* firefox 4 à 18 */





label {
    display: inline-block;
    vertical-align: top;
    width: 30%;/*200px*/
    text-align: right;
    cursor: pointer;
    margin:3px 0 0 0;
    padding:0;
    color: #000000;
}

input[type="text"], input[type="password"], input[type=file], select{
    vertical-align: top;
    width: 320px;
    margin: 0 0 0 4px;
    padding: 2px 4px;
    border-radius: 4px;
}

input[type="text"].trescourt{
    width: 60px;
}

input[type="text"].court,
input[type="password"].court{
    width: 95px;
}

input[type="text"].moinscourt{
    width: 120px;
}

input[type="text"].moyen{
    width: 160px;
}

textarea {
    vertical-align: top;
    margin: 0 0 0 4px;
    padding: 2px 4px;
    width:320px;
    border-radius: 4px;
}

input[type="text"], input[type="password"], input[type=file], select, textarea{
    color: #e6007e;
    background-color:#FFFFFF;
    border: 1px solid #202020;
}

select option {
    color: #e6007e;
}
select option:first-child {
    color: #000000;
}

input:focus, select:focus,  textarea:focus{
    border: 1px solid #e6007e;
    background-color:#efefef;
}
input[type="checkbox"]:focus, input[type="radio"]:focus{
    outline:1px solid #e6007e;
}

input[type="text"]:disabled, input[type="password"]:disabled, textarea:disabled{
    border: 1px solid #1D6093;
    background-color:#efefef;
    color: #1D6093;
}
/* sans label */
input[type="text"].horsliste{
    margin-top:10px;
}

/*
input[type="text"].enligne{
	display:inline;
	width:200px;
	margin:0px;
}*/

input[type="checkbox"], input[type="radio"]{
    position: absolute;
    margin-top: 6px;
}
input[type="checkbox"] + label, input[type="radio"] + label {
    width:auto;
    margin-right:5px;
    padding-left: 20px;
}
label + div {
    display: inline-block;
}

/* CHECKBOX puis LABEL sur une seule ligne dans un <P> */
p > input[type="checkbox"]{
    margin-top: 5px;
}
p > input[type="checkbox"] + label{
    width:auto;
    margin:0;
    padding-left: 22px;
    text-align:left;
}

/* Cas particulier de présentation des CHECKBOX */
.checkbox_seule label {
    width:320px;
    padding-left: 20px;
    margin-left: 31.2%;/*208px*/
    text-align: left;
}
.checkbox_seule input[type="checkbox"], .groupe_checkbox_enligne input[type="checkbox"]{
    margin-top: 5px;
    margin-left: -20px;
}

.groupe_checkbox_enligne label{
    width:31%;
    padding-left: 20px;
    margin-right: 1%;
    text-align: left;
}

/*
.groupe_checkbox_enligne label.large{
	width:auto;
}*/


/* Classe diverse à ajouter aux éléments ci-dessus */

form p.pasdemargehaute{
    margin-top:0;
}

.marge_haute{
    margin-top:20px;
}
.marge_haute_quarante{
    margin-top:40px;
}
/* Pour les phrases seules */
.marge_gauche{
    padding-left: 10%;
}

/* Pour le positionnement des boutons ACTIONS en pied de formulaire */
.bouton_action{
    /*padding-left:28.3%;*/
    margin-top:40px;
}
.bouton_action p{
    text-align:center;
}


button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    font-weight:600;
    color:#fff;
    margin:0 0 0 0;
    padding: 5px 20px;
    border:0;
    background-color:#e6007e;
    border-radius: 3px;
    cursor: pointer;
}

button:disabled,
html input[type="button"]:disabled,
input[type="reset"]:disabled,
input[type="submit"]:disabled{
    background-color: rgba(0, 0, 0, 0.23);
    color:#fff;
    cursor:default;
}

label + button, input + button {
    font-size:0.933em; /* 14px */
    font-weight:400;
    margin:0 0 0 10px;
    padding: 5px 10px;
    background-color:#79b51b;
}


.erreur,.asterisque,.attention{
    font-size:0.933em; /* 14px */
    color:#e6007e;
}

.recommandation{
    font-size:0.866em; /*13px */
    padding-left:31%;
}