.bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    background: rgba(0, 0, 0, 0.7);
    z-index: 2;
}

.all {
    text-align: center;
    width: 320px;
    height: 70px;
    line-height: 70px;
    background: #01AB84;
    border-radius: 35px;
    font-size: 28px;
    font-family: PingFangSC-Regular, PingFang SC;
    font-weight: 400;
    color: #FFFFFF;
    position: absolute;
    top: 230px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 4;
}

.time {
    text-align: center;
    width: 750px;
    position: absolute;
    top: 138px;
    left: 0;
    z-index: 4;
    font-size: 32px;
    font-family: PingFangSC-Medium, PingFang SC;
    font-weight: 500;
    color: #FFFFFF;
}

.cover {
    width: 100%;
    height: 100%;
}

.mask {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    backdrop-filter: blur(12px) brightness(50%);
    z-index: 3;
}

.container .list, .container .catalogue {
    width: 694px;
    margin-left: 22px;
    margin-bottom: 150px;
}

.container .tab .tab-item {
    display: inline-block;
    text-align: left;
    height: 70px;
    line-height: 70px;
    margin-left: 30px;
    font-size: 28px;
    font-family: PingFangSC-Regular, PingFang SC;
    font-weight: 400;
    color: #868686;
}

.main-container {
    width: 100%;
    display: flex;
    flex-direction: row;
}

.container .tab-container {
    width: 894px;
    height: 70px;
}

.container .tab-container .tab-item {
    display: inline-block;
    text-align: left;
    min-width: 44px;
    line-height: 70px;
    margin-right: 30px;
    font-size: 20px;
    font-family: PingFangSC-Regular, PingFang SC;
    font-weight: 400;
    color: #676767;
    transition: all 0.3s;
    cursor: pointer;
}

.container .tab-container .tab-item:hover {
    color: #2D2D2D;
}

.tab-content {
    margin-top: 4px;
    padding-top: 23px;
    border-top: 1px solid #F0F2F5;
    display: flex;
    flex-wrap: wrap;
    color: #111;
}

.container .tab-container .active {
    font-family: PingFangSC-Medium, PingFang SC;
    font-weight: 500;
    color: #2D2D2D;
    position: relative;
    transition: all 0.3s;
}

.container .tab-container .active:after {
    content: "";
    width: 36px;
    height: 8px;
    background: #01AB84;
    border-radius: 4px;
    position: absolute;
    left: 50%;
    bottom: 0px;
    transform: translateX(-50%);
}

.container .tab .tab-item:first-child {
    margin-left: 0px;
}

.page-container {
    color: #333333;
}

.container .video-item video {
    width: 100%;
    height: 100%;
    /*width: 675px;*/
    /*height: 380px;*/
    border-radius: 6px;
}

.page-container .banner-container {
    width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    overflow: hidden;
}

.rightcss {
    flex: 1;
    padding-left: 24px;
}

.rightcss .title {
    font-size: 22px;
    font-family: PingFangSC-Semibold, PingFang SC;
    font-weight: 600;
    color: #2D2D2D;
    line-height: 30px;
}

.rightcss .description {
    flex: 1;
    margin: 16px 0;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
}

.description .description-item {
    display: flex;
    font-size: 14px;
    font-family: PingFangSC-Regular, PingFang SC;
    font-weight: 400;
    color: #868686;
    line-height: 18px;
    margin-right: 24px;
    align-items: center;
}

.description .description-item i {
    margin-right: 5px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #01AB84;
}

.price-container {
    display: flex;
    height: 50px;
    background: #F2F2F2;
    border-radius: 5px;
    padding-left: 16px;
    align-items: center;
}

.price-container .price-wrap {
    font-size: 32px;
    font-weight: 600;
    color: #FF5F00;
}

.price-container .price-wrap span {
    font-size: 20px;
    color: #FF5F00;
}

.buy-btn {
    margin-top: 32px;
    width: 180px;
    height: 40px;
    background: #FF5F00;
    border-radius: 5px;
    font-size: 18px;
    font-family: PingFangSC-Semibold, PingFang SC;
    font-weight: 600;
    color: #FFFFFF;
    line-height: 40px;
    text-align: center;
    border: none;
    cursor: pointer;
}

.bofang {
    border-radius: 6px;
}

.tab-content .course-card {
    width: 100%;
    height: 114px;
    display: flex;
    margin-bottom: 16px;
    cursor: pointer;
}

.tab-content .course-card .course-card-cover-wrap {
    width: 202px;
    height: 114px;
    background: #000000;
    border-radius: 5px;
    position: relative;
}

.tab-content .course-card .course-card-cover-wrap img {
    border-radius: 5px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.course-card-cover-mask {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 5px;
}

.course-card-cover-mask:after {
    content: '';
    width: 26px;
    height: 26px;
    background: url("http://files.qkyxzx.com/html5/bofang.png") 100% center;
    background-size: 100% 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
}

.course-card-info {
    margin-left: 16px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 600px;
}

.play-active .course-card-info .course-card-title {
    color: #01AB84;
}

.course-card-info .course-card-title {
    font-size: 17px;
    font-family: PingFangSC-Medium, PingFang SC;
    font-weight: 400;
    color: #1d1d1d;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    transition: color 0.3s;
}

.tab-content .course-card:hover .course-card-title {
    color: #01AB84;
    font-weight: 500;
}


.tab-content .course-card:hover .course-card-desc {
    color: #646464;
}

.course-card-info .course-card-desc {
    margin-top: 8px;
    font-size: 14px;
    font-family: PingFangSC-Regular, PingFang SC;
    font-weight: 400;
    color: #868686;
    line-height: 18px;
    transition: color 0.3s;

}

.fade-enter-active, .fade-leave-active {
    transition: opacity .3s;
}

.fade-enter, .fade-leave-to {
    opacity: 0;
}

.page-loading,
.page-loading > div {
    position: relative;
    box-sizing: border-box;
}

.page-loading {
    display: block;
    font-size: 0;
    color: #01AB84;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
}

.page-loading.la-dark {
    color: #333;
}

.page-loading > div {
    display: inline-block;
    float: none;
    background-color: currentColor;
    border: 0 solid currentColor;
}

.page-loading {
    width: 48px;
    height: 48px;
}

.page-loading > div:nth-child(1),
.page-loading > div:nth-child(2) {
    position: absolute;
    left: 0;
    width: 100%;
}

.page-loading > div:nth-child(1) {
    top: -25%;
    z-index: 1;
    height: 100%;
    border-radius: 10%;
    animation: square-jelly-box-animate 0.6s -0.1s linear infinite;
}

.page-loading > div:nth-child(2) {
    bottom: -9%;
    height: 10%;
    background: #01AB84;
    border-radius: 50%;
    opacity: 0.2;
    animation: square-jelly-box-shadow 0.6s -0.1s linear infinite;
}

.page-loading.la-sm {
    width: 16px;
    height: 16px;
}

.page-loading.la-2x {
    width: 64px;
    height: 64px;
}

.page-loading.la-3x {
    width: 96px;
    height: 96px;
}

@keyframes square-jelly-box-animate {
    17% {
        border-bottom-right-radius: 10%;
    }

    25% {
        transform: translateY(25%) rotate(22.5deg);
    }

    50% {
        border-bottom-right-radius: 100%;
        transform: translateY(50%) scale(1, 0.9) rotate(45deg);
    }

    75% {
        transform: translateY(25%) rotate(67.5deg);
    }

    100% {
        transform: translateY(0) rotate(90deg);
    }
}

@keyframes square-jelly-box-shadow {
    50% {
        transform: scale(1.25, 1);
    }
}

.writeform textarea {
    height: 150px;
    background: #F6F7FB;
    border: 0;
    display: block;
    width: 100%;
    font-size: 16px;
    border-radius: 5px;
    box-sizing: border-box;
    padding-left: 20px;
}

#zipingBtn {
    width: 200px;
    border: 0;
    height: 40px;
    background: #01AB84;
    border-radius: 5px;
    color: #fff;
    font-weight: 400;
    font-size: 16px;
    transition: all .5s;
    cursor: pointer;
    margin-top: 30px;
}

.swiper-container {
    width: 100%;
    height: 160px;
    background: #EDF8EF;
    margin: 32px auto;
    position: relative;
    overflow: hidden;
}

.swiper-container img {
    width: 100%;
    height: 160px;
}
