p.center {
    text-align: center;
}
p.clear {
    clear: both;
    float: none;
}
p.center img {
    padding: 20px;
}
img.right {
    padding-left: 20px;
    float: right;
}
img.left {
    padding-right: 20px;
    float: left;
}

input, textarea, select {
    outline: 0;
}

form.default {
    background:#fff;
    padding:1em;
    border:1px solid #eee;
    margin:1em 0 1em 0;
}
form.default, .default_no_padding {
    padding: 0;
}
form.default fieldset div {
    margin:0.3em 0;
    clear:both;
}
form.default label {
    float:left;
    width:14em;
    text-align:right;
    margin-top:1em;
    margin-right:1em;
}
form.default legend {
    color:#0b77b7;
    font-size:1.2em;
}
form.default legend span {
    width:10em;
    text-align:right;
}
form.default span.input {
    float:left;
    margin-top:1em;
    padding:0.15em;
    width:18em;
    color: #333;
    font: 1em arial, sans-serif;
}
form.default input, form.default select, form.default textarea {
    margin-top:1em;
    padding:0.15em;
    width:18em;
    border:1px solid #ddd;
    background:#fafafa;
    color: #000;
    font: 1em arial, sans-serif;
    -moz-border-radius:0.4em;
    -khtml-border-radius:0.4em;
}
form.default input:hover, form.default input:focus, form.default textarea:hover, form.default textarea:focus, form.default select:hover, form.default select:focus {
    border-color:#c5c5c5;
    background:#f6f6f6;
} 
form.default input.button, form.default a.button {
    width: auto;
    padding:0.3em;
    font: bold 1em arial, sans-serif;
    margin-left: 15em;
    color: #000;
}
form.default input.button:hover, form.default input.button:focus {
    background:#666;
    color: #fff;
}
form.default input.long, form.default textarea.long, form.default input.compact, form.default textarea.compact, form.default select.compact {
    width: auto;
}
form.default input.checkbox {
    width: auto;
}
form.default input.multi_checkbox {
    width: auto;
    margin: 0;
}
form.default fieldset {
    border:1px solid #ddd;
    padding:0 0.5em 0.5em;
}
.date input {
    background-image:url(/img/calendar-small.gif);
    background-repeat:no-repeat;
    background-position:100% 50%;
}

.date fieldset label {
    float:none;
    display:block;
    text-align:left;
    width:auto;
}
.date fieldset div {
    float:left;
    clear:none;
    margin-right:0.2em;
}
.radio, .date {
    position:relative;
}
.radio fieldset, .date fieldset {
    border:none;
    width:auto;
    padding:1px 0 0 11em;
}
.radio legend, .date legend {
    font-size:1em;
    color:#000;
}
.radio legend span, .date legend span {
    position:absolute;
    left:0;
    top:0.3em;
    width:10em;
    display:block;
}
.radio label, .radio input {
    vertical-align:middle;
    display:inline;
    float:none;
    width:auto;
    background:none;
    border:none;
}
.radio div {
    float:left;
    white-space:nowrap;
    clear:none;
}

.email {
    width:14em;
}

input.default {
    color:#bbb;
}

form.default p {
    margin-left: 15em;
}
form.default p.wide {
    margin-left: 0;
}
form.default_no_padding p {
    margin-left: 16.5em;
}
form.default div.highlight {
    border: 1px #ff0000 solid;
}

form.default div.required label:after {
    content: '*';
}
div.FormThankyou {
    background:#fff;
    padding:2em;
    border:1px solid #eee;
    margin:1em 0 1em 0;
}
div.FormThankyou h2, div.FormThankyou p {
    text-align:center;
}

/* some basic table formatting as well */
.definition_table {
    border: 0;
    padding: 0;
    width: 100%;
}
.definition_table tr {
    padding: 0;
}
.definition_table th {
    padding: 0 8px 0 0;
    vertical-align: top;
    font-weight: bold;
}
.definition_table td {
    vertical-align: top;
    padding: 0 0 8px 0;
}
