#self{ border: 0; }

#spouse,
#x {
display: none;
}
#parents,
#grandparents,
#gr_grandparents {
  display: none;
}
#parents p,
#grandparents p,
#gr_ggrandparents p,
#spouse p,
#self p {
  font-weight: bold;
}

#register form {
	box-sizing: border-box;
}

#register table {
	border-collapse:separate;
    border-spacing:0 1em;
}

#register td {
	border: 0;
}

#register tr {
	outline: thin solid #5300ad!important;
}

#register fieldset {
  padding: 1.5em;
  border: 1px solid #C63800;
}

#register .hidden fieldset {
	display: none;
}

#register .visible fieldset {
	display: block;
}

#register .hidden {
	display: none;
}

#register .fieldgroup {
  display: table;
  width: 100%;
  padding: 1em;
  border: 1px solid #5300ad;
  margin: 1% 0;
  position: relative;
}

#register .fieldrow { display: table-row; }

#register label,
.log_user label {
  display: table-cell;
  font-weight: bold;
  width: 15rem;
}

#register label { vertical-align: middle; }

#register label.additionalinfo { width: 100%!important; }

#register input,
.log_user input {
  border-radius: 0.25rem;
  padding: 0.45em;
  border: 1px solid #5300ad;
}

#register .input {
  display: table-cell;
  vertical-align: middle;
  width: 15rem;
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.3);
}

#register .input.input-error {
  border: 1px solid red;
  color: red;
}

#register .input.success {
  border: 1px solid green;
  color: green;
}

#register .input:focus {
  outline: none;
  border: 2px solid Thistle;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
  background-clip: padding-box;
}

#register .icon-group {
	display: inline;
	width: 4rem;
	text-align: left;
	padding-left: 1.1em;
	vertical-align: middle;
}

#register .icon {
  width: 24px;
  height: 24px;
  pointer-events: none;
  z-index: 2;
}

#register .icon.icon-success {
  stroke: green;
}

#register .icon.icon-error {
  stroke: red;
}

#register .errormessages {
	display: table-cell;
	width: 50rem;
	vertical-align: middle;
	padding-left: 1em;
}

#register .error-message {
	color: red;
	font-style: italic;
	font-size: .75em;
	font-weight: bold;
	display: inline;
	vertical-align: middle;
}

#register .field-message {
	color: #320099;
	font-style: italic;
	font-weight: 600;
	padding: 0;
	font-size: 0.9rem;
	display: table-cell;
	width: 50rem;
	visibility: visible;
	padding-right: 0;
	vertical-align: top;
}

#register .required {
	color: #c63800;
	font-style: italic;
}

.clearfix {
	overflow: auto;
}

.clear {
	clear: both;
}

#register option {
	width: 200px;
}

#success_message { border: 1px solid #000; width: 550px; text-align: left; padding: 10px 7px; background: #33ff33; color: #000; font-weight; bold; font-size: 1.2em; border-radius: 4px; -moz-border-radius: 4px; -webkit-border-radius: 4px; }


.note { font-size: 18px; }

/* Validation */

#register input.valid.success-alert { color: #080; font-weight: bold; border-color: #080; }
#userlogin .valid input, #user_email .valid input{ border: 1px solid #080; color: #080; }
#register label.error.fail-alert { color: #800; font-weight: bold; border: 1px solid #800;}
#register .error { color: #800; font-weight: bold; }
#userlogin .error input, #user_email .error input { border-color: #800!important;}
.alert-success { color: #080; }
.alert-danger { color: #800; }

#tick, #cross, #tick2, #cross2 {display:none; font-size: .75em;}

meter {
    /* Reset the default appearance */
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;         
	margin: 1em auto 0;
	width: 15rem;
	height: .5em;
    
    /* Applicable only to Firefox */
	background: none;
	background-color: rgba(0,0,0,0.1);
}

meter {
	background: none;
	background-color: rgba(0,0,0,0.1);
}

meter[value="1"] { background: red; }
meter[value="2"] { background: yellow; }
meter[value="3"] { background: orange; }
meter[value="4"] { background: green; }

.feedback {
	color: #9ab;
	font-size: 90%;
	padding: 0 .25em;
	font-family: "Philosopher", cursive;
	margin-top: 1em;
}

#password-strength-text {
	font-size: 80%;
	display:block;
	width: 15rem;
}

/* Profile */
#your-profile { }
#your-profile label { font-weight: bold; font-size: 1.1em; }

#your-profile  td.name { width: 50%; }
#your-profile .name input { display: block; }
.error { font-weight: bold; color: #900; }
#your-profile .description { font-weight: normal !important; font-size: 98%; color: #000; }

#msgbox, #msgbox2{
	font-size: .75em;
	font-weight: bold;
}

.messagebox {
	/*position:absolute;
	margin-left:30px;*/
	padding: 0;
	vertical-align: top;
	display: inline;
}
#msgbox.messageboxok {
	/*position:absolute;
	margin-left:30px;*/
	border:1px solid #349534;
	background:#C9FFCA;
	padding:3px;
	font-weight:bold;
	color:#008000;
	
}
#msgbox.messageboxerror {
	/*position:absolute;
	margin-left:30px;*/
	border:1px solid #CC0000;
	background:#F7CBCA;
	padding:3px;
	font-weight:bold;
	color:#CC0000;
}

.grecaptcha-badge {
    z-index: 10000;
}

.forgot_pwd_form {
	width: 50%;
	max-width: 600px;
	margin: 0 auto;
	border: 1px solid #202020;
	border-radius: 5px;
	padding: 1em;
}

#register .fieldname {
	color: #ffffff!important;
}