form {
}

fieldset {
    margin-bottom: .8em;
}

legend {
    background: #f5f5f5;
    border: 1px solid #ddd;
    color: #333;
    font-weight: bold;
    padding: .2em .5em .2em .5em;
}

label {
    display:block;
    /* font-size:85%; */
    font-weight: bold;
    cursor:pointer;
}

input {
    vertical-align: middle;
}

input:hover, input:focus {
	border-color:#bbb;
}

input.error { background-color: yellow; }

fieldset p {
    margin: .75em 1.5em;
}

fieldset span, fieldset address {
    font-size: 93%;
}

fieldset.simple { border: none; }

fieldset.unaligned label {
    display: inline;
}

/* Horizontal forms */
fieldset.horizontal div.field {
	padding: .25em 1em;
    zoom: 1; /* clearing */
}
fieldset.horizontal div.field:after {content:".";display:block;height:0;clear:both;visibility:hidden;}

fieldset.horizontal label {
    width:12em;
    float:left;
    text-align:right;
    padding:0.25em .8em 0.25em 0;
}
fieldset.horizontal label.nofield {
    padding: 0 .8em 0 0;
}

fieldset.horizontal label.radio, form label.radio {
    display: inline;
	float: none;
    vertical-align: middle;
}
fieldset.horizontal input.checkbox {
	margin-left: 150px;
}
fieldset.horizontal label.checkbox {
	display: inline;
	float: none;
}

/* Vertical forms */

fieldset.vertical label {
    padding-bottom: .1em;
}
fieldset.vertical div.field {
    padding: .25em 1em;
    zoom: 1; /* clearing */
}
fieldset.vertical div.field:after {content:".";display:block;height:0;clear:both;visibility:hidden;}

/* Questionnaire */

fieldset.questionnaire ol {
    padding: 0 2em;
    margin-top: 0;
}

fieldset.questionnaire li {
    border-bottom: 1px solid #AEB3A1;
    clear: both;
    padding: .8em 0;
}
/* to float the choices on the right
fieldset.questionnaire li.radios p {
    display: block;
    float: left;
    width: 42em;
}
fieldset.questionnaire li.radios:after {content:".";display:block;height:0;clear:both;visibility:hidden;}
fieldset.questionnaire li.radios { zoom: 1; }

fieldset.questionnaire div.choices {
    display: block;
    float: right;
    width: 11em;
}
*/
fieldset.questionnaire ol li p {
    line-height: normal;
    /* font-size: 100% !important; */
    padding: 0 0 .2em 0;
    margin: 0;
}

fieldset.questionnaire li label {
    /* font-size: 100%; */
    margin-right: 1em;
}

fieldset.questionnaire .measurements {
    margin: 0 1em;
    padding: .5em 0 1em 0;
    border-bottom: 1px solid #AEB3A1;
}

fieldset.agreements div.field {
    padding-left: 1.5em;
    margin: .2em 0;
}



/* Extra overrides for rare cases */
fieldset label.inline {
    display: inline;
    float: none;
    margin-left: 1.5em;
}

/* Help and Errors */
form span.help {
    font-size: 93%;
    color: #121212;
    font-style: italic;
}
form div.has-errors {
	background: lightyellow;
}

div.feedback {
    background: #ffffcc;
    border: 1px solid #cc9933;
    margin: .8em 0;
    padding: .8em;
}
div.feedback h5 {
    font-weight: bold;
    margin: 0 0 .5em 0;
}
div.feedback ul {
    padding-left: 2em;
    margin: 0;
}
div.feedback li.error {
	color: darkred;
    font-weight: bold;
}

a.help:link, a.help:visited {
    background: url("../images/icons/info.png") no-repeat;
    font-size: 93%;
    font-weight: normal;
    padding: .1em 0 .1em 1.75em;
    text-decoration:none;
}

a.help:hover {
    text-decoration: underline;
}

div.buttons {
    padding: .25em 0;
    text-align: center;
}

