html, body, h1, h2, h3, h4, h5, h6, blockquote, p, pre, dl, dd, ol, ul, li, a, span, caption, th, td, form, fieldset, legend, input, button, textarea, address {
    margin: 0;
    padding: 0
}

* {
    padding: 0;
    margin: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
}

html, body {
    height: 100%;
    width: 100%;
    position: relative;
}

body {
    background: url(/public/admin/images/index.jpg) no-repeat center;
    background-size: 100% 100%;
    padding-bottom: 60px;
    min-height: 800px;
}

.header {
    height: 70px;
}

.layout {
    /*min-width: 1100px;*/
    /*display: flex;*/
    /*align-items: center;*/
}

.layout .box {
    width: 1100px;
    margin: 0 auto;
    height: 640px;
    position: relative;
    box-shadow: 0 0 20px 0 #000;
    display: flex;
    max-width: 100%;
}

.layout .pic img {
    display: inline-block;
    width: 120px;
    margin: 20px;
}
.layout .pic{
    flex: 1;
    position: relative;
    height: 100%;
    background: rgba(255,255,255,.15);
}
.layout .pic h2{
    position: absolute;
    bottom: 60px;
    right: 60px;
    color: #fff;
}

.layout .pic h2 p:last-child{
    text-align: right;
    font-size: 14px;
    margin-top: 10px;
}
.layout .login {
    width: 360px;
    height: 100%;
    background: #fff;
    padding: 120px 20px 20px;
}

.footer {
    position: absolute;
    bottom: 20px;
    color: #fff;
    font-size: 12px;
    width: 100%;
    text-align: center;
}

.footer span + span {
    margin-left: 10px;
}

.footer p + p{
    margin-top: 6px;
}

.login .title {
    text-align: center;
    margin: 20px 0;
}

.login .title h2 {
    color: #127ea2;
    font-size: 20px;
    letter-spacing: 6px;
    padding-left: 6px;
    position: relative;
}

.layout .title h2::after{
    content: '';
    position: absolute;
    bottom: -12px;
    width: 90px;
    height: 2px;
    display: block;
    background: #65c0de;
    left: 50%;
    transform: translate(-50%, 0);
    box-shadow: 0 -1px 2px 0 #a6e1f5;
    border-radius: 2px;
}

.login .title p {
    font-size: 14px;
    margin-top: 10px;
    letter-spacing: 10px;
    color: #99c4d8;
    padding-left: 10px;
}

.login .form {
    margin-top: 70px;
}

.login .form .item {
    border: 1px solid #DADADA;
    position: relative;
}

.login .form .item.active{
    border-color: #09c;
}

.login .form .item + .item {
    margin-top: 20px;
}

.login .item img {
    display: inline-block;
    vertical-align: middle;
    width: 20px;
    height: 20px;
    margin-left: 10px;
    margin-right: 10px;
}

.login .item input {
    display: inline-block;
    width: 230px;
    vertical-align: middle;
    -webkit-appearance: none;
    appearance: none;
    border: none;
    height: 46px;
    line-height: 46px;
    outline: none;
    color: #333;
    font-size: 16px;
    font-weight: bold;
}

.login .item input::-webkit-input-placeholder {
    color: #999;
    font-size: 14px;
    font-weight: normal;
}

.login .item input:-moz-placeholder {
    color: #999;
    font-size: 14px;
    font-weight: normal;
}

.login .item input:-ms-input-placeholder {
    color: #999;
    font-size: 14px;
    font-weight: normal;
}

.login .item i {
    vertical-align: middle;
    width: 14px;
    height: 14px;
    background: url(/public/admin/images/ico-close.png) no-repeat center;
    background-size: 100% 100%;
    cursor: pointer;
    margin-left: 8px;
    opacity: .72;
    display: none;
}

.login .item i.on{
    display: inline-block;
}

.login .item i:hover {
    opacity: 1;
}

.login .submit {
    border: none;
    background: #09C;
    margin-top: 20px;
    opacity: .8;
    box-shadow: 0 5px 10px 0px #07495f;
}

.login .submit:hover{
    opacity: 1;
}

.login .submit a {
    display: block;
    text-align: center;
    line-height: 50px;
    height: 50px;
    color: #fff;
    text-decoration: none;
}


.error {
    visibility: hidden;
}

.error.on{
    visibility: visible;
}

.error img{
    display: inline-block;
    width: 14px;
    height: 14px;
    vertical-align: middle;
}

.error span{
    vertical-align: middle;
    color: #FF9800;
    margin-left: 6px;
    font-size: 12px;
    line-height: 22px;
    height: 22px;
}