* {
	margin: 0px;
	padding: 0px;
	font-family: Verdana, Arial, Tahoma, sans-serif;
}

html,body {
	height: 100%;
	width: 100%;
}

body {
	background-color: #f5f6f7;
	color: #999;
	color: #999999;
}

a {
	outline: none;
}

#box {
	position: absolute;
	margin-left: -463px;
	margin-top: -195px;
	left: 50%;
	top: 50%;
	border: 1px solid #CACACA;
	height: 390px;
	width: 925px;
	background: #f5f6f7;
}

#box-border {
	height: 416px;
	width: 850px;
	margin-top: -207px;
	margin-left: -425px;
	position: absolute;
	top: 50%;
	left: 50%;
}

#client-info {
	height: 33px;
	padding-top: 11px;
	text-align: center;
}

#client-info .client-logo {
	float: left; 
	width: 100%;
}

#client-info .client-name {
	float: left;
	padding: 4px 0px 0px 20px;
	border-left: 1px solid #CACACA;
	font-size: 13px;
	height: 20px;
}

#app-logo {
	float: left;
	width: 128px;
	height: 128px;
	background-position: -80px 0px;
	background-repeat: no-repeat;
	margin: 38px 32px;
}

#central {
	width: 100%;
	height: 326px;
	background-color: #ffffff;
	margin-top: 20px;
	border: 2px solid #CACACA;
	border-left: none;
	border-right: none;
	position: relative;
}

#principal {
	width: 572px;
	height: 286px;
	background-image: url('../images/bg_principal.png');
	background-repeat: no-repeat;
	float: right;
	margin: 20px 20px 0px 20px;
	z-index: 1;
}

#menu {
	float: left; 
	border-right: solid 1px #EAEAEA; 
	padding-right: 20px;
	overflow-y: auto; 
	height: 307px; 
}

#menu ul {
	float: left;
	margin: 20px 0px 0px 20px;
	height: 287px;
	background: #F2F2F2;
	width: 270px;
	position: relative;
	z-index: 2;
}

#menu li {
	height: 40px;
	border-bottom: 1px solid white;
	list-style: none;
	cursor: pointer;
	position: relative;
	background: #F2F2F2;
}
#menu li:hover {
	background-color: #CFD4DE;
}

#menu .icon {
	background-repeat: no-repeat;
	background-position: -40px 0px;
	width: 40px;
	height : 40px;
	float: left;
	border-right: 1px solid white;
	margin-right: 5px;
}
#menu li:hover .icon {
	background-position: 0px 0px;
}

#menu .application-name {
	display: block;
	float: left;
	height: 14px;
	width: 210px;
	padding: 13px 0px;
	font-size: 14px;
	font-weight: bold;
	border-right: 1px solid white;
}
#menu li:hover .application-name {
	color: #333333
}

#menu .arrow {
	background: url('../images/arrow.png') no-repeat;
	width: 17px;
	height: 17px;
	position: absolute;
	right: 5px;
	top: 12px;
	visibility: hidden;
}
#menu li:hover .arrow {
	visibility: visible;
}


form {
	width: 280px;
}

#login-form {
	float: left;
	width: 280px;
	padding: 20px 30px 30px 30px;
}

#login-form  h1 {
	font-size: 35px;
	font-weight: bold;
	margin-bottom: 10px;
}


.field {
	margin-bottom: 10px;
	width: 100%;
}

.field .label {
	font-size: 14px;
	font-weight: bold;
	display: inline-block;
	width: 90px;
}

#captcha {
	display: none;
}
#captcha img {
	width: 100px; 
	height: 45px;
	border: solid; 
	border-width: 1px;
}
#captcha input {
	width: 65px; 
	float: right; 
}
#captcha .label {
	vertical-align: top
}

input {
	width: 180px;
	border: 1px solid #cacaca;
	height: 21px;
	padding: 1px;
}

select {
	width: 184px;
	border: 1px solid #cacaca;
	height: 21px;
	padding: 1px;
}

.toolbar {
	text-align: right;
	width: 100%;
	height: 25px;
	background-color: #f2f2f2;
}

.toolbar  .button {
	width: 44px;
	height: 17px;
	background: url('../images/button.png') no-repeat;
	color: white;
	padding: 4px;
	cursor: pointer;
	display: inline-block;
	font-size: 13px;
	text-align: center;
}


#forgot-password a {
	display: block;
	height: 20px;
	background-repeat: no-repeat;
	background-image: url('../images/question.png');
	margin-top: 5px;
	margin-left: 5px;
	padding: 0px 0px 0px 20px;
	color: #999999;
	font-size: 11px;
	float: left;
}

#error-message {
	color: red;
	font-size: 15px;
	margin-top: 5px;
}

#logout-button,
#username .text {
	display: none;
}

form.blocked #domain,
form.blocked #password,
form.blocked #username input,
form.blocked #forgot-password,
form.blocked #login-button,
form.blocked #google-button,
form.blocked #facebook-button {
	display: none;
}


form.blocked #logout-button,
form.blocked #username .text {
	display: inline-block;
}

#application-select {
	display: none;
	width: 275px;
}

#facebook-button, #google-button {
	display: inline-block;
	vertical-align: top;
	margin-top: 10px;
}

/* Tablet Mode */

[device=tablet] #box {
	width: 626px;
	margin-left: -313px;
}

[device=tablet] #box-border {
	margin-left: -290px;
	width: 580px;
}
	
[device=tablet] #principal {
	background-image: none;
	position: absolute;
	left: 85px;
	width: 500px;
}

[device=tablet] #login-form{
	padding-right: 0px;
	float: right;
}

[device=tablet] #app-logo {
	display: none;
}

/* Mobile Mode */
[device=mobile] #application-select {
	display: inline;
	position: absolute;
	margin-left: 35px;
	z-index: 2;
	bottom: 45px;
}

[device=mobile] #box {
	width: 350px;
	margin-left: -175px;
}

[device=mobile] #box-border { 
	margin-left: -150px;
	width: 300px;
}
	
[device=mobile] #menu,
[device=mobile] #app-logo,
[device=mobile] .client-name { 
	display: none;
}

[device=mobile] #principal {
	background-image: none;
	width: 100%;
	margin: 0px;
}

[device=mobile] .login-form {
	padding: 30px 35px;
}

[hasclientname] #client-info .client-logo {
	width: 310px;
}

[hasclientname][noappresources] #client-info .client-logo {
	width: 205px;
	margin-left: 150px;
}

[hasclientname][device=mobile] #client-info .client-logo {
	width: 100%;
	margin-left: 0px;
}

[hasclientname][device=tablet] #client-info .client-logo {
	width: 310px;
}

[hasclientname][noappresources][device=tablet] #client-info .client-logo {
	margin-left: 0px;
}

/* Modo Aplicação única */
[noappresources] #menu {
	display: none;
}

[noappresources] #principal {
	float: none;
	margin-left: 166px;
}

[noappresources][device=tablet] #principal {
	float: none;
	margin-left: -120px;
}

[noappresources][device=mobile] #principal {
	float: none;
	margin-left: 10px;
}

[noappresources][device=mobile] #application-select {
	display: none;
}

[showcaptcha=true] #captcha {
	display: block;
}

[showcaptcha=true] #google-button,
[showcaptcha=true] #facebook-button {
	display: none;
}