@charset "utf-8";
/* CSS Document */

/*form header {
  margin: 0 0 20px 0; 
}
form header div {
  font-size: 90%;
  color: #999;
}
form header h2 {
  margin: 0 0 5px 0;
}*/

.rowIndent {
	padding-left: 1.5em;
}
.formRowLine {
	border-bottom: 1px solid #C0C0C0;
}
.formHeading {
	color: #fff;
	padding: 5px;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
    -khtml-border-radius: 6px;
    border-radius: 6px;
	margin-bottom: 6px;	
}

form  div.rowDetail {
  clear: both;
  overflow: hidden;
  /*padding: 1px;*/
  /*margin: 5px 0 5px 0;*/
  margin-top: 5px;
  margin-bottom: 5px;
  line-height: 1.2em;
}
/*form  div.rowDetail > fieldset > div > div {
  margin: 0 0 5px 0;
}*/
form  div.rowDetail > label {
  width: 30%;
  float: left;
  padding-right: 10px;
  /*padding-top: 5px;*/
  padding-bottom: 10px;
  padding-top: 5px;
  box-sizing: border-box; /* for /system version */
}

#lgoal {
  position: absolute;
  bottom: 0px;
  left: 0px;	
}

form  div.rowDetail > div {
  width: 70%;
  float: right;
  font-size: 90%;
}

input[type=submit] {
	padding: 9px;
	background-color: #000;
	color: #FFF;
	border: 0;
	width: 25%;	
}

select,
input[type=text],
input[type=email],
input[type=number],
input[type=url],
input[type=password],
textarea {
  /*width: 100%;*/
  padding: 6px;
  box-shadow: rgba(0,0,0, 0.1) 0px 0px 8px;
  -moz-box-shadow: rgba(0,0,0, 0.1) 0px 0px 8px;
  -webkit-box-shadow: rgba(0,0,0, 0.1) 0px 0px 8px;   
  border: solid 1px #E5E5E5;
  font-family: Arial,Helvetica,sans-serif;
  font-size: 100%;
}

textarea {
	width: 97%;
	color: #555;
}

select,
input[type=text],
input[type=email],
input[type=number],
input[type=url],
input[type=password] {
  width: auto;;
}
select: focus,
input[type=text]:focus,
input[type=email]:focus,
input[type=number]:focus,
input[type=url]:focus,
input[type=password]:focus,
textarea:focus {
  outline: 0;
  border-color: #C9C9C9;
}

input[type=text].spTextfield,
input[type=email].spTextfield,
input[type=number].spTextfield,
input[type=url].spTextfield,
input[type=password].spTextfield {
  width: 325px;
}

input[type="submit"].spSubmit {
	font-weight: bold; 
}

input[name=otheramt] { width: 100px }

.amountOnly {
  display: block;
  width: 420px;
  height: 68px;
  background-color:#ddd;
  color: #fff;
  padding: 10px 20px 10px 20px;
  font-family: Arial;
  font-size: 28px;
  border: 2px solid #444;
  border-radius: 4px;
  
}

/*new sponsor form*/
input[type=text].rowfield,
input[type=email].rowfield,
input[type=number].rowfield,
input[type=url].rowfield,
input[type=password].rowfield,
select.rowfield {
  width: 90%;
  color: #555;
  padding: 10px;
}

.rowfield::placeholder {
	color: #999;
	font-style: italic;
}

form .row {
	margin-bottom: 0.90em;	
}

form .nobottommargin {
	margin-bottom: 0em;
}

form .row label, form .row2 label {
	font-size: 14px;
}

form .row2 {
	display: flex;
	margin-bottom: 0.90em;	
}

.rowSponsorIndent {
	padding-left: 2.2em;
}

form .row-item {
	width: 50%;
}
/* numbers only */
.sponsor-amounts {
  display: flex;
  flex-wrap: wrap;
}

.sponsor-amounts-item {
	height: 64px;
	margin-bottom: 16px;
}

.sponsor-amounts input[type="radio"] {
    display:none; 
}

.sponsor-amounts label {
	display: block;
    width: 160px;
	background-color:#ddd;
    padding: 16px 20px 10px 20px;
    font-family:Arial;
    font-size:28px;
    border: 2px solid #444;
    border-radius: 4px;  
	margin-right: 16px;
	text-align: center;
	height: 64px; 
}

.sponsor-amounts label:hover {
  background-color: #dfd;
}

.sponsor-amounts input[type="radio"]:checked + label { 
    background-color:#bfb;
    border-color: #4c4;
}
/* numbers only */

/* numbers with text */
.sponsor-amounts-full {
  display: block;
}

.sponsor-amounts-full-item {
	/*height: 64px;*/
	margin-bottom: 16px;
}

.sponsor-amounts-full input[type="radio"] {
    display:none; 
}

.sponsor-amounts-full label {
	display: flex;
    width: 100%;
	background-color:#ddd;
    padding: 10px;
    font-family:Arial;
	font-size: 28px;
    border: 2px solid #444;
    border-radius: 4px;  
	margin-right: 16px;
	/*text-align: center;*/
	height: auto; 
}

.sponsor-amounts-full label:hover {
  background-color: #dfd;
}

.sponsor-amounts-full input[type="radio"]:checked + label { 
    background-color:#bfb;
    border-color: #4c4;
}
.spamount {
	display: flex;
	font-size: 28px;
	align-items: center;
	margin-right: 12px;
}
.speventamount {
	font-size: 24px;
	display: flex;
	align-items: center;
	margin-right: 12px;
}
.description {
	flex-grow: 1;
	font-size: 18px;
	line-height: 1.2em;
	display: flex;
	align-items: center;
}
.eventlabel {
	flex-grow: 1;
	font-size: 24px;
	display: flex;
	align-items: center;
}
.flexbreak {
	flex-basis: 100%;
	height: 0px;
}
.eventdescription {
	font-size: 18px;
	line-height: 1.2em;
}
/* numbers with text */

/*register buttons with text */
.regeventamount {
	font-size: 18px;
	display: flex;
	align-items: center;
	margin-right: 12px;
}
.regeventlabel {
	flex-grow: 1;
	font-size: 18px;
	display: flex;
	align-items: center;
}
.regeventdescription {
	font-size: 14px;
	line-height: 1.2em;
}
/*register buttons with text */


.anon-choices {
  display: flex;
  flex-wrap: wrap;
}

.anon-choices-item {
	height: 34px;
}

.anon-choices input[type="radio"] {
    display:none; 
}

.anon-choices label {
	display: block;
    width: 220px;
	background-color:#ddd;
    padding: 6px 10px ;
    font-family: Arial;
    font-size: 18px;
    border: 2px solid #fff;
    border-radius: 4px;  
	margin-right: 16px;
	text-align: center;
	height: 34px; 
}

.anon-choices label:hover {
  background-color: #dfd;
}

.anon-choices input[type="radio"]:checked + label { 
    background-color:#bfb;
    border-color: #4c4;
}

.line-break {
  width: 100%;
}

.radioButton {
     -webkit-appearance: none;
     -moz-appearance: none;
     appearance: none;
     display: inline-block;
     position: relative;
     background-color: #fff;
     color: #fff;
     top: 5px;
     height: 20px;
     width: 20px;
	 border: 1px solid #060 !important;
     border-radius: 50px;
     cursor: pointer;     
     outline: none;
}
.radioButton:checked::before {
     position: absolute;
     font: 13px/1 'Open Sans', sans-serif;
     left: 6px;
     top: 3px;
     content: '\02143';
     transform: rotate(40deg);
}
.radioButton:hover {
     background-color: #ececec;
}
.radioButton:checked {
     background-color: #060;
}

@media screen and (max-width: 800px) { /* only do this if the screen size becomes less than 990px */
  form  div {
	font-size: 95%;
  }
}

@media (max-width: 500px) {

  #lgoal {
	position: relative;
  }

  form  div.rowDetail {
	margin-bottom: 12px;
  }

  form  div.rowDetail > label {
	  width: 100%;
      float: none;
      margin: 0 0 5px 0;
	  padding-top: 0px;
  }
  form  div.rowDetail > div {
      width: 100%;
      float: none;
  }
  
  form  div#paymentinfo > div.rowDetail > div {
      padding-left: 2em;
	  width: 100%;
      float: none;
  }  

  input[type=text],
  input[type=email],
  input[type=number],
  input[type=url],
  input[type=password],
  textarea,
  select {
      width: 93%; 
  }
  
  input[name=otheramt] { width: 80px }
  
  .amountOnly > input[name=otheramt] { width: 100px }
  
  input[name=donation_to_goal] {width: 50%}
  
  .formRowLine {
	border-bottom: none;
  }
  .rowIndent, .rowSponsorIndent {
	  padding-left: 0.5em;
  } 
  
  
   /*new sponsor form*/
  input[type=text].rowfield,
  input[type=email].rowfield,
  input[type=number].rowfield,
  input[type=url].rowfield,
  input[type=password].rowfield {
	width: 100%;
  }
  
  .amountOnly {
	  width: 98%;
  }
  
  form .row2 {
	  display: block;	
  }
  
  form .row-item {
	  width: 100%;
	  margin-bottom: 1em;	
  }  
  
  .sponsor-amounts label {
	  width: 120px;
	  padding: 16px 10px 10px 10px;
	  font-size: 24px;
  } 

  .sponsor-amounts-full label {
	  padding: 8px;
  }
  .spamount {
	  font-size: 24px;
  }
  .speventamount, .eventlabel {
	  font-size: 20px;
  }
  .description {
	  font-size: 14px;
  }
  .eventdescription {
	  font-size: 14px;
  } 
  
  .regeventamount {
	  font-size: 16px;
  }
  .regeventlabel {
	  font-size: 16px;
  }
  .regeventdescription {
	  font-size: 13px;
  }  
  
  .anon-choices {
	display: block;
  }
  
  .anon-choices-item {
	  margin-bottom: 12px;
  }  

  form .row label.error, form .row2 label.error, label.error {
	  font-size: 12px;
  }
}

