form.model_form {
    width: 100%;
    font-size: 1em;
    padding-top: 0.5em;
}

.model_form .infos {
    color: #666666;
}

.model_form .link {
    color: #666666;
    cursor: pointer;
}

.model_form .link:hover {
    color: #00589C;
    text-decoration: underline;
}

.model_form label {
    display: inline-block;
    font-weight: 700;
}

.model_form_time_selector {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.model_form_time_selector select {
    flex: 0 0 4.5em;
}

.model_form input[type=text], .model_form input[type=email], .model_form input[type=password], .model_form textarea {
    width: 100%;
    margin: 0.5em 0;
    padding: 0.5em;
    color: #666666;
    font-size: 1em;
    border: 1px solid #e7e7e8;
    box-shadow: 0 1px 1px rgba(0,0,0,.05);
}

.model_form input[type=text]:focus, .model_form input[type=email]:focus, .model_form input[type=password]:focus, .model_form textarea:focus {
    border-color: rgba(0, 91, 255, 0.3);
    box-shadow: 0px 1px 8px rgba(0, 91, 255, 0.6);
}

.model_form input[type=checkbox] {
    margin-right: 0.5em;
    vertical-align: middle;
}

.model_form select {
    margin: 0.5em 0em;
    width: 100%;
    padding: 0.25em;
    color: #666666;
    font-size: 1em;
    border: 1px solid #e7e7e8;
}

.model_form select option {
    padding: 0.25em;
    color: #666666;
}

.model_form_mandatory {
    text-align: right;
    font-style: italic;
}

/* Links */

.model_form a {
    color: #333333;
}

.model_form a:hover {
    color: #00589C;
}

/* Buttons */

.model_form_actions_container {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-top: 0.5em;
}

.model_form_button {
    display: flex;
    align-items: center;
    margin-left: 0.5em;
    background-color: #003762;
    color: #ffffff;
    font-size: 1.25em;
    font-weight: 700;
    padding: 0.5em;
    cursor: pointer;
}

.model_form_button:hover {
    background-color: #00589C;
}

.model_form_button_waiting {
    background-color: #78c0e0;
    color: #dfdfdf;
    cursor: default;
}

.model_form_button_waiting:hover {
    background-color: #78c0e0;
}

/* Errors*/

.model_form_error {
    border-color: #ba040d !important;
    box-shadow: 0px 1px 4px rgba(186, 4, 13, 0.6) !important;
}

.model_form_error_msg {
    margin-top: 0.5em;
    padding: 0.5em;
    background-color: #eeeeee;
    border: solid 1px #e7e7e8;
    color: #ba040d !important;
    font-size: 1em;
    font-weight: 700;
    text-align: center;
}

.form_error_msg {
    font-weight: 700;
}

/* Success*/

.model_form_success_msg {
    margin-top: 0.5em;
    padding: 0.5em;
    background-color: #eeeeee;
    border: solid 1px #e7e7e8;
    color: #006600 !important;
    font-size: 1em;
    font-weight: 700;
    text-align: center;
}

.form_success_msg {
    font-weight: 700;
}