﻿
textarea
{
    overflow: auto;
}

.validation-message
{
    color: #FF0000;
}

.checkbox.horizontal img, .radio.horizontal img
{
    vertical-align: middle;
}

.checkbox.horizontal input[type="checkbox"], .radio.horizontal input[type="radio"]
{
    margin-left: 1em;
    margin-right: 0.5em;
}
.checkbox.horizontal label, .radio.horizontal label
{
    margin-left: 0em;
    margin-right: 2em;
    white-space:nowrap;
}

input.smallbutton
{
    font-size: 0.8em;
}

div.validation-box
{
    margin-top: 1em;
    margin-bottom: 1em;
    border: solid 2px red;
    padding: 1em;
}

li.validation-box .smallbutton
{
    margin-left: 1em;
}

/* http://articles.sitepoint.com/article/fancy-form-design-css/ */

.form-top
{
    text-align: left;
}

.form-top-narrow
{
    width: 45em;
}

.form-left-narrow
{
    width: 55em;
}
    
fieldset.form-fields
{
    padding: 0;
    float: left;
    width: 99%;
    border: 1px solid #BFBAB0;
    background-color: #FAFAFF;
    background-image: url(../images/fieldset_gradient.jpg);
    background-repeat: repeat-x;
}

fieldset.nospacing
{
    border: none 0px black;
    background-image: none;
    background-color: Transparent;
}

.form-top fieldset.form-fields
{
    margin: 0 0 1.5em 0;
}

.form-top fieldset.nospacing
{
    margin: 0 0 0.5em 0;
}

.form-left fieldset.form-fields
{
    margin: 0 0 1.5em 0;
}

fieldset.form-submit
{
    clear: left;
    border-style: none;
    padding-left: 13px;
}

.form-left fieldset.form-submit
{
    padding-left: 12em;
}


.form-joined fieldset.form-fields
{
    border-style: none; /* reset border */
    background-image: none; /* reset backrgound */
    background-repeat: no-repeat;
    margin: 0 0 -1em 0;
    padding: 0 0 1em 0;
    border-top: 1px solid #BFBAB0;
    background-color: #F0F8FF;
}

.form-joined fieldset.form-submit
{
    border-top: 1px solid #BFBAB0;
}

fieldset.form-fields legend
{
    margin-left: 13px;
    padding: 0;
    color: #000000;
    font-weight: bold;
}

/* Used to position the legend within the fieldset instead of within the fieldset border. */
fieldset.form-fields legend span
{
    position: absolute;
    margin-top: 0.5em;
    font-size: 135%;
}

fieldset.form-fields ol
{
    list-style: none;
    padding: 3.5em 0em 0 13px;
    margin: 0;
    float: left;
    width: 94%;
}

fieldset.nospacing ol
{
    padding-top: 0;
}

fieldset.form-fields li
{
    padding-bottom: 0.8em;
    float: left;
    width: 100%;
    line-height: normal;
}

.form-top fieldset.form-fields li.half
{
    width: 50%;
}

fieldset.form-fields li.nospacing
{
    padding-bottom: 0;
}

.form-top fieldset.form-fields label
{
    display: block;
    position: relative;
    padding-bottom: 0.2em;
}

.form-left fieldset.form-fields label
{
    position: relative; /* added in order to position the 'required' indicator */
    float: left;
    width: 10em;
    margin-right: 1em;
    margin-top: 0.2em;
}

.form-left fieldset.form-fields .no-leading-label input
{
    margin-left: 11em;
}

fieldset.form-fields .checkbox input
{
    margin-top: 0.2em;
    background-color: #FFFFF0;
}

.form-top fieldset.form-fields .checkbox label, .form-top fieldset.form-fields .radio label
{
    display: inline;
    margin-left: 1em;
    margin-top: 0.2em;
}

.form-left fieldset.form-fields .checkbox label, .form-left fieldset.form-fields .radio label
{
    float: none;
    width: auto;
    margin-right: 0;
    margin-left: 1em;
}

.align-right fieldset.form-fields label
{
    text-align: right;
}

.form-top fieldset.form-fields label img.required
{
    display: none;
    position: absolute;
    left: 16em;
    top: 1.9em;
}

.form-top fieldset.form-fields label span.required
{
    position: absolute;
    left: 16em;
    top: 1.5em;
    font-style: normal;
    font-weight: normal;
    font-family: inherit;
}

.form-top fieldset.form-fields .wide label span.required
{
    left: 51em;
}

.form-left fieldset.form-fields label img.required
{
    display: none;
    position: absolute;
    left: 9.8em;
    top: 0.3em;
}

.form-left fieldset.form-fields label span.required
{
    display: block;
    font-style: normal;
    font-weight: normal;
    position: absolute;
    left: 0em;
    top: 1.0em;
    font-family: inherit;
}

.form-top fieldset.form-fields label .validation-message
{
    padding-left: 0.5em;
    font-weight: normal;
}

.form-left fieldset.form-fields label .validation-message
{
    position: absolute;
    left: 27em;
    font-weight: normal;
    width: 30em;
    display: inline;
    font-size: 1em;
    text-transform: none;
}

fieldset.form-fields input.text
{
    width: 15em;
    background-color: #FFFFF0;
}

fieldset.form-fields .wide input.text
{
    width: 50em;
}

fieldset.form-fields select
{
    width: 15em;
    background-color: #FFFFF0;
}

fieldset.form-fields .wide select
{
    width: 50em;
}

.form-top .help-text, .form-left .help-text
{
    display: block;
    margin-top: 0.2em;
    margin-bottom: 1em;
}

.form-top .form-fields .help-text, .form-left .form-fields .help-text
{
    margin-bottom: auto;
}

.form-top .error-message, .form-left .error-message
{
    display: block;
    color: #FF0000;
    padding: 0.5em;
    margin: 0.5em 0 0.5em 0;
    border: solid 1px #FF0000;
    background-color: #FFFFF0;
}

.form-left fieldset.form-fields .help-text
{
    padding-left: 11em;
}


/* Nested fieldset for checkbox and radio buttons */
.form-top fieldset.form-fields fieldset, .form-left fieldset.form-fields fieldset
{
    border-style: none;
    margin-bottom: 0em;
}

fieldset.form-fields fieldset legend
{
    color: #000000;
    font-weight: normal;
    margin-left: 0;
    padding: 0;
    padding-bottom: 1.0em;
}

.form-left fieldset.form-fields fieldset legend.no-leading-label
{
    padding-left: 11em;
}

fieldset.form-fields fieldset legend span
{
    font-size: 1em;
    position: static;
    margin-top: auto;
}

.form-top fieldset.form-fields fieldset ol
{
    padding: 0 0 0 2em;
}

.form-left fieldset.form-fields fieldset ol
{
    position: relative;
    margin: 0 0 0 13em;
    padding: 0;
}

fieldset.form-fields fieldset.horizontal legend
{
    padding-bottom: 0.2em;
}

fieldset.horizontal li
{
    float: none;    /* reset */
    width: auto;    /* reset */
    padding-bottom: 1.0em;
    display: inline;
    padding-right: 2em;
}

fieldset.horizontal li .radio
{
    white-space: nowrap;
    display: inline-block;
    width: 25%;
}

fieldset.form-fields fieldset label
{
    float: none;
    width: auto;
    margin-right: auto;
}

fieldset.form-fields input.wide
{
    width: 50%;
}

fieldset.form-fields textarea.wide
{
    width: 100%;
}

.form-top fieldset.form-fields legend img.required
{
    display: none;
}

.form-top fieldset.form-fields legend span.required
{
    font-style: normal;
    font-weight: normal;
    font-family: inherit;
}

.form-top fieldset.form-fields legend span span.required
{
    padding-left: 0.5em;
}

.form-top fieldset.form-fields legend span .validation-message
{
    display: block;  
}

.form-top fieldset.form-fields fieldset.one-line legend
{
    position: absolute;
}
.form-top fieldset.form-fields fieldset.one-line ol
{
    margin-left: 10em;
}

.validation-summary li
{
    color: #FF0000;
}

.validation-summary ol
{
    padding-bottom: 1em;
}
