/* Generic form styles */
form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; *overflow: visible; }
table button, table input { *overflow: auto; }
button, 
input[type="button"], 
input[type="reset"], 
input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
input[type="checkbox"], 
input[type="radio"] { box-sizing: border-box; }
input[type="search"] {color: #686e62; -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }

.webform-grid input[type=radio] { height: 1.7em; width: 1.7em; } /* increase size of radio buttons when there is no label */

/* Hide nasty Chrome specific form field elements */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button, 
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none;  margin: 0; }

button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:not([type=submit]):focus, 
textarea:focus {  }
input:valid, textarea:valid {  }
input:focus:invalid, textarea:focus:invalid { background-color: #f0dddd; }

/* override webform module inline label format while all labels are inline */
.webform-container-inline label { margin:0 }

legend { font-size: 18px; font-weight: bold; }
#edit-field-dob legend { font-size: 12px; padding: 0 1em; }
#edit-field-dob fieldset { border: 1px solid #E8E8E8; padding: 0; }
.frow { margin: 7px 0; font-size: 12px; position: relative; }
/* New lines are added for each form individually because we don't want them for the supporter survey. */
.webform-component, 
.form-submit,
.ctools-custom-content-type-edit-form .form-item, /* wont need this if the admin theme module works */
.uc-cart-checkout-form  .form-item,
.add-to-cart .form-item,
.user-login .form-item, 
.user-login .form-actions, 
.user-register-form  .form-item, 
.user-register-form  .form-actions, 
.user-profile-form .form-item,
.user-profile-form .form-actions,
.user-pass  .form-item,
.user-pass  .form-actions,
.relation-ui-edit-form   .form-item,
.uc-order-mail-invoice-form  .form-actions,
.oxfam-events-team-member-invitation-form   .form-item,
.oxfam-events-team-member-add-member-form   .form-item,
.team-node-form  .form-item,
.team-node-form  .form-actions,
.unwrapped-shop-giftcard-form .form-item,
.unwrapped-shop-giftcard-form .form-actions,
.team-update-node-form .form-item,
.team-update-node-form  .form-actions,
.oxfam-donations-add-form  .form-item,
.field-name-field-additional-markup,
.form-item-panes-billing-select-address { clear: both; }
.webform-component:after, 
.form-actions:after,
.form-type-radios:after { clear: both; content: "."; display: block; height: 0; visibility: hidden; } 

.form-item-mollom-captcha input { margin: 0.5em 0 1em 0; }
.field-name-field-additional-markup { padding-top: 1em; }

.content-col .frow label { color: #333; font-weight: bold; padding-top: 5px; padding-bottom: 5px;}

/* align labels for frows added for each form individually - doesn't work for textareas, so for forms containing them each field type must be done separately */
.content-col .webform-container-inline label,
.team-node-form .form-type-textfield label,
.team-node-form .form-type-managed-file label,
.user-login label, 
.user-register-form  label, 
.user-profile-form  label, 
.user-pass label  { float: left; color: #333; font-weight: bold; width:130px; padding-top: 8px; padding-right: 26px; padding-bottom: 0px; text-align: right; }

/* additional float for date fields override Drupal */
.date-clear { clear: none; }

.team-node-form .description { border-bottom: 23px solid #fff; }

/* supporter survey over ride */
.page-node-7675 #webform-component-1a label,
.page-node-7675 #webform-component-1b label,
.page-node-7675 #webform-component-1c label,
.page-node-7675 #webform-component-1d label,
.page-node-7675 #webform-component-1e label,
.page-node-7675 #webform-component-1f label,
.page-node-7675 #webform-component-1g label,
.page-node-7675 #webform-component-1h label,
.page-node-7675 #webform-component-1i label,
.page-node-7675 #webform-component-1j label,
.page-node-7675 #webform-component-5a label,
.page-node-7675 #webform-component-5b label,
.page-node-7675 #webform-component-5c label,
.page-node-7675 #webform-component-5d label,
.page-node-7675 #webform-component-5e label,
.page-node-7675 #webform-component-5f label,
.page-node-7675 #webform-component-5g label { width:480px; text-align: left; font-weight: normal; }
.page-node-7675 #webform-component-question-1, 
.page-node-7675 #webform-component-question-3, 
.page-node-7675 #webform-component-question-10, 
.page-node-7675 #webform-component-q10-other { display:none; } /* hide OLD questions in the supporter survey */
.page-node-7675 .webform-component-checkboxes label,
.page-node-7675 .webform-component-textfield  label,
.page-node-7675 .webform-component-webform_grid label,
.page-node-7675 .webform-component-textarea label,
.page-node-7675 .webform-component-radios label,
.page-node-7675 .webform-component-markup label { font-size: 14px; }
.page-node-7675 .webform-component-checkboxes label.option, 
.page-node-7675 .webform-component-radios label.option { font-size: 12px; padding: 0; }
.page-node-7675 .webform-container-inline label  { font-size: 12px !important; }
.page-node-7675 .webform-component--question-7-box .options { margin-left: 330px; }
.page-node-7675 .webform-component--question-3-box .options { margin-left: 450px; }
.page-node-7675 .webform-component--question-7-box .th { width: 80px; float: left; font-weight: bold; }
.page-node-7675 .webform-component--question-3-box .th { width: 90px; float: left; font-weight: bold; }
.page-node-7675 .webform-component--question-7-box label { text-align:left; width: 280px; }
.page-node-7675 .webform-component--question-3-box label { text-align:left; width: 450px; }
.page-node-7675 .webform-component--question-7-box .form-checkboxes, .page-node-7675 .webform-component--question-3-box .form-checkboxes { float: right; }
.page-node-7675 .webform-component--question-7-box .webform-component-markup label, .page-node-7675 .webform-component--question-3-box .webform-component-markup label { text-align:left; width: 100%; }
.page-node-7675 .webform-component--question-7-box  label.option, .page-node-7675 .webform-component--question-3-box  label.option { display: none; }
.page-node-7675 .webform-component--question-7-box .form-checkboxes div, .page-node-7675 .webform-component--question-3-box .form-checkboxes div { width: 80px; float: left; display: inline; }
.page-node-7675 .webform-component--question-7-box .webform-component-checkboxes, .page-node-7675 .webform-component--question-3-box .webform-component-checkboxes  { background-color: #eee; border-bottom: 1px solid #ccc; padding: 0.1em 0.6em; height: 28px; margin:0px;}
.page-node-7675 .webform-component--question-7-box .webform-component:after, .page-node-7675 .webform-component--question-3-box .webform-component:after { display: inline !important; clear: none !important; }
 /* end supporter survey over ride */
.frow label em { color: #a81919; }
input[type="text"], 
input[type="email"], 
input[type="number"], input.form-number,
input[type="file"],
input[type="password"],
input[type="tel"] { 
float: left;  
box-sizing: border-box;
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box; 
}
.frow input:focus { outline: none; }
.frow select:focus { outline: dotted 1px #333; }
.frow-text input { border: 1px solid #dadada; padding: 3px; height: 22px; background: #fdfdfc; }
.frow-radio input { display: inline-block; float: none; }
.frow-radio label { display: inline-block; float: none; }
.frow-action { margin-left: 156px; font-size: 16px; }
.frow-action input[type="submit"] { width: auto; }
.frow .error { color: #a81919; }
.frow input[type="submit"] { border: 0 none; background: transparent; color: #fff; font-size: 18px; height: 28px; padding: 3px; }
.frow-combined select,
.frow-combined input { height: 28px; float: left; }
.frow .arrow-btn { float: left; padding: 5px 10px 2px 10px; height: 28px; }
.frow .arrow-btn:before { border-width: 17px; }
.ie7 .frow { width:100%; }

/* grid questions */
.webform-grid td{ padding: 3px 5px;} 
.webform-grid-5 .webform-grid-option { min-width: 40px; }
.webform-grid-4 .webform-grid-option { min-width: 70px; }
.webform-grid-3 .webform-grid-option { min-width: 90px; }
.webform-grid-2 .webform-grid-option { min-width: 100px; }

/* microformat */
address { display: block; }
address .arow { display: block; font-style: normal; line-height: 18px; }
address .arow:after { content:","; }
address .org { font-weight: bold; color: #333; font-size: 15px; }
address .postal-code:after { content: ""; }
address { font-size: 13px; letter-spacing: 1; }
.arrow-btn input { font-size: 13px; font-weight: bold; }
.arrow-btn-short input { padding-bottom: 6px; }

.generic-form header { padding: 0 20px ; }

/* form themes */
.form-accolades { background: white url(../images/form/form-accolade-pattern.png) center 0 no-repeat; margin-bottom: 20px; padding: 20px 15px 10px 15px; border-bottom: 3px solid rgba(170, 170, 170, .5); }
.form-accolades li { border:none; background:none; }
.form-accolades li img { display:block; margin-left:auto; margin-right:auto; padding: 10px 10px; }


.content-col fieldset { padding: 20px; }
.content-col fieldset fieldset { padding: 0; margin-bottom: 20px; border-bottom:3px solid #f6f5ec; }
.content-col fieldset fieldset:last-of-type { border: 0 none; margin-bottom: 0; }
.content-col input[type="text"],
.content-col input[type="number"], .content-col input.form-number,
.content-col input[type="email"],
.content-col input[type="file"],
.content-col input[type="password"],
.content-col input[type="tel"] { background: #fefefd; border: solid 2px #e8e8e8;  outline: none; padding: 5px; width:220px;}
.content-col input[size="80"] { width:330px; }
.content-col input[size="100"] { width:420px; }
.content-col input[type="number"], .content-col input.form-number { width:40px;}
.content-col textarea  { background: #fefefd; border: solid 2px #e8e8e8;  outline: none; padding: 5px; }
.content-col select  { background: #fefefd; border: solid 2px #e8e8e8;  outline: none; padding: 2px; }
.content-col button, #edit-field-team-photo-und-0-remove-button { padding: 10px 15px 8px 15px; font-size: 18px; font-weight: bold; border-bottom: 2px solid #DEDEDE; position: relative; color: white; background: #F16E22; background-image: url(../images/global/arrow-7.png); background-position: right 50%; background-repeat: no-repeat; display: inline-block; }

.your-donation ul li { float:left; display:block; padding-left:30px; padding-top: 8px; margin-top:7px; margin-bottom: 25px; }
.your-donation ul li:last-child { padding-top: 0; padding-left:20px; }
.your-donation ul li:last-child input { margin-left: 10px; }
.your-donation ul li:last-child label { float: left; padding-top: 8px; }
.your-donation ul li input#other { width:53px; }

.your-details li { margin: 6px 0; } 
.your-details .frow { }
.your-details .frowlabel { display: block; width: 130px; text-align: right; float: left; padding-right: 26px; padding-top: 8px; }
.your-details .frow input {  display:block; float:left; }
.your-details .postcode { float: left; margin-top: 0px; padding-left: 15px; }
.your-details .frow input#postcode { width:80px }
.your-details .frow .postcode a { font-size:12px; line-height: 20px; height: 22px; }
.your-details .continue { padding-left:156px }
.your-details .frow .arrow-btn:before { border-width: 14px;  top: 0px; }
@-moz-document url-prefix(){
	.your-details .frow .arrow-btn:before { border-width: 15px;  top: 0px; }
}
.your-details .postcode-manual { clear:both; }
.your-details .phone-requirement { padding-left: 16px; margin-bottom: 10px; padding-top: 9px; float: left; display: block; }

.optional { float: left; margin-left: 156px; width: 380px; color:#686e62; font-size:11px }

.banking-details li { margin: 8px 0; } 
.banking-details .frow { float:left; display:block; padding-left: 0px; margin-top:7px; margin-bottom:7px; }
.banking-details .frow label { display: block; width: 130px; text-align: right; float: left; padding-right: 26px; padding-top: 8px; }
.banking-details .frow input {  display:block; float:left; }
.banking-details .frow input#sortcode { width:80px; }

.disclaimer { float: left; margin: 5px 0 5px 156px; width: 380px; color:#686e62; font-size:11px }

.details { display:block; margin-left: 158px; clear:both; margin-bottom:25px; }
.details ul { clear:both; padding-left: 0px; }
.details ul li { float:left; display:block;  }
.details ul li:last-child { padding-left:20px;  }
.details h3 { color:#333333; }
.details p { font-size:11px; color:#666666; width:400px }
.details .donate-now { margin-top:20px; margin-bottom:40px; }

/* add to cart styles */
.cart-wishlist label { font-weight: bold; }
.cart-wishlist label, .cart-wishlist .form-text { font-size: 16px; }
.cart-wishlist .form-type-radio label { font-size: 12px; }
.cart-wishlist .form-item-qty  input { margin: 5px 20px 0px 0px; }
.cart-wishlist input[type="text"] { float: none; clear: both; display:block; }

/* views styles */
.views-exposed-form .views-exposed-widget .arrow-btn .form-submit { margin-top: 0; }

/* fundraising commitment $ prefix */
#field-fundraising-target-add-more-wrapper span.field-prefix {
	float: left;
	padding-top: 4px;
	font-size: 16px;
	padding-right: 5px;
}
/* Weirdly the only way I could get it to clear after the fundraising commitment field was to have a border */
#field-fundraising-target-add-more-wrapper { display: block; border: 1px solid #fff;}
/* add a stormtrooper */
div.frow-action  { margin-top: 1em;}

