
/* Reset */

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0;
	padding:0;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

fieldset,img { 
	border:0;
}

address,caption,cite,code,dfn,em,strong,th,var {
	font-style:normal;
	font-weight:normal;
}

ol,ul {
	list-style:none;
}

caption,th {
	text-align:left;
}

h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}

q:before,q:after {
	content:'';
}

abbr,acronym { 
	border:0;
}


/* Element styles */

h1 { 
	font-weight: bold;
	font-size: 26px;
	margin-bottom: 15px;
	color: #FFF;
}

html {
	height: 100%;
}


body {
	background: #161616;
	color: #444;
	font: 14px/22px "Helvetica Neue", Helvetica, Arial, sans-serif;
	height: 100%;
}

#background {
    position: fixed;
    width: 100%;
    height: 100%;
    background: center center no-repeat fixed #5b87ce;
    background-size: cover;
    z-index: 0;
}

a {
	color: #8cc63e;
}

label {
	display: block;
	margin-right: 0.5em;
	padding: 1.5em 0 0.3em 0;
	font: 1em verdana, sans-serif;
	font-size: 12px;
	color: #FEFEFE;
	font-weight: bold;
}

button {
    margin-top: 1.5em;
    padding: 10px 0;
    font: 13px verdana, sans-serif;
    color: #EEEEEE;
    cursor: pointer;
    border: 1px solid #505050;
    background: #5d87c8;
    width: 100px;
    display: block;
    text-align: center;
    float: right;
    outline: none;
    font-weight: bold;
    -webkit-transition: all,.15s,ease-in-out;
    -moz-transition: all,.15s,ease-in-out;
    -o-transition: all,.15s,ease-in-out;
    transition: all .15s ease-in-out;
}

button:hover {
	background: #2b618b;
}

button, input, select {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
}

#viewerObject {
	height: 100%;
}

/* Banner */

#banner {
	position: absolute;
	top: 50px;
	padding-left: 0;
	width:100%;
}

#errorBanner {
	position: absolute;
	top: 50px;
	padding-left: 0;
	margin-top:65px;
	width:100%;
}


/* Main pane */

#main-wrapper {
    position: relative;
    width: 25%;
	min-width: 280px;
	max-width: 540px;
    min-height: 100%;
	border: none;
    background: rgba(51,51,51,.8);
    padding: 0 60px;
    margin-left: 10%;
    color: #ccc;
    overflow: hidden;
    z-index: 1;
}

#confidentialityNotice {
	margin-top: 30px;
}

#confidentialityNotice strong {
	font-weight: bold;	
}

@media all and (min-width: 1601px) {
	#background {
		background-image: url(bg-body@3840.jpg);
	}
}

@media all and (max-width: 1600px) {
	#background {
		background-image: url(bg-body@1600.jpg);
	}
}

@media all and (max-width: 850px) {
	#background {
		background-image: url(bg-body@850.jpg);
	}

	#main-wrapper {
		width: 64%;
		min-width: 0px;
		max-width: none;
		padding: 0 8%;
	}
}

@media all and (max-width: 500px) {
	#background {
		background-image: url(bg-body@500.jpg);
	}

	#main-wrapper {
		width: 84%;
		margin-left: 0;
	}
}

/* Footer */

#credit {
    line-height: 40px;
    text-align: right;
    margin-top: 30px;
}

#renderedStr {
    display: none;
}
    
#credit:hover + #renderedStr {
    display: block;
}

#custom-logo {
    margin-top: 30px;
    text-align: center;
    overflow: hidden;
}


/* Error box */

#error-box {
	position: absolute;
	top: 0;
	left: 0;
	height: 20px;
	width: 100%;
	background: #EC5A1C;
	border-bottom: 2px solid #773012;
	text-align: center;
	color: #FFF;
	font-weight: bold;
	z-index: 10;
}

#notFoundErrorBody {
	text-align: center;
	color:#FEFEFE;
	font-size:30px;
	margin-top:20px;
}

#forbiddenAccessBody {
	text-align: center;
	color:#FEFEFE;
	font-size:30px;
	margin-top:20px;
}

/* Login page */

.login {
    height: 100%;
    min-height: 100%;
}

.logout #logo, .unsupported #logo {
	text-align: center;
	margin: 30px 0px;
}

.login #logo {
	position: relative;
	max-width: 355px;
	margin: 30px auto;
}

.login #logo:before {
	content: "";
	display: block;
	padding-top: 36.34%; /* Logo's size is 355 x 129 px, 36.34% is the aspect ratio. */
}

.login #logo a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	text-align: center;
}

.login img, .logout img, .unsupported img, .changepassword img {
	border: 0;
	max-width: 100%;
	max-height: 100%;
}

.login form {
    margin-top: 30px;
}

.login form > div {
    margin-top: 10px;
    position: relative;
}

.login input, .login select {
    width: calc(100% - 44px);
    height: 40px;
    padding-left: 40px;
    border: 2px solid darkgray;
    outline: 0;
}

/* Safari only */
_::-webkit-full-page-media, _:future, :root .login select {
	padding-left: 0px;
	text-indent: 34px;
}
@media screen and (min-color-index:0) and(-webkit-min-device-pixel-ratio:0) {
	@media {
		.login select {
			padding-left: 0px;
			text-indent: 34px;
		}
	}
}

.login select {
    width: 100%;
}

.login input:focus, .login select:focus {
    border: 2px solid #5d87c8;
}

.login .error input, .login .error select {
    border: 2px solid #cc0606;
}

.login label {
	color: #ccc;
    font-size: 15px;
    line-height: 44px;
    text-align: center;
    width: 40px;
    position: absolute;
	margin: 0;
	padding: 0;
    top: 0px;
    left: 0px;
    -webkit-transition: all,.15s,ease-in-out;
    -moz-transition: all,.15s,ease-in-out;
    -o-transition: all,.15s,ease-in-out;
    transition: all .15s ease-in-out;
}

.login label:before {
	padding: 0;
}

.login input:focus+label, .login select:focus+label {
    color: #2b618b;
}

.login .error input+label, .login .error select+label {
    color: #cc0606;
}

.login button {
    margin-top: 5px;
}

.login #error-box {
	display: none;
}

.login #error {
	color: red;
}

/* Change password page */

.changepassword h1 {
	margin-top: 30px;
}

.changepassword input {
    height: 30px;
    width: calc(100% - 14px);
    padding: 0 5px;
}

.changepassword button.cancel {
	margin-right: 1.5em;
}

/* Layout helpers
----------------------------------*/
.ui-helper-hidden { display: none; }
.ui-helper-hidden-accessible { position: absolute; left: -99999999px; }
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.ui-helper-clearfix { display: inline-block; }
/* required comment for clearfix to work in Opera \*/
* html .ui-helper-clearfix { height:1%; }
.ui-helper-clearfix { display:block; }
/* end clearfix */
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }


/* Interaction Cues
----------------------------------*/
.ui-state-disabled { cursor: default !important; }


.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
	

.ui-widget { font: 11px verdana, sans-serif; font-size: 1.1em; }
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Arial, Helvetica, sans-serif;; font-size: 1em; }
.ui-widget-content { border: 1px solid #333333; background: #333333; color: #EEEEEE; }
.ui-widget-content a { color: #EEEEEE; }
.ui-widget-header { border: 1px solid #505050; background: #505050; color: #EEEEEE; font-weight: bold; }
.ui-widget-header a { color: #EEEEEE; }

.ui-dialog { position: relative; padding: .2em; width: 300px; }
.ui-dialog .ui-dialog-titlebar { padding: .5em .3em .3em 1em; position: relative;  }
.ui-dialog .ui-dialog-title { float: left; margin: .1em 0 .2em; } 
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
.ui-dialog .ui-dialog-content { border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; }
.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
.ui-dialog .ui-dialog-buttonpane button { float: right; margin: .5em .4em .5em 0; cursor: pointer; padding: .2em .6em .3em .6em; line-height: 1.4em; width:auto; overflow:visible; }
.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
.ui-draggable .ui-dialog-titlebar { cursor: move; }

.changepassword .ui-dialog { position: fixed !important; top: 30% !important; z-index: 10; }
.changepassword .ui-widget-overlay { width: auto; height: auto; }

.fontLoad{
	display: none;
}

input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px white inset;
}

label.old-ie-only {
	display: none;
}