/* SSO-specific style overrides */
/* Application styles changes should be made here rather than global.css. */

button, input, select, textarea { font-family: sans-serif; color: #222; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; vertical-align: middle; }
input, input[type="password"], input[type="search"], isindex { border: 2px inset; }

input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }
input:disabled {
	background-color: lightgray;
}

input[type="text"], input[type="password"], select {
    font-size: 1em;
    line-height: 12px;
    margin-bottom: 10px;
    padding: 6px 8px;
    width: 300px;
    border: 1px solid #DFDFDF;
    border-radius: 2px 2px 2px 2px;
    box-shadow: 0 1px 2px #EEEEEE inset;
    color: #444444;
}

input.error, select.error {
	background-color: #FFAAAA;
}

div.hidden {
	display: none;
}

button, input[type="button"], input[type="reset"], input[type="submit"] {
    color: dimgrey;
    cursor: pointer;
    display: inline-block;
    font-size: 0.95em;
    font-weight: bold;
    padding: 5px 13px;
	border: solid 1px #b7b7b7;

	background: #fff;
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#ededed));
	background: -moz-linear-gradient(top,  #fff,  #ededed);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ededed');
}

.content-outer {
	display: block;
	margin-top: 3em;
}

.content-inner {
	padding: 3em;
}

.primary-content p {
	padding-bottom: 5px;
}

div.error {
	margin-top: 0.5em;
	color: red;
	font-weight: bold;
}

div.message {
	margin-top:20px;
	font-size:1em;
	clear: both;
	float: left;
}

label {
    display: block;
    font-weight: bold;
    line-height: 22px;
}

.primary-content form {
	padding: 15px 20px;
}

.envAlert {
	margin-top: 30px;
	float: right;
	color: #333;
	font: 100 30px/1 'Helvetica W01 Light', Lato, sans-serif;
	letter-spacing: -0.045em;
	vertical-align: baseline;
}

.loggedInLinks {
	float: right;
	font: 'Helvetica W01 Light', Lato, sans-serif;
	vertical-align: baseline;
	clear: both;
}

#right-box {
	max-width: 48%;
	float: right;
}

#left-box {
	max-width: 48%;
	float: left;
}

.loginAndLink {
	width: 300px;
	line-height: 2em;
	clear: both;
}

.forgotPassword, .registerAccount {
	font-size: smaller;
	padding-left: 1em;
	float: right;
	display: inline-block;
}

.primary-content table.recaptchatable {
	width: auto;
}

.contactSupport {
	margin-top: 2em;
}

.additionalCheckBox {
	margin-bottom: 1em;
}

.additionalCheckBox label {
	font-weight: normal;
}

.consentBox {
	margin-top: 2em;
	margin-bottom: 2em;
}

.consentBox.error {
	margin-top: 2em;
	margin-bottom: 2em;
	border: 2px solid red;
	padding: 10px;
}

label.cbLabel {
	display: inline;
}

.gfield_required {
    color: #e50000;
    margin-left: 3px;
    position: relative;
    top: -4px;
}

.footnote {
	margin-top: 2em;
	text-align: right;
}

.panel-third-party-auth {
	margin-top: 10px;
}

.btn-third-party-auth {
	text-decoration: none;
	width: 300px;
	height: 30px;
	background-color: white;
	background: none;
}

.btn-third-party-auth img {
	width: 18px; 
}

.btn-third-party-auth span {
	top: -4px; 
	left: 5px; 
	position: relative;
}

.password-input { position: relative; width:300px; }
.password-input input { background-color:none; display:block; width: 100%; box-sizing: border-box } 
.password-input button {
	position: absolute;
	background: none;
	border: none;
	top: -1px;
	right: -2px; 
	width: 50px;
	height: 30px;
} 

.username-box {
    font-size: 1em;
    margin-bottom: 10px;
    width: 300px;
	height: 30px;
    border: 1px solid #DFDFDF;
    border-radius: 2px 2px 2px 2px;
    box-shadow: 0 1px 2px #EEEEEE inset;
    color: #444444;
}

.username-box span {
    padding: 6px 8px;
	line-height: 30px;
}

.username-box button {
	float: right;
	background: none;
	border: none;
	padding: 0px;
	width: 50px;
	height:30px;
}


/**
* Dropdown menu styles
*************/

 /* Dropdown Button */
.dropbtn {
  background: transparent;
  vertical-align: middle;
  padding: 0px;
  font-size: inherit;
  color: inherit;
  border: none;
  width: 100%;
}

/* highlight "Options" for keyboard interaction using Tab*/
.dropbtn:focus{
	border: 1px dashed rgb(0, 0, 0);
}
.dropdown-content a:focus {background-color: #ddd;}

/* The container <div> - needed to position the dropdown content */
.dropdown {
  display: inline-block;
  min-width: 155px;
}

/* Dropdown Content (Hidden by Default) */
.dropdown-content {
  display: none;
  background-color: #f1f1f1;
  width: 100%;
  z-index: 1;
}

/* Links inside the dropdown */
.dropdown-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}

.dropdown-item.hidden {
  display: none;
}

/* Change color of dropdown links on hover */
.dropdown-content a:hover {background-color: #ddd;}

/* Show the dropdown menu on hover */
.dropdown:hover .dropdown-content {display: block;}

/***************************************************
* Various reCAPTCHA styles (more in @media sections)
****************************************************/

.captcha-div {
	margin-bottom: 10px;
	clear: both;
}

.recaptcha_image {
	margin-top: 20px;
}

.recaptcha_input {
	float: left;
}

.recaptcha_controls {
	float: right;
	clear: both;
}

.recaptcha_logo {
	float: right;
	clear: both;
}

.recaptcha_controls_logo {
	width: 200px;
	float: left;
}

/*****************************************************
* @media queries for display on different screen sizes
******************************************************/

@media screen and (max-width:767px) {
	.recaptcha_logo {
		float: right;
	}
	div.message {
		float: none;
	}
	#right-box {
		float: none;
		max-width: 100%;
	}
	#left-box {
		float: none;
		max-width: 100%;
		clear: both;
	}
	#right-box img {
		padding: 1em;
	}
	.content-outer {
		margin-top: 0.5em;
	}
	.content-inner {
		padding: 0.5em;
	}
	.primary-content form h1 {
		font-size: x-large;
	}
}

@media screen and (max-width:600px) {
	/*Environment*/
	.envAlert {
		display: none;
	}
	div.message {
		float: none;
	}
	#right-box {
		float: none;
		max-width: 100%;
	}
	#left-box {
		float: none;
		max-width: 100%;
		clear: both;
	}
	.forgotPassword, .recaptcha_image img, .recaptcha_controls_logo, button, input[type="button"], input[type="reset"], input[type="submit"], .btn-third-party-auth {
		font-size: normal;
		padding-left: 0px;
		width: 97%;
	    max-width: 300px;
	}
	.loginAndLink, .recaptcha_image {
		width: 100%;
		max-width: 300px;
	}
	.loginAndLink {
		margin-top: 10px;
	}
	.recaptcha_controls {
		float: left;
		clear: none;
	}
	.recaptcha_logo {
		float: right;
		clear: none;
	}
	.forgotPassword {
		margin: 5px;
		width: 100%;
		text-align: center;
	}
	.primary-content p {
		padding-bottom: 5px;
	}
}

@media screen and (max-width:450px) {
	div.message {
		float: none;
	}
	#right-box {
		float: none;
		max-width: 100%;
	}
	#left-box {
		float: none;
		max-width: 100%;
		clear: both;
	}
	.content-inner {
		padding: 0.2em;
	}
	input[type="text"], input[type="password"], .btn-third-party-auth {
	    max-width: 300px;
	    width: 97%;
	}
}
