body {
    min-width: 1340px;
}

#vue-content {
    font-size: 14px;

    .btn-submit {
        width: 100%;
        height: 40px;
        background: #f2475c;
        border-radius: 4px;
        color: #fff;
        line-height: 40px;
        text-align: center;
        transition: all 0.2s;
        user-select: none;

        i.fa {
            margin-right: 5px;
        }

        @keyframes spin {
            from {
                transform: rotate(0deg);
            }
            to {
                transform: rotate(360deg);
            }
        }

        i.fa-spinner {
            animation: spin 1s linear infinite;
        }

        &.disabled {
            background: rgba(242, 71, 92, 0.45) !important;
            cursor: not-allowed !important;
        }

        &:hover {
            background: #e40a1b;
            cursor: pointer;
        }
        &:active {
            background: #c40000;
        }
    }
    .body {
        background: url(/images/register/register-bg.png) no-repeat center top;
        height: 750px;

        .main {
            width: 1200px;
            margin: 0 auto;
            box-sizing: border-box;
            // padding: 0 85px;
            padding-top: 78px;
            position: relative;

            .back-home {
                position: absolute;
                right: -70px;
                height: 50px;
                line-height: 50px;
                width: 136px;
                background-color: #fff;
                color: #f2475c;
                top: 0;
                text-align: center;
                cursor: pointer;
                font-size: 15px;
            }

            .register {
                width: 378px;
                min-height: 392px;
                background: #ffffff;
                box-shadow: 0px 8px 15px 0px rgba(242, 71, 71, 0.81);
                border-radius: 8px;
                float: right;
                box-sizing: border-box;
                padding: 24px;

                .tab-list {
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    gap: 50px;
                    padding-top: 8px;
                    padding-bottom: 20px;

                    .tab-item {
                        color: rgba(0, 0, 0, 0.45);
                        position: relative;
                        cursor: pointer;
                        font-size: 16px;
                        height: 21px;
                        line-height: 21px;

                        &.active {
                            color: #f2475c;
                            font-weight: 700;

                            &::after {
                                content: "";
                                position: absolute;
                                width: 100%;
                                bottom: -10px;
                                height: 2px;
                                background-color: #f2475c;
                            }
                        }
                    }
                }

                .input {
                    margin-top: 10px;
                    position: relative;

                    .country-selector {
                        display: flex;
                        width: 55px;
                        align-items: center;
                        justify-content: flex-end;
                        flex-shrink: 0;

                        .selector-list {
                            position: absolute;
                            height: 260px;
                            width: 200px;
                            left: 0;
                            top: 41px;
                            z-index: 1;
                            background: #fff;
                            border-radius: 4px;
                            box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.15);
                            overflow-y: auto;
                            overflow-x: hidden;
                            transition: all 0.2s;

                            &.hide {
                                height: 0 !important;
                            }

                            .selector-item {
                                padding: 0 10px;
                                height: 30px;
                                line-height: 30px;
                                overflow: hidden;

                                &:hover {
                                    background: #f5f5f5;
                                }
                            }
                        }

                        i.fa {
                            margin-left: 5px;
                            transition: all 0.2s;

                            &.show {
                                rotate: 180deg;
                            }
                        }
                    }

                    .line {
                        display: flex;
                        gap: 10px;
                    }

                    .input-body {
                        &:hover {
                            box-shadow: 0px 0px 6px 0px rgba(245, 34, 45, 0.25);
                            border: 1px solid #ffcdd3;
                        }
                    }

                    &.hover {
                        .input-body {
                            box-shadow: 0px 0px 6px 0px rgba(245, 34, 45, 0.25);
                            border: 1px solid #ffcdd3;
                        }
                    }

                    &.error {
                        .input-body {
                            box-shadow: 0px 0px 6px 0px rgba(245, 34, 45, 0.25);
                            border: 1px solid #f5222d;
                        }
                    }

                    .input-body {
                        width: 330px;
                        height: 40px;
                        background: #ffffff;
                        border-radius: 4px;
                        border: 1px solid #d9d9d9;
                        display: flex;
                        align-items: center;
                        padding: 0 12px;
                        box-sizing: border-box;
                        cursor: pointer;
                        font-size: 14px;
                        gap: 10px;

                        .icon {
                            width: 12px;
                            height: 12px;
                            flex-shrink: 0;
                            object-fit: contain; /* 保持比例，完整显示，盒子里可能有空白 */
                            background-color: #fff; /* 可选：留白背景色 */
                        }

                        .label {
                            flex-shrink: 0;
                            min-width: 42px;
                        }

                        input {
                            height: 100%;
                            width: 100%;
                            border: none;
                            outline: none;
                            font-size: 14px;
                        }
                    }

                    .input-info {
                        height: 16px;
                        margin-top: 4px;
                        font-size: 12px;
                        padding: 0 2px;

                        i.fa {
                            margin-right: 3px;
                        }

                        .tip-info {
                            float: left;
                            color: #036efd;
                            cursor: pointer;
                        }

                        .error-info {
                            float: right;
                            color: #f5222d;
                        }
                    }

                    .tips {
                        height: 32px;
                        border-radius: 4px;
                        position: absolute;
                        top: 44px;
                        left: 0;
                        width: 100%;
                        filter: drop-shadow(0px 4px 12px rgba(0, 0, 0, 0.15));
                        background-color: #fff;
                        text-align: center;
                        line-height: 32px;
                        font-size: 12px;

                        i.fa {
                            margin-right: 5px;
                            color: #f2475c;
                        }

                        &::before {
                            position: absolute;
                            display: inline-block;
                            top: -3px;
                            left: 50%;
                            width: 0;
                            height: 0px;
                            content: "";
                            border-style: solid;
                            border-width: 4px;
                            border-color: #fff #fff transparent transparent;
                            transform: rotate(-45deg);
                        }
                    }
                }

                .btn-submit.login {
                    margin-top: 35px;
                }

                .wechat-code {
                    width: 150px;
                    height: 165px;
                    background: linear-gradient(0deg, #ffd4d438 0%, #ff809738 100%);
                    border-radius: 4px;
                    margin: 0 auto;
                    box-sizing: border-box;
                    padding: 5px;
                    margin-top: 20px;

                    .wechat-title {
                        height: 22px;
                        font-size: 14px;
                        color: #ad051a;
                        line-height: 22px;
                        text-align: center;
                    }

                    .qr-code {
                        height: 120px;
                        width: 120px;
                        display: grid;
                        place-items: center;
                        background: #fff;
                        margin: 8px auto;

                        .img {
                            width: 120px;
                            height: 120px;
                        }
                    }
                }

                .tip-line {
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    margin-top: 10px;
                    gap: 7px;

                    .icon-wechat {
                        width: 16px;
                        height: 16px;
                        background-color: #20c100;
                        color: #fff;
                        border-radius: 3px;
                        font-size: 10px;
                        display: grid;
                        place-items: center;
                    }
                }

                .agreement {
                    text-align: center;
                    font-size: 12px;
                    color: #036efd;
                    line-height: 16px;
                    margin-top: 10px;
                    cursor: pointer;
                }

                .other-way {
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    margin-top: 10px;
                    font-size: 12px;
                    cursor: pointer;
                    margin-bottom: 10px;

                    .icon {
                        height: 24px;
                        width: 24px;
                        border-radius: 12px;
                        background-color: #358bfd;
                        color: #fff;
                        display: grid;
                        place-items: center;
                        margin-right: 10px;

                        .fa-mobile {
                            font-size: 19px;
                        }
                    }
                }
            }
        }
    }
}
