﻿/* #region login */

body.login {
    background-image: url('../images/bg.jpg');
    background-position: left top;
}

body {
    background-image: url('../images/bg-index.jpg');
    background-position: left bottom;
    background-size: cover;
    height: 100vh;
    background-repeat: no-repeat;
}

/* #endregion */


/* #region loginBlk */
.loginBlk {
    height: 100vh;
    width: 70%;
    float: right;
    overflow-y: auto;
    display: flex;
}

@media (max-width:1440px) {
    .loginBlk {
        width: 80%;
    }
}

@media (max-width:991px) {
    .loginBlk {
        float: initial;
        justify-content: center;
        align-items: center;
        width: initial;
    }

    .triangle {
        display: none;
    }
}

@media (max-height:725px) {
    .loginBlk {
        height: initial;
    }
}
/* #endregion */

.triangle img {
    height: 100vh;
    width: auto;
}

/* #region VA-Blk */
.VA-Blk, .forgetBlk {
    background-color: #f1f1f1;
    padding: 1.5rem;
    min-height: 286px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 0.375rem;
    transition: all .5s;
}

.VA-Blk_inner {
    min-width: 70%;
    text-align: center;
}

@media (max-width:575px) {
    .VA-Blk_inner, .forgetBlk_inner {
        width: 100%;
    }

    .VA-Blk, .forgetBlk, .registerBlk {
        padding: 1rem;
    }
}

.VA-Blk label {
    color: #666;
    /* margin-bottom: 0.25rem; */
    margin-right: 0.5rem;
}

.VA-Blk input {
    margin-bottom: 1rem;
    text-align: center;
}

.VA-Blk .time {
    margin-bottom: 1rem;
    font-size: 1.5rem;
    font-weight: bold;
}

    .VA-Blk .time span {
        display: block;
        font-weight: normal;
        font-size: 0.9rem;
    }

/* #endregion */


/* #region login form 、 login-register 、 login-form_inner */
.login-form {
    background-color: #fff;
    min-height: 95vh; /* 保證有足夠高度 */
    height: 100vh; /* 撐滿畫面高度 */
    flex: 1;
    display: flex;
    justify-content: safe center; /* 原本是 center，會導致壓縮上方 */
    align-items: center;
    flex-direction: column;
    overflow-y: auto; /* 若內容超出時可滾動 */
    padding-top: 2rem; /* 避免內容頂到 logo */
}

.login-register {
    padding-top: 35vh;
    min-height: 100vh;
    overflow-y: auto;
    transition: all .5s;
}

@media (max-width:991px) {
    .login-form {
        padding-top: 2rem;
        margin: 0 1rem;
        max-width: 500px;
        justify-content: center;
    }

    .login-register {
        margin: 0;
        /*position: absolute;*/
        top: 0;
        left: 0;
        width: 100%;
        /*height: 100vh;*/
        overflow-y: auto;
        max-width: inherit;
        padding: 100px 15% 2rem;
        justify-content: flex-start;
        z-index: 1;
        background: transparent;
    }
}

@media (max-width:768px) {
    .login-register {
        padding: 100px 10% 2rem;
    }
}

@media (max-width:576px) {
    .login-register {
        padding: 100px 1rem 2rem;
    }
}

.login-form_inner {
    width: 80%;
    transition: all .5s;
    background: #fff;
    padding: 1rem 0 2rem;
}

@media (min-width:1440px) {
    .login-form_inner {
        width: 65%;
        max-width: 680px;
    }
}

@media (max-width:991px) {
    .login-form_inner {
        width: 100%;
        padding: 1rem 10% 2rem;
    }
}

.login-form_inner [type="submit"], .login-form_inner .btn {
    width: 100%;
    background-color: #48a7c9;
    color: #fff;
    font-size: 1.25rem;
}

    .login-form_inner [type="submit"]:hover, .login-form_inner .btn:hover {
        background-color: #399ec3;
    }
/* #endregion */

/* #region bottom */
.bottomBlk {
    text-align: center;
    margin-top: 2rem;
}

    .bottomBlk p {
        margin-bottom: 0.25rem;
        font-size: 0.9rem;
        color: #666;
    }
/* #endregion */

/* #region forgetBlk 、 registerBlk 、 forgetBlk */
.forgetBlk_inner {
    min-width: 90%;
    text-align: center;
}

.registerBlk {
    background-color: #f6f6f6;
    padding: 2rem;
    min-height: inherit;
}

    .registerBlk .forgetBlk_inner {
        width: 100%;
    }

    .registerBlk .input-group label {
        margin-right: 0;
        width: 28%;
        font-weight: 600;
        transition: all .5s;
    }

        .registerBlk .input-group label ~ * {
            width: 72%;
            transition: all .5s;
        }

@media (max-width:1200px) {
    .registerBlk .input-group label {
        width: 35%;
    }

        .registerBlk .input-group label ~ * {
            width: 65%;
        }
}

.registerBlk_inner {
    border-top: 1px dotted #ccc;
    padding: 1.5rem 0 .5rem .5rem;
}

.registerBlk .forgetBlk_inner > div:nth-child(3) {
    border-bottom: 1px dotted #ccc;
    margin-bottom: 1.5rem;
}

.registerBlk_terms {
    padding: 1rem;
    overflow-y: scroll;
    height: 20rem;
    border: 2px solid #ddd;
    background-color: #fff;
    text-align: left;
}


.forgetBlk label {
    color: #333;
    /* margin-bottom: 0.25rem; */
    margin-right: 0.5rem;
    width: 112px;
    text-align: left;
    font-weight: 600;
    line-height: 2;
}

.forgetBlk .input-group {
    align-items: center;
    margin-bottom: 1rem;
}

    .forgetBlk .input-group .input-group-flex {
        display: flex;
    }

        .forgetBlk .input-group .input-group-flex > div {
            width: calc(100% - 120px);
            transition: all .5s;
        }

            .forgetBlk .input-group .input-group-flex > div:last-child {
                width: 120px;
                padding-left: .25rem;
            }

    .forgetBlk .input-group input {
        border-radius: 0.375rem !important;
    }

@media (max-width:991px) {
    .forgetBlk .input-group input {
        width: 100%;
    }

    .registerBlk .input-group label,
    .registerBlk .input-group label ~ * {
        width: 100%;
    }

    .forgetBlk .input-group {
        flex-flow: column;
        justify-content: flex-start;
        align-items: flex-start;
    }
}

@media (max-width:414px) {
    .forgetBlk .input-group .input-group-flex {
        flex-flow: column;
    }

        .forgetBlk .input-group .input-group-flex > div {
            width: 100%;
        }

            .forgetBlk .input-group .input-group-flex > div:last-child {
                width: 100%;
                padding-left: 0;
                padding-top: .25rem;
            }
}

.forgetBlk .registerBlk_termscheck .form-check {
    padding: 1rem 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .forgetBlk .registerBlk_termscheck .form-check .form-check-input {
        float: inherit;
        margin-left: 0;
        margin-right: .5rem;
        margin-top: 0;
    }

.forgetBlk .registerBlk_termscheck label {
    margin-right: 0.5rem;
    width: auto;
}
/* #endregion */

/* #region qrcode */
.qrcode h4 {
    text-align: left;
    font-weight: bold;
    font-size: 1.25rem;
    line-height: 1.5;
    margin-bottom: 0.5rem;
}

.qrcode p {
    margin-bottom: 0.25rem;
    text-align: left;
}
/* #endregion */