@import url(https://fonts.googleapis.com/css?family=Roboto:400,100,300,500,700);

html {
    height: 100%;
}
 
body {
	color: #ffffff;
	font: 87.5%/14px 'Roboto', sans-serif;
	margin: 0;
	overflow-y:auto !important;
	background: #0082ca;
	height: 100%;
	margin: 0;
	overflow: hidden;
}

a {
  color: #0074be;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
  color: #0074be;
}

input {
  border: none;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5em;
  padding: 0;
  -webkit-appearance: none;
}

p {
  line-height: 1.5em;
}

.clearfix {
  *zoom: 1;
  border: 0;
}
.clearfix:before, .clearfix:after {
  content: ' ';
  display: table;
}
.clearfix:after {
  clear: both;
}

.container {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  padding: 0 20px;
}

/* ---------- LOGIN ---------- */
.login {
  z-index: 100;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 20px;
  min-width: 100%;
  margin-top: 40px;
}

.login .logo {
	padding-top: 20px;
	padding-bottom: 30px;
}

.login form {
	display: flex;
	justify-content: center;
	flex-direction: column;
	min-width: 350px;
}

.login form span {
  background-color: rgba(0, 0, 0, 0.6);
  border-radius: 3px 0px 0px 3px;
  color: #ffffff;
  display: block;
  float: left;
  height: 50px;
  line-height: 50px;
  text-align: center;
  width: 20%;
  font-size: 18px;
  border: 0;
}

.login form input {
  height: 50px;
}

.login form input[type="text"], input[type="password"] {
  background-color: rgba(85,85,85,0.28);
  border-radius: 0px 3px 3px 0px;
  margin-bottom: 1em;
  padding: 0 16px;
  width: 70%;
  color: #fff;
}

.login form input[type="text"]:focus, input[type="password"]:focus {
	outline: 0;
	-webkit-box-shadow: inset 0px 0px 10px 5px rgba(0,0,0,0.2);
	-moz-box-shadow: inset 0px 0px 10px 5px rgba(0,0,0,0.2);
	box-shadow: inset 0px 0px 10px 3px rgba(0,0,0,0.1);
	border: 0px solid #C4CACE;
}





.login .bt_enviar{
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  background-color: rgba(0,0,0,0.60);
  color: #fff;
  font-weight: 500;
  margin-bottom: 2em;
  text-transform: uppercase;
  width: 100%;
  height: 50px;
  border: none;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 15px;
  line-height: 1.5em;
  padding: 0;
}

.login .bt_enviar:hover {
  background-color: #000000;
}

.login > form > fieldset > p {
  text-align: center; 
  display: flex;
  flex-wrap: nowrap;
  position: relative;
}

.login > p span {
  padding-left: 5px;
}

.login > form > fieldset > p.active span {
    height: 50px;
}

.login > form > fieldset > p.active span { border-top: 2px solid red; border-left: 2px solid red; border-bottom: 2px solid red; } 
.login > form > fieldset > p.active input { border-top: 2px solid red; border-right: 2px solid red; border-bottom: 2px solid red; } 



.login > form > fieldset > p.active input[type="text"]:focus, 
.login > form > fieldset > p.active input[type="password"]:focus {
	outline: 0;
	-webkit-box-shadow: inset 0px 0px 10px 5px rgba(0,0,0,0.2);
	-moz-box-shadow: inset 0px 0px 10px 5px rgba(0,0,0,0.2);
	box-shadow: inset 0px 0px 10px 3px rgba(0,0,0,0.1);
border-top: 2px solid red; border-right: 2px solid red; border-bottom: 2px solid red
}

.login .error{
   padding: 15px;
   color: white;
   background-color: #f44336;
   margin-bottom: 15px;
   display: flex;
   justify-content: center;
   border-radius: 3px;
   align-items: center;
}

.login .error i {
   margin-right: 10px;
   font-size: 20px;
   font-weight: bold;
}


.login_timeout > .logo {
  text-align: center;
  margin-bottom: 15px;

}


/* ---------------------
        CAPTCHA
----------------------*/

.captcha_box {
  display: flex;
  align-items: center;
  padding: 10px;
  background-color: rgba(0,0,0,0.6);
  border-radius: 6px;
  margin-bottom: 25px;
  justify-content: space-between;
}

.captcha_box .bt_captcha_reload {
  font-size: 40px;
  color: #555555;
  margin: 0 15px;
  cursor: pointer;
}
.captcha_box .bt_captcha_reload:hover {
  color: #0074be;
  -ms-transform: rotate(360deg); /* IE 9 */
  -webkit-transform: rotate(360deg); /* Chrome, Safari, Opera */
  transform: rotate(360deg);
  transition: all 1s ease;
  cursor: pointer;
}


.login .divider {
  border-bottom: 1px dotted #555;
  margin: 0px 0 15px 0;
}

.login .nota,
.login_timeout .nota
 {
  text-align: center;
  font-weight: 300;
  font-size: 16px;
}

*{ margin: 0; padding: 0;}

.pie-login {
    z-index: 2;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 35px;
    line-height: 35px!important;
    background-color: rgba(0,0,0,0.65);
    filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#41000000',endColorstr='#41000000');
    color: #f0f0f0;
    font: 10px 'Roboto',sans-serif;
    font-weight: 100;
    text-transform: uppercase;
    overflow: hidden;
    display: flex;
}

.pie-login > div {
   padding: 0 20px;
}

.pie-login a {
   color: #B1B1B1;
}

.pie-login a:hover {
   color: #f4f4f4;
}


.pie-login .separador {
   flex-grow: 1;
}

.pie-login .condiciones {
   border-right: 1px solid #797979;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #c7dae6;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #c7dae6;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #c7dae6;
}
:-moz-placeholder { /* Firefox 18- */
  color: #c7dae6;
}

/* NUBES */

.nubes .nube_grande {
	position: absolute;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.nubes .nube_grande img {
	/* margin-bottom: 120px; */
	opacity: 0.2;
}

/*
@-webkit-keyframes movernubes {
	0% {margin-left: 1200px;}
	100% {margin-left: -1300px;}
}
@-moz-keyframes movernubes {
	0% {margin-left: 1200px;}
	100% {margin-left: -1300px;}
}
@-o-keyframes movernubes {
	0% {margin-left: 1200px;}
	100% {margin-left: -1300px;}
}

*/
@media (max-width: 420px) {
   .pie-login > div {
      padding: 0 10px;
   }

   .login form {
      display: flex;
      justify-content: center;
      flex-direction: column;
      min-width: 100%;
   }

}
