/* 在线链接服务仅供平台体验和调试使用，平台不承诺服务的稳定性，企业客户需下载字体包自行发布使用并做好备份。 */
@font-face {
    font-family: 'iconfont';
    /* Project id 4660907 */
    src: url('//at.alicdn.com/t/c/font_4660907_obo8au1r4bj.woff2?t=1724284380698') format('woff2'),
        url('//at.alicdn.com/t/c/font_4660907_obo8au1r4bj.woff?t=1724284380698') format('woff'),
        url('//at.alicdn.com/t/c/font_4660907_obo8au1r4bj.ttf?t=1724284380698') format('truetype');
}
.zib-widget.widget_ziy51_banner_widget {
    padding: 0!important;
    border: none!important;
    background: transparent!important;
    box-shadow: none!important;
    margin-bottom: 20px!important
}

#home_top {
    max-width:var(--mian-max-width);
    margin: auto;
    margin-top: .5rem;
    padding: 0 .5rem;
    width: 100%;
    background: transparent!important
}

@media screen and (max-width: 768px) {
    #home_top {
        padding:0;
        margin-top: 0
    }
}

.recent-top-post-group {
    border-radius: 12px;
    overflow: hidden;
    overflow-x: auto;
    width: 100%;
    margin-bottom: 0
}

.recent-post-top {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    width: 100%;
    overflow-x: scroll
}

.recent-post-top::-webkit-scrollbar {
    display: none
}

.recent-post-top .recent-post-item {
    display: flex;
    width: 200px;
    flex-direction: column;
    align-items: flex-start;
    margin-left: .5rem;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    min-width: 200px;
    height: 164px;
    max-height: 164px;
    border: var(--style-border-always);
    transition: .3s;
    position: relative;
    box-shadow: var(--heo-shadow-border)
}

@media screen and (max-width: 768px) {
    .recent-post-top .recent-post-item {
        border-radius:8px;
        box-shadow: none;
        clip-path: inset(0 0 0 0 round 8px)
    }

    .recent-post-top .recent-post-item:last-child {
        margin-right: 1rem
    }
}

@media screen and (min-width: 1200px) {
    .recent-post-top .recent-post-item {
        margin-right:0;
        margin-bottom: .5rem
    }

    .recent-post-top .recent-post-item:active {
        transform: scale(.97)
    }

    .recent-post-top {
        overflow-x: visible
    }

    .recent-top-post-group {
        overflow: visible;
        overflow-x: visible
    }
}

span.recent-post-top-text {
    position: absolute;
    top: 0;
    left: -40px;
    display: flex;
    z-index: 1;
    background: #425aef;
    color: #fff;
    padding: 2px 8px;
    font-size: .6rem;
    border-radius: 12px 0;
    transition: .3s;
    cursor: pointer
}

.recent-post-item:hover .recent-post-top-text {
    left: 0
}

@media screen and (max-width: 1200px) {
    #home_top {
        display:none
    }
}

@media screen and (min-width: 1200px) {
    .recent-post-top .recent-post-item:hover {
        border:var(--style-border-hover);
        box-shadow: var(--bywind-shadow-main);
        transform: scale(1.03)
    }

    .recent-post-top .recent-post-item:active {
        transform: scale(.97)
    }
}

@media screen and (max-width: 768px) {
    .recent-top-post-group {
        border-radius:0;
        background: var(--bywind-background)
    }

    .recent-post-top-text {
        display: none!important
    }

    .recent-post-top .recent-post-item .post_cover img {
        border-radius: 8px 8px 0 0!important
    }
}

.recent-post-top .recent-post-item .post_cover a {
    height: 100px;
    overflow: hidden;
    display: flex
}

.recent-post-top .recent-post-item .post_cover img {
    object-fit: cover;
    width: 100%;
    background: var(--bywind-secondbg);
    border-radius: 12px 12px 0 0
}

.recent-post-top .recent-post-item:hover .post_cover img {
    transform: scale(1)
}

.recent-post-top .recent-post-item .recent-post-info {
    padding: .3rem .5rem .3rem .5rem!important;
    transition: .3s
}

.recent-post-top .recent-post-item:hover .recent-post-info a {
    color: var(--bywind-fontcolor)
}

@media screen and (max-width: 1200px) {
    .recent-post-top .recent-post-item:hover .recent-post-info a {
        transition:.3s
    }
}

.recent-post-top .recent-post-item .recent-post-info .article-title {
    -webkit-line-clamp: 2;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    line-height: 1.5;
    justify-content: center;
    align-items: flex-end;
    align-content: center;
    padding-top: .5rem;
    font-weight: 700;
    font-size: .8rem!important;
    padding: 0!important
}

.categoryItem {
    overflow: hidden;
    transform: scale(1);
    transition: all .8s cubic-bezier(.65,.15,.37,1.19);
    height: 48%;
    border-radius: 12px
}

a.categoryButton {
    height: 100%;
    width: 100%;
    background: rgba(255,255,255,.67);
    border-radius: 12px;
    display: inline-block;
    text-align: left;
    line-height: 4em;
    font-weight: 800;
    font-size: 16px;
    color: #fff;
    transition: all .8s cubic-bezier(.39,.575,.565,1);
    transform: scale(1);
    overflow: hidden
}

a.categoryButton i {
    transform: scale(1) rotate(15deg);
}

@media screen and (min-width: 1200px) {
    a.categoryButton:active {
        transform:scale(.97)
    }
}

@media screen and (max-width: 768px) {
    a.categoryButton {
        border-radius:8px
    }

    .categoryItem {
        border-radius: 0;
        height: 47%;
        box-shadow: none!important
    }
}

a.categoryButton:after {
    top: 45px;
    width: 1rem;
    left: 21px;
    height: 2px;
    background: #fff;
    content: "";
    border-radius: 1px;
    position: absolute
}

.categoryButtonText {
    padding-left: 21px
}

a.categoryButton i {
    font-size: 12rem;
    opacity: .3;
    position: absolute;
    right: 15px;
    top: 10%;
    transition: .3s;
    width: 100px;
    text-align: center;
    filter: blur(2px)
}

@media screen and (max-width: 768px) {
    a.categoryButton i {
        display:none
    }

    .recent-post-top .categoryGroup {
        min-width: 130px!important;
        margin-bottom: .5rem;
        margin-left: 1rem;
        max-height: 164px;
        overflow: hidden;
        position: relative
    }
}

.topGroup {
    display: flex
}

#bannerGroup {
    display: flex
}

div#banners {
    display: none
}

.topGroup .todayCard {
    display: none
}

@media screen and (min-width: 1200px) {
    .topGroup {
        display:flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-end;
        height: calc(328px + .5rem);
        align-content: space-between;
        width: calc(600px + 1.5rem);
        position: relative
    }

    div#bannerGroup {
        width: calc(100% - 600px - 2rem);
        margin-right: .5rem;
        height: calc(328px + .5rem);
        display: flex;
        flex-direction: column;
        justify-content: space-between
    }

    div#banners {
        display: flex;
        width: 100%;
        height: 76%;
        background: var(--bywind-card-bg);
        margin-bottom: .5rem;
        border: var(--style-border);
        border-radius: 12px;
        overflow: hidden;
        position: relative;
        box-shadow: var(--bywind-shadow-border);
        flex-direction: column;
        transition: .3s;
        clip-path: inset(0 0 0 0 round 12px)
    }

    div#banners:hover {
        box-shadow: var(--bywind-shadow-main)
    }

    #banners.flink {
        margin-bottom: .5rem
    }

    #banners .banner-button-group {
        position: absolute;
        right: 2rem;
        top: 2rem;
        display: flex
    }

    #banners .banner-button {
        padding: 8px 12px;
        background: var(--bywind-fontcolor);
        border-radius: 12px;
        color: var(--bywind-card-bg);
        display: flex;
        align-items: center;
        z-index: 1;
        transition: .3s;
        cursor: pointer;
        box-shadow: var(--bywind-shadow-black)
    }

    #banners .banner-button.secondary {
        background: var(--bywind-secondbg);
        border: var(--style-border-always);
        color: var(--bywind-lighttext);
        margin-right: 1rem;
        box-shadow: var(--bywind-shadow-border)
    }

    .banner-button:hover {
        background: #425aef
    }

    #banners .banner-button i {
        margin-right: 8px;
        font-size: 1rem
    }

    .banners-title {
        top: 2rem;
        left: 1.5rem;
        position: absolute;
        display: flex;
        flex-direction: column
    }

    .banners-title-big {
        font-size: 36px;
        line-height: 1;
        font-weight: 700;
        margin-bottom: 8px
    }

    .banners-title-small {
        font-size: 12px;
        line-height: 1;
        color: var(--bywind-secondtext);
        margin-top: 8px;
        margin-bottom: .5rem
    }

    #banner-hover {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        backdrop-filter: blur(15px)!important;
        padding-left: .5rem;
        display: flex;
        flex-direction: column;
        justify-content: center;
        opacity: 0;
        transition: cubic-bezier(.71,.15,.16,1.15) .6s
    }

    .bannerText {
        color: #fff;
        font-size: 4rem;
        line-height: 4rem;
        font-weight: 700;
        margin-top: 20px
    }

    .bannerText:after {
        content: '\e603';
        font-family: 'iconfont'
    }

    #banner-hover .icon-right:before {
        font-family: 'iconfont'!important;
        content: '\e6c9' !important;
        color: #fff
    }

    .banner-righticon {
        font-size: 4rem;
        opacity: .6
    }

    #banners:hover #banner-hover {
        opacity: 1;
        padding-left: 2rem;
        background: #4259efc9;
        backdrop-filter: blur(15px);
        -webkit-backdrop-filter: blur(15px);
        -webkit-backface-visibility: hidden;
        -webkit-transform-style: preserve-3d;
        transition: .3s;
        background-size: 200%;
        cursor: pointer
    }

    #banners #banner-hover i {
        font-size: 80px;
        opacity: .4
    }

    .topGroup .todayCard {
        position: absolute;
        width: calc(600px + 1rem);
        height: 100%;
        z-index: 1;
        top: 0;
        left: 0;
        background: var(--bywind-card-bg);
        border-radius: 12px;
        margin-left: .5rem;
        overflow: hidden;
        transition: .3s;
        display: flex;
        cursor: pointer;
        pointer-events: all
    }

    .topGroup .todayCard:after {
        position: absolute;
        content: '';
        width: 100%;
        height: 100%;
        top: 0;
        left: 0
    }

    .topGroup .todayCard.hide {
        opacity: 0;
        pointer-events: none
    }

    .topGroup .todayCard .todayCard-info {
        position: absolute;
        bottom: 2rem;
        left: 2rem;
        z-index: 2;
        max-width: 60%;
        transition: .3s
    }

    .topGroup .todayCard.hide .todayCard-info {
        bottom: 1rem;
        opacity: 0
    }

    .topGroup .todayCard .todayCard-info .todayCard-tips {
        opacity: .8;
        font-size: 1.6rem
    }

    .topGroup .todayCard .todayCard-info .todayCard-title {
        font-size: 28px;
        font-weight: 700;
        line-height: 36px
    }

    .topGroup .banner-button-group {
        position: absolute;
        right: 2rem;
        bottom: 2rem;
        display: flex;
        transition: .3s
    }

    .topGroup .todayCard.hide .banner-button-group {
        bottom: 1rem
    }

    .topGroup .banner-button {
        border-radius: 20px;
        display: flex;
        align-items: center;
        z-index: 1;
        transition: .3s;
        cursor: pointer;
        backdrop-filter: saturate(180%) blur(20px)!important;
        -webkit-backdrop-filter: blur(20px);
        transform: translateZ(0);
        height: 40px;
        width: 118px;
        justify-content: center
    }

    .topGroup .banner-button i {
        margin-right: 8px;
        font-size: 22px
    }

    .todayCard-cover-slides {
        position: relative;
        width: 100%;
        height: 100%;
        overflow: hidden;
        z-index: -1
    }

    .todayCard-slides-wrapper {
        display: flex;
        width: 100%;
        height: 100%;
        transition: transform .5s ease-in-out
    }

    .todayCard-slide-item {
        min-width: 100%;
        flex-shrink: 0;
        height: 100%;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        display: block
    }

    .todayCard-slider-nav {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2em;
        color: rgba(255,255,255,.7);
        cursor: pointer;
        z-index: 10;
        padding: 0 10px;
        background-color: rgba(0,0,0,.3);
        border-radius: 5px;
        transition: background-color .3s ease;
        user-select: none;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 40px;
        width: 40px
    }

    .todayCard-slider-nav:hover {
        background-color: rgba(0,0,0,.5)
    }

    .todayCard-slider-nav.prev {
        left: 10px
    }

    .todayCard-slider-nav.next {
        right: 10px
    }

    .todayCard-slider-nav:before {
        font-family: 'iconfont'!important;
        font-size: inherit;
        font-style: normal;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale
    }

    .todayCard-slider-nav.prev:before {
        content: "\e604"
    }

    .todayCard-slider-nav.next:before {
        content: "\e605"
    }

    .tags-group-icon {
        width: 120px;
        height: 120px;
        border-radius: 30px
    }

    .tags-group-all {
        display: flex;
        transform: rotate(-30deg)
    }

    .tags-group-all.nowrapMove {
        transform: rotate(0);
        padding-bottom: 2rem
    }

    .tags-group-wrapper {
        margin-top: 5rem;
        display: flex;
        flex-wrap: nowrap;
        animation: rowup 60s linear infinite
    }

    .nowrapMove .tags-group-wrapper {
        margin-top: 7rem;
        animation: rowup 120s linear infinite
    }

    .tags-group-icon-pair .tags-group-icon:nth-child(even) {
        margin-top: 1rem;
        transform: translate(-60px)
    }

    .tags-group-icon-pair {
        margin-left: 1rem
    }

    .tags-group-icon {
        display: flex;
        align-items: center;
        justify-content: center;
        color: #fff;
        font-size: 66px;
        font-weight: 700;
        box-shadow: var(--bywind-shadow-blackdeep)
    }

    .nowrapMove .tags-group-icon {
        border-radius: 50%
    }

    .tags-group-icon img {
        width: 60%
    }

    .nowrapMove .tags-group-icon img {
        min-width: 100%;
        min-height: 100%;
        border-radius: 50%;
        object-fit: cover
    }

    .categoryItem:hover i {
        opacity: .8;
        transition: .8s;
        transition-delay: .15s;
        transform: scale(1.03) rotate(0);
        font-size: 4rem;
        filter: blur(0)
    }

    @media screen and (min-width: 1200px) {
        .categoryItem:hover i {
            transform:scale(1.03) rotate(0)
        }
    }

    .cate-button-text {
        box-shadow: var(--bywind-shadow-black)
    }

    .recent-post-top .categoryGroup {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        min-width: 200px
    }

    .categoryGroup .categoryItem:nth-child(3) {
        display: none
    }

    @media screen and (min-width: 1200px) {
        .recent-post-top .categoryGroup {
            flex-direction:row;
            height: 24%
        }

        .categoryItem {
            width: calc(100%/3 - .33rem);
            height: 100%;
            margin-right: .5rem
        }

        .categoryItem:last-child {
            margin-right: 0
        }

        .categoryItem:hover {
            width: 50%
        }

        .categoryGroup .categoryItem:nth-child(3) {
            display: flex
        }
    }

    a.categoryButton.wniui_one {
        background: linear-gradient(to right,#358bff,#15c6ff);
        background-size: 200%
    }

    a.categoryButton.wniui_two {
        background: linear-gradient(to right,#f65,#ffbf37);
        background-size: 200%
    }

    a.categoryButton.wniui_three {
        background: linear-gradient(to right,#18e7ae,#1eebeb);
        background-size: 200%
    }

    [data-theme=dark] a.categoryButton.wniui_one {
        background: linear-gradient(to right,#0653b8,#2fcbff);
        background-size: 200%
    }

    [data-theme=dark] a.categoryButton.wniui_two {
        background: linear-gradient(to right,#e22a16,#da980c);
        background-size: 200%
    }

    [data-theme=dark] a.categoryButton.wniui_three {
        background: linear-gradient(to right,#099e74,#0ea4a4);
        background-size: 200%
    }

    a.categoryButton:hover {
        background-position: 100% 0
    }

    @keyframes rowup {
        from {
            transform: translateX(0)
        }

        to {
            transform: translateX(-50%)
        }
    }

    #recent-post-top .recent-post-item .post_cover {
        width: 100%
    }

    #recent-posts>.recent-post-item>.recent-post-info>.article-meta-wrap {
        position: absolute;
        bottom: 16px;
        transition: .3s;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: space-between;
        width: 100%;
        left: 0;
        padding: 0 32px;
        white-space: nowrap
    }

    .banner-button-text {
        color: #fff
    }

    .banner-button-text:before {
        content: '\e605 ';
        font-family: 'iconfont';
        margin-right: 10px
    }

    .icon-star-smile-fill:before {
        content: '\e72c';
        font-family: heoblogIcon
    }

    .icon-fire-fill:before {
        content: '\e699';
        font-family: heoblogIcon
    }

    .icon-book-mark-fill:before {
        content: '\e628';
        font-family: heoblogIcon
    }
}

.todayCard-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    background-color: rgba(0,0,0,.3);
    border-radius: 50%;
    color: #fff;
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s ease,visibility 0s linear .3s,background-color .3s ease,transform .3s ease
}

#todayCard:hover .todayCard-arrow {
    opacity: .7;
    visibility: visible;
    transition-delay: 0s
}

.todayCard-arrow:hover {
    background-color: rgba(0,0,0,.6);
    opacity: 1;
    transform: translateY(-50%) scale(1.1)
}

.todayCard-arrow-left {
    left: 15px
}

.todayCard-arrow-right {
    right: 15px
}

.todayCard-arrow svg {
    width: 55%;
    height: 55%;
    stroke: currentColor;
    fill: none
}

.recent-post-top {
    margin-bottom: 20px
}

#banners {
    margin: 0;
    padding: 0;
    border: none
}

#bannerGroup {
    margin: 0;
    padding: 0;
    border: none
}
.banner-button-text {
    color: #fff;
}

.banner-button-text::before {
    content: '\e605 ';
    font-family: iconfont;
}

.icon-star-smile-fill::before {
    content: '\e72c';
    font-family: iconfont;
}

.icon-fire-fill::before {
    content: '\e699';
    font-family: iconfont;
}

.icon-book-mark-fill::before {
    content: '\e628';
    font-family: iconfont;
}