body {
  line-height: 1.4;
}

a, input, select, textarea {
  outline: none;
}

h1,h2,h3,h4,h5,h6,
strong, strong *, * strong  { font-weight: bold; }
em, em *, * em              { font-style: italic; }

img {
  background-color: transparent;
}

h1        { font-size: 138.5%;  } /*18px*/
h2        { font-size: 123.1%;  } /*16px*/
h3        { font-size: 108%;    } /*14px*/
h1,h2,h3  { margin: 1em 0;      } /* top & bottom margin based on font size */

abbr,acronym {
  border-bottom: 1px dotted #000;
  cursor: help;
}

blockquote { margin: 1em; }

caption {
  margin-bottom:.5em;
  text-align:center;
}

p,fieldset,table {
  margin-bottom:1em;
}

small {
  font-size: 93%;
}

/* default table styles
-------------------------------------------------------------------------*/

table {
  width: 100%;
}

th,td {
  padding:  2px 2px 2px 5px;
  vertical-align: top;
}

th {
  font-weight:bold;
  text-align:center;
  color: #fff;
  background-color: #555;
  border-bottom: 1px solid #333;
}

td {
  border-bottom: 1px solid #eee;
}



/* list styles
----------------------------------------------------------------------------------*/

.disc,
.decimal,
.upper_roman,
.lower_roman,
.upper_alpha,
.lower_alpha,
.no_style {
  margin: 1em;
  margin-left: 2em;
}

.disc         li { list-style-type: disc;        }
.decimal      li { list-style-type: decimal;     }
.upper_roman  li { list-style-type: upper-roman; }
.lower_roman  li { list-style-type: lower-roman; }
.upper_alpha  li { list-style-type: upper-alpha; }
.lower_alpha  li { list-style-type: lower-alpha; }
.no_style     li { list-style-type: none; }

.disc li,
.no_style li,
.decimal li,
.upper_roman li,
.lower_roman li,
.upper_alpha li,
.lower_alpha li {
  text-align: left !important;
  margin-bottom: 5px;
}

/* forms
--------------------------------------------------------------------------------------*/

form label {
  color: #535F62;
  cursor: pointer;
  font-weight: bold;
}

form input.text,
form textarea {
  padding-top: 3px;
}

form input.text {
  height: 17px;
  line-height: 20px;
}

form textarea {
  height: 67px;
  vertical-align: top;
}

form select {
  height: 27px;
  padding-top: 2px;
  line-height: 1.4; /* set this to the project's line-height to make it the same height as other input elements */
}

.inline_radios input {
  background: none;
  border: 0 !important;
  background: none;
  padding: 0;
}

input.checkbox,
input.radio {
  vertical-align: text-top;
  margin-right: 0.5em;
}

input[type=file] {
  border: 0;
  background-image: none; /* safari */
  background-color: transparent; /* safari */
}

form dl {
  margin-bottom: 0;
}

form dt,
form li label,
legend {
  margin-bottom: 0;
}

form dd {
  margin-bottom: 5px;
}

fieldset {
  border: 0;
  width: 100%;
}

textarea {
  clear: both;
  height: 10em;
}

/* Standard ul form styles
-----------------------------------------------------------------------------------*/

.std_form li,
dl.std_form {
  width: auto;
  padding: 10px 0;
}

.std_form li {
  border: 1px solid #fff;
  padding: 1px 9px 7px;
}

.compact_form .std_form li {
  border: 0;
  padding: 0;
  background-color: transparent !important;
}

.required span,
.date_time span,
#image_uploader label span {
  margin-left: 3px;
  color: #B83F1D;
}

.focus,
.error.focus,
.focus p.error {
  background-color: #fff9d8;
}

.std_form li.error,
.std_form li.error span.msg {
  color: #000;
}

.std_form li.focus {
  border-color: #FED600;
}

.std_form p.instructions {
  color: #535F62;
  font-size: 85%;
  line-height: 150%;
}

#session .std_form li label {
  padding-left: 0;
}

.submit {
  margin: 1em 0;
  padding-left: 10px;
}

#session .std_form.sign li label {
  color: #1d2122;
}

.std_form li label {
  display: block;
}

.std_form li.checkbox {
  position: relative;
  padding-top: 7px;
}

.std_form li.checkbox label {
  margin-left: 20px;
}

.std_form li.checkbox input {
  position: absolute;
  left: 8px;
  top: 9px;
}

.std_form li.checkbox.error input {
  top: 44px;
}

.std_form .submit,
.std_form .left_form_indent,
.std_form .password_recover {
  margin-bottom: 0;
}

.std_form li.submit,
.std_form p.submit,
.std_form .left_form_indent,
.std_form li.password_recover {
  width: auto;
  background-color: transparent !important;
  border: none;
}

.std_form li input.text,
.std_form li textarea {
  width: 98%;
}

.std_form input.file {
  width: 91%;
}

.std_form li.date_time select {
  width: auto;
}

.std_form li.date_time dt,
.std_form li.date_time dd {
  display: inline;
}

.std_form .error p.error {
  color: #cc0000;
  font-size: 93%;
  line-height: 150%;
  margin: 1em 0 0;
  padding: 0 0 0 20px;
  background: url(/images/bg_error.png) 0 0 no-repeat;
}

.std_form .submit span {
  color: #6B7A7E;
  font-size: 12px;
}

.left_form_indent {
  color: #6B7A7E;
  font-size: 12px;
}

.std_form li.password_recover,
.std_form li.create_account,
p.create_account {
  margin: 10px 0;
  padding: 10px;
  border-top: 1px dotted #ccc;
}

.sign {
  margin: 20px 0;
  width: 300px;
}

/* messaging
---------------------------------------------------------------------------------*/

#flash_notice,
.flash_notice,
#flash_error,
.errorExplanation {
  z-index: 1000;
  margin: 0 0 2em;
  padding: 1em;
  font-weight: bold;
  border: 1px solid #000;
  color: #000;
}

#flash_notice,
#flash_error {
  text-align: center;
}

.errorExplanation {
  margin-bottom: 1em;
  text-align: left;
  font-weight: normal;
}

#flash_error,
.errorExplanation {
  border-color:     #ff0000;
  background-color: #ffecec;
}

#flash_notice,
.flash_notice {
  border-color:     #FED600;
  background-color: #FFFBE5;
}

.errorExplanation h2 {
  font-size: 123.1%;
  margin-bottom: .5em;
}

.errorExplanation ul li {
  margin: 1em 3em;
  list-style-type: disc;
  list-style-position: outside;
}

p.error {
  white-space: nowrap;
}

p.error a {
  color: #ff0000;
  text-decoration: none;
}

p.error a:hover {
  text-decoration: underline;
}

p.notice a {
  color: #1D96B8;
}

#errorExplanation.errorExplanation h2,
#errorExplanation.errorExplanation p,
#errorExplanation.errorExplanation ul {
  margin: 0;
  font-size: 93%;
}

#errorExplanation.errorExplanation ul {
  margin: 0.25em 0 0 2em;
}

#errorExplanation.errorExplanation h2 {
  font-weight: bold;
}

dt.error .field_with_errors,
dt.error span.required,
.errorExplanation ul li {
  margin: 0;
}

/* file uploader
------------------------------------------------------*/

#image_uploader,
#profile_image_uploader {
  clear: both;
  height: auto;
}

#old_profile_image,
#old_image,
.image_mask {
  width: 75px;
  height: 75px;
}

#old_profile_image,
#old_image {
  position: relative;
  height: 74px;
  margin-top: -17px;
  margin-left: 30%;
  width: 50%;
  padding: 5px;
  border: 1px solid #ececec;
  background-color: #fff;
}

#old_profile_image img,
#old_image img {
  width: 74px;
  height: 74px;
}

.image_mask {
  display: block;
  overflow: hidden;
}

#old_profile_image .file_meta,
#old_profile_image a,
#old_image .file_meta,
#old_image a {
  position: absolute;
  left: 80px;
  width: 225px;
  padding-left: 20px;
}

#old_profile_image a,
#old_image a {
  top: 25px;
  display: block;
  background: url("/images/trash.gif") 6px 4px no-repeat;
}

#old_profile_image .file_meta,
#old_image .file_meta {
  top: 45px;
  font-size: 0.8em;
  color: #666;
}

.hidden {
  display: none; /* this is for all hidden fields that have a class "hidden" */
}

li.error .fieldWithErrors label,
li.error .fieldWithErrors .fieldWithErrors {
 display: inline-block;
}

li.error .fieldWithErrors .fieldWithErrors span {
  color: #fff;
}
