input, button, textarea, select {
    background-color: #fff;
    color: #000;
    padding: 2px;
    font-family: "Lucida Grande", Myriad, "Andale Sans", "Luxi Sans", "Bitstream Vera Sans", Tahoma, "Toga Sans", Helvetica, Arial, sans-serif;
    font-size: small;
}

button, input[type="button"], input[type="submit"]  {
    background: #fcfcfc url(button.png) repeat-x top left;
    color: #888a85;
    border: 1px solid #babdb6;
    border-top: 1px solid #d3d7cf;
    border-left: 1px solid #d3d7cf;
    font-weight: bold;
    margin-left: 2px;
    margin-right: 2px;
    font-family: "Lucida Grande", Myriad, "Andale Sans", "Luxi Sans", "Bitstream Vera Sans", Tahoma, "Toga Sans", Helvetica, Arial, sans-serif;
    cursor: pointer;
    font-size: small;
    min-height: 20px;
    overflow: visible;
}

select {
    cursor: pointer;
}

button:hover, input[type="button"]:hover, input[type="submit"]:hover  {
    background: #fafafa url(button-hover.png) repeat-x top left;
    color: #333;
}

button:active, input[type="button"]:active, input[type="submit"]:active {
    background: #e4e6e1 url(button-hover.png) repeat-x top left;
    color: #555;
}

.widetable {
    width: 100%;
}

table.tableform .button {
    text-align: center;
}

input[type="text"], input[type="password"], textarea, select {
    color: #333;
    background:#fff url(field-bg.png) repeat-x top;
    border-top: 1px solid #999;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ddd;
    padding: 3px;
}

input[type="text"]:focus, input[type="password"]:focus, textarea:focus  {
    color: #000;
    background-color: #fff;
    border: 1px solid #3465a4;
}

input[disabled], select[disabled] {
    color: #999;
    background-color: #eee;
}

textarea {
    width: inherit;
}

fieldset {
    position: relative;
    border: 0; 
    padding: 0;
    padding-bottom: 1em;
    margin-top: 1.8em;
    margin-bottom: 1em;
    font-size: small;
}

legend {
    position: relative;
    background: #fff url(fieldset-legend.png) repeat-x top left;
    font-weight: bold;
    font-size: 110%;
    padding-left: .5em;
    padding-right: .5em;
    padding-top: .2em;
    padding-bottom: .1em;
    border-top: 1px solid #d3d7cf;
    border-left: 1px solid #d3d7cf;
    border-right: 1px solid #d3d7cf;
    margin: 0px;
    margin-left: -1px;
    margin-top: -1.6em;
}

label {
    font-weight: bold;
    cursor: pointer;
}

fieldset td {
    padding: 1px;
}

fieldset br {
    display : none;
}

fieldset label {
    display: block;
    font-size: 100%;
}

div.oneline label, div.oneline_no_width label {
    margin: 0;
    margin-right: .6em;
    display: block;
    text-align: right;
    float: left;
    font-size: 100%;
    font-weight: bold;
    cursor: pointer;
}

div.oneline label {
    width: 15em;
}

div.w2em label { width: 2em; }
div.w3em label { width: 3em; }
div.w4em label { width: 4em; }
div.w5em label { width: 5em; }
div.w6em label { width: 6em; }
div.w7em label { width: 7em; }
div.w8em label { width: 8em; }

div.oneline_no_width label {
    text-align: left;
}

div.checkbox label {
    margin: 0;
    display: block;
    width: 13em;
    text-align: right;
}

div.radiobox label {
    display: inline;
}

div.radiobox input {
    vertical-align: middle;
}

div hr {
    border-color: black;
}

div.buttons {
    display: block;
    text-align: right;
}

fieldset div {
    clear: left;
    padding: 0 1em;
    padding-top: 5px;
}

fieldset div strong {
    font-size: 100%;
}

fieldset div span.form-error {
    display: block;
    color: #F00;
    font-weight: bold;
    letter-spacing: 1px;
}

fieldset div span.comment {
    display: none;
}

fieldset div:hover span.comment {
    font-size: 95%;
    color: #c96;
    background-color: #faf0e6;
    /*  \*/
    margin-left: 3em;
    /*  */
    padding: .2em .5em .3em;
    border: 1px solid #c96;
    display: block;
    position: absolute;
    z-index: 100;
    float: right;
    -moz-border-radius: 4px;
}
* html fieldset div span.comment {
    font-size: 95%;
    color: #c96;
    margin-left: 3em;
    padding: .3em;
    border-left: 1px solid #c96;
    display: block;
}

div#requiredNote {
    font-size: 100%;
    letter-spacing: 0.5px;
    /* clear: both; */
    margin-top: 10px;
}

label.mandat, span.mandat {
    color: #930;
    font-weight: bold;
}

label.mandat:after, span.mandat:after {
    content: "*";
}

.removed {
    display: none !important;
}

input[type="checkbox"] + label, input[type="checkbox"] + label + br, fieldset div strong + br  {
    display: inline;
}

input[type="checkbox"], select {
    -moz-border-top-colors: #babdb6 transparent;
    -moz-border-left-colors: #babdb6 transparent;
    -moz-border-bottom-colors: #d3d7cf transparent;
    -moz-border-right-colors: #d3d7cf transparent;


    -moz-border-top-colors: #999 transparent;
    -moz-border-left-colors: #ccc transparent;
    -moz-border-right-colors: #ccc transparent;
    -moz-border-bottom-colors: #ddd transparent;
    font-family: "Lucida Grande", Myriad, "Andale Sans", "Luxi Sans", "Bitstream Vera Sans", Tahoma, "Toga Sans", Helvetica, Arial, sans-serif;
}

input[type="checkbox"]:focus {
    -moz-border-top-colors: #3465a4 transparent;
    -moz-border-left-colors: #3465a4 transparent;
    -moz-border-bottom-colors: #3465a4 transparent;
    -moz-border-right-colors: #3465a4 transparent;
}

.form_comment {
    font-size: x-small;
}

table td label {
    padding-right: 6px;
}

.tableform td {
    padding: 0;
    margin: 0;
    display: table-cell;
    vertical-align: top;
}

.tableform {
    width: 100%;
    padding: 0;
    margin: 0;
}

.tableform br { display: none; }

.tableform fieldset {
    margin: 0;
}

