/** ----------------------------------------------------------
 *
 * This stylesheet includes both generic form styles and 
 *    additional form styles for the User Defined Form Module.
 *
 ** ------------------------------------------------------- */
/* GENERIC FORMS
----------------------------------------------- */
form {
  max-width: 500px;
  width: 50%;
}

div.field {
  margin: 10px 0 15px;
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

form label {
  margin-bottom: 5px;
}

form label.left {
  display: block;
  font-weight: bold;
}

form label.right {
  /* font-size: 12px; */
  float: none!important;
}

form input.text,
form textarea,
form .textajaxuniquetext,
form select {
  width: 100%;
  max-width: 400px;
  padding: 6px 5px;
  font-size: 15px;
  background-color: #fff;
  border: 1px solid #dad9d9;
}

.ie7 form select {
  width: 400px;
}

/* fix for ie7's rendering of max-width property on select input */
form input.text:focus,
form textarea:focus,
form .textajaxuniquetext:focus,
form select:focus {
  outline: none;
}

form input[disabled], form textarea[disabled] {
  background-color: #f7f7f7;
  border: 1px solid #dad9d9;
}

textarea {
  resize: vertical;
  /* forces text area to be resized vertically only */
}

/* Radio and Checkbox */
.field .checkbox, .field .radio {
  float: left;
  width: 13px;
  height: 13px;
  margin-right: 6px;
  margin-top: 3px;
  padding: 0;
}

.checkbox label.right,
.radio label.right {
  float: left;
}

/* Messages */
form .message {
  background-color: #fef4ba;
  padding: 5px 10px;
  border: 1px solid #e8c805;
  border-radius: 3px;
}

form .good {
  background-color: #ecf9d0;
  border-color: #8fbe00;
}

form .bad, form .required {
  background-color: #f9d0d0;
  border-color: #cf0000;
  color: #b80000;
}

/* ACTIONS */
.Actions {
  margin-bottom: 20px;
}

a.btn, button, input[type="submit"], .Actions .action {
  background: #005428;
  color: #fff;
  display: inline-block;
  border-radius: 4px;
  padding: 6px 15px;
  margin-top: 10px;
  margin-bottom: 10px;
  text-transform: uppercase;
  letter-spacing: 1px;
  border: none;
  font-size: 13px;
  margin-right: 10px;
  float: left;
}

a.btn:hover, button, input[type="submit"]:hover, .Actions .action:hover {
  background: #006731;
  color: #fff;
}

a.btn {
  line-height: 18px;
  margin-bottom: 10px;
}

a.btn:after {
  /* creates arrow in button */
  content: '\2192';
  padding-left: 10px;
}

.ie7 input.action {
  width: 0;
  /* IE table-cell margin fix */
  overflow: visible;
}

input.action[class] {
  /* IE ignores [class] */
  width: auto;
  /* cancel margin fix for other browsers */
}

.ie7 .Actions .action {
  float: left;
}

.Actions:after {
  color: #B94A48;
  display: inline-block;
  font-weight: normal;
  margin-top: 9px;
}

#MemberLoginForm_LoginForm .Actions:after {
  display: none;
}

/* AREA SPECIFIC */
/* LOGIN and FORGOT PASSWORD */
#Remember {
  min-height: 20px;
}

#ForgotPassword {
  clear: left;
}

#MemberLoginForm_LostPasswordForm .Actions:after {
  display: none;
}

/* Search / Login */
.header form .middleColumn {
  /* float: none;
  width: 100% !important; */
}

/* USER DEFINED USER FORM MODULE STYLES
----------------------------------------------- */
/*Generic and mixed*/
.FormHeading {
  clear: both;
  padding-top: 15px;
}

form .date .middleColumn input {
  /*background: transparent url(../images/icons/your_icon_here.png) no-repeat scroll 90px 5px;*/
  width: 114px;
}

.Actions input.resetformaction,
.Actions input.action-minor {
  /* Clear button */
  float: left;
  background-color: #888;
}

.Actions input.resetformaction:hover,
.Actions input.action-minor:hover {
  /* Clear button */
  background-color: #aaa;
}

/* Labels */
.checkbox label.right {
  /* font-size: 13px;  */
  /* reset to default */
  font-weight: bold;
}

form .requiredField label.left:after {
  /* pseudo element adds an asterisk to a required fields label */
  color: #B94A48;
  content: "*";
  font-size: 14px;
  font-weight: normal;
  padding-left: 3px;
}

/* Radio / Checkbox */
form .checkboxset ul,
form .optionset ul {
  margin: 0;
  clear: both;
}

form .checkboxset li,
form .optionset li {
  margin-bottom: 5px;
  list-style-type: none;
}

form div.checkbox:after {
  /* clearfix */
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

form .checkbox .checkbox {
  clear: both;
}

/* Messages */
span.message {
  margin: 10px 0;
  display: block;
  max-width: 390px;
  clear: left;
}

div.holder-required {
  /* This class needs to be changed - is used for both input and div */
  /* background-color: #f9d0d0;
  border: 1px solid #cf0000;
  padding: 10px;
  margin-left: -11px; */
}

form input.holder-required {
  /* This class needs to be changed - is used for both input and div */
  border: 1px solid #cf0000;
}

/* Error messages */
input:invalid,
textarea:invalid {
  border-radius: 1px;
  -moz-box-shadow: 0px 0px 5px red;
  -webkit-box-shadow: 0px 0px 5px red;
  box-shadow: 0px 0px 5px red;
}

.no-boxshadow input:invalid,
.no-boxshadow textarea:invalid {
  background-color: #f0dddd;
}

/* To test - potentially not needed? */
.ss-uploadfield-item-info button {
  margin-top: 4px !important;
  float: left;
}

form .creditCardField input,
form input.currency,
form input.numeric {
  width: 50px;
}

form #DMYDate-month,
form #DMYDate-day {
  width: 25px;
}

.filterForm form {
  max-width: initial;
  width: initial;
}
.filterForm form fieldset ul {
  position: relative;
  left: 2%;
}
.filterForm form fieldset ul label {
  margin-left: 20%;
}
.filterForm form fieldset ul.checkboxset li {
  white-space: nowrap;
  width: 28%;
}
.filterForm form fieldset li {
  cursor: pointer;
  width: 28%;
  display: inline-block;
  padding-right: 0.4em;
  padding-right: 0.84528%;
  padding-right: 2%;
  margin-right: 4%;
  min-width: 10em;
}
.filterForm form fieldset input[type=checkbox] + label {
  display: inline-block;
  cursor: pointer;
  position: relative;
  background-color: #f2f2f2;
  white-space: nowrap;
  font-family: "HelveticaNeueLTCom55Roman", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
  font-size: 0.68em;
  padding: 5% 28% 3% 5%;
  width: 100%;
  min-width: 10em;
  -webkit-border-radius: 0 0.4em 0.4em 0;
  border-radius: 0 0.4em 0.4em 0;
  background-clip: padding-box;
  /* stops bg color from leaking outside the border: */
}
.filterForm form fieldset input[type=checkbox] + label:before {
  content: "";
  display: inline-block;
  cursor: pointer;
  position: absolute;
  top: 0;
  background-color: #d9d9d9;
  background-color: #005428;
  height: 100%;
  -webkit-border-radius: 0.4em 0 0 0.4em;
  border-radius: 0.4em 0 0 0.4em;
  background-clip: padding-box;
  /* stops bg color from leaking outside the border: */
  padding: 5%;
  margin-right: 20%;
  left: -20%;
  width: 20%;
}
.filterForm form fieldset input[type=checkbox] {
  display: none;
  clear: none;
  cursor: pointer;
}
.filterForm form fieldset input[type=checkbox]:not(:checked) + label:before {
  content: "\00a0";
  background-color: #f2f2f2;
}
.filterForm form fieldset input[type=checkbox]:checked + label:before {
  content: "\2713";
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
  font-family: "HelveticaNeueLTCom55Roman", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
  color: #f3f3f3;
  text-align: center;
  line-height: 15px;
}

/* Responsive form styles
----------------------------------------------- */
@media only screen and (max-width: 700px) {
  /* To test - potentially not needed? */
  .header form .middleColumn {
    float: none;
    width: 100% !important;
  }

  form label.left,
  #MemberLoginForm_LoginForm label {
    margin-bottom: 8px;
  }
}
@media only screen and (max-width: 900px) {
  form {
    max-width: 100%;
  }
}
