/* MOBILE */
@media screen and (max-width: 640px) {
  h1{ font-size:25px ! important; }
}
@media screen and (max-height: 600px) {
  .logo {display:none !important;}
}

/* FONT */
@font-face {
font-family: 'Source Sans Pro';
font-style: normal;
font-weight: 200;
src: local('Source Sans Pro ExtraLight'), local('SourceSansPro-ExtraLight'), url(https://fonts.gstatic.com/s/sourcesanspro/v13/6xKydSBYKcSV-LCoeQqfX1RYOo3i94_wlxdr.ttf) format('truetype');
}
@font-face {
font-family: 'Source Sans Pro';
font-style: normal;
font-weight: 300;
src: local('Source Sans Pro Light'), local('SourceSansPro-Light'), url(https://fonts.gstatic.com/s/sourcesanspro/v13/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdr.ttf) format('truetype');
}

/* CSS RESET */
* {
box-sizing: border-box;
margin: 0;
padding: 0;
font-weight: 300;
}

/* CSS AUTOCOMPLETE */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
    border: 1px solid white;
    -webkit-text-fill-color: white;
    -webkit-box-shadow: 0 0 0px 1000px #bbdefb33 inset;
    transition: background-color 5000s ease-in-out 0s;
    font-sier:16px;
}


/* CSS */
body{background:#007aff0d;}

.logo{
display: inline-block;
margin: 20px;
background: #ffffffcc;
padding: 10px;
border-radius: 3px;
cursor: pointer;
z-index: 2;
position: absolute;
}

.logo img{
height:30px;
}

h1{
font-weight: bold;
font-size: 35px;
text-shadow: 3px 0 7px #333, -3px 0 7px #333, 0 4px 7px #333;
}

h1:before {
content:url('android-icon-48x48.png') ;
top: 12px;
margin-right: 5px;
position: relative;
}

body {
font-family: 'Source Sans Pro', sans-serif;
color: white;
font-weight: 300;
}
body ::-webkit-input-placeholder {
/* WebKit browsers */
font-family: 'Source Sans Pro', sans-serif;
color: white;
font-weight: 300;
}
body :-moz-placeholder {
/* Mozilla Firefox 4 to 18 */
font-family: 'Source Sans Pro', sans-serif;
color: white;
opacity: 1;
font-weight: 300;
}
body ::-moz-placeholder {
/* Mozilla Firefox 19+ */
font-family: 'Source Sans Pro', sans-serif;
color: white;
opacity: 1;
font-weight: 300;
}
body :-ms-input-placeholder {
/* Internet Explorer 10+ */
font-family: 'Source Sans Pro', sans-serif;
color: white;
font-weight: 300;
}
.wrapper {
overflow: hidden;
top:0;
left: 0;
width:100%;
height:100%;
position: absolute;
}
.wrapper.form-success .container h1 {
-webkit-transform: translateY(85px);
transform: translateY(85px);
}
.container {
position: absolute;
top: 40%;
left: 50%;
transform: translate(-50%, -50%);
text-align: center;
z-index:2;
}
.container h1 {
font-size: 40px;
-webkit-transition-duration: 1s;
transition-duration: 1s;
-webkit-transition-timing-function: linear;
transition-timing-function: linear;
font-weight: 200;
}
form {
padding: 15px 0 0 0;
position: relative;
z-index: 2;
}
form input {
text-shadow: 2px 3px 5px rgba(0,0,0,1);
line-height: 40px;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
outline: 0;
border: 1px solid rgba(255, 255, 255, 0.4);
background-color: rgba(255, 255, 255, 0.2);
width: 250px;
border-radius: 3px;
margin: 0 auto 10px auto;
display: block;
text-align: center;
font-size: 18px;
color: white;
-webkit-transition-duration: 0.25s;
transition-duration: 0.25s;
font-weight: 300;
}
form input:hover {
background-color: rgba(255, 255, 255, 0.4);
}
form input:focus {
background-color: white;
width: 300px;
color: #01579b;
}
form button {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
outline: 0;
background-color: white;
border: 0;
padding: 10px 15px;
color: #01579b;
border-radius: 3px;
width: 250px;
cursor: pointer;
font-size: 18px;
-webkit-transition-duration: 0.25s;
transition-duration: 0.25s;
}
form button:hover {
background-color: #f5f7f9;
}
.invalid-connexion {
color: #a94442;
background-color: #f2dede;
border-color: #a94442;
margin-bottom: 10px;
border-radius: 3px;
transition: 0.777s all;
height: 0;
overflow:hidden;
}
.invalid-connexion.show{
height: 24px;
}
input.error{
border:1px solid #dd2c00;
}

/*set the effect over other elements*/
#login-button {
position: absolute;
z-index: 100;
margin-left: -125px;
}

#login-button:disabled {
background:#fff;
}

#login_loading{
    width: 100%;
    height: 100%;
    display: none;
    z-index: 10;
    position: absolute;
    text-align: center;
    background: #fafafa33;
}
#login_loading IMG {
    position: absolute;
    top: calc(50% - 59px);
    left: calc(50% - 25px);
    border: 1px solid #4369d3;
    box-shadow: 0 2px 4px rgba(0,0,0,.1);
    border-radius: 4px;
}

#version {
bottom: 5px;
left: 10px;
z-index: 99999;
position: absolute;
}