/*================
 ## Login       ##
 ===============*/

.login-wrapper {
   background: rgba(54,71,65, 0.9);
   border-radius: 10px;
   box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.25);
   display: flex;
   flex-direction: column;
   font-weight: bold;
   font-family: officina;
   font-size: 12px;
   left: 50%;
   min-height: 250px;
   overflow: hidden;
   position: absolute;
   text-transform: uppercase;
   top: 50%;
   width: 400px;
   z-index: 998;

   transform: translate(-50%, -50%);
}

/*
.login-module {
   position: relative;
   display: inline-block;
   -webkit-border-radius: 10px;
   -moz-border-radius: 10px;
   border-radius: 10px;
   -webkit-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.25);
   -moz-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.25);
   box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.25);
   font-weight: bold;
   font-family: Officina;
   font-size: 12px;
   text-transform: uppercase;
   z-index: 998;
}
*/

.login-title {
   border-bottom: 1px solid #252f2b;
   box-sizing: border-box;
   display: flex;
   height: 64px;
   justify-content: space-between;
   padding: 20px 20px 15px 20px;
}

.login-title img {
   align-self: flex-end;
   height: 24px;
}

/* ======================= *
 * ## control container ##
 * ======================= */

.login-control-container {
   display: flex;
   flex: 1;
   flex-direction: row;
   left: 0%;
   position: relative;
   width: 100%;

   transition: left .667s;
}

.login-wrapper[data-step="login"] .login-control-container { left: 0%; }            /* Standard login screen */
.login-wrapper[data-step="recover"] .login-control-container { left: -100%; }       /* Enter email for password recovery screen */
.login-wrapper[data-step="emailsend"] .login-control-container { left: -200%; }     /* Email for password recovery succesfully sent screen */
.login-wrapper[data-step="register"] .login-control-container { left: 0%; }         /* Register new email screen */
.login-wrapper[data-step="registered"] .login-control-container { left: -100%; }    /* New password succesfully registered screen */

.login-control-container .login-control-slide {
   flex: 1 0 100%;
}

.login-form {
   border-style: solid;
   border-width: 1px 0 0 0;
   float: left;
   height: 100%;
   padding: 40px 20px 60px 20px;
   position: relative;
   width: 100%;
}

.login-form .title-text,
.login-form .login-form-row {
   width: 100%;
}

.login-form .content-text,
.login-form .login-form-row label,
.login-form .title-text {
   text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.5);
}

.login-form .content-text,
.login-form .login-form-row {
   height: 30px;
   margin-top: 10px;
}

.login-form .content-text {
   line-height: 20px;
   text-align: center;
}

.login-form .login-form-row {
   display: flex;
   flex-direction: row;
   float: left;
   line-height: 20px;
   position: relative;
}

.login-form .login-form-row label {
   height: 100%;
   width: 115px;
}

.login-form .login-form-row input {
   flex: 1;
   height: 100%;
   padding: 0 8px;
   text-transform: none;
}

.login-form .title-text {
   font-size: 14px;
   font-weight: normal;
   height: 20px;
   left: 0;
   line-height: 20px;
   opacity: .9;
   position: absolute;
   text-align: center;
   top: 20px;
}

.login-form .back-to-login-link,
.login-form .forgot-password-link {
   border-bottom: 1px dotted #a3b870;
   bottom: 20px;
   color: white;
   cursor: pointer;
   left: 20px;
   position: absolute;
   text-transform: uppercase;
}

/*
.login-form input[type="text"], .login-form input[type="password"] {
   display: inline-block;
   width: 240px;
   height: 30px;
   line-height: 30px;
   padding-left: 8px;
   padding-right: 8px;
   text-transform: none;
}
*/

.login-button {
   position: absolute;
   bottom: 20px;
   right: 20px;
   height: 30px;
   line-height: 30px;
   margin: 0px;
   padding: 0px 4px 0px 8px;
}

.login-button:after {
   content: "";
   display: inline-block;
   width: 18px;
   height: 16px;
   float: right;
   margin-left: 2px;
   background: url('../images/menu_glyphs.png') -288px -289px;
}

.login-button.return-button {
   padding: 0 8px;
   right: 50%;
   transform: translate(50%, 0);
}

.login-button.return-button:after { display: none; }

.login-form-error {
   background: #AE2f2f;
   color: #fff;
   float: left;
   margin-top: 10px;
   padding: 5px;
   position: relative;
   width: 100%;
}
