/*
 * B站风格子主题完整样式
 */

body.zib-bilibili {
    --bili-header-height: 64px;
    --bili-radius: 6px;
    background: #f6f7f8 !important;
    color: #18191c;
    padding-top: 0 !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
}

body.zib-bilibili.dark-theme {
    background: #17181a !important;
    color: #f1f2f3;
}

body.zib-bilibili,
body.zib-bilibili *,
body.zib-bilibili *::before,
body.zib-bilibili *::after {
    box-sizing: border-box;
}

body.zib-bilibili .main-bg,
body.zib-bilibili .theme-box {
    border-color: rgba(24, 25, 28, .06);
}

/* 顶部导航由子比父主题 zib_header() 输出。 */

/* 顶部 App 导航 */
.bili-app-header {
    position: sticky;
    top: 0;
    z-index: 1200;
    height: var(--bili-header-height);
    border-bottom: 0;
    background: rgba(255, 255, 255, .97);
    backdrop-filter: saturate(180%) blur(16px);
}

.dark-theme .bili-app-header {
    border-bottom: 0;
    background: rgba(31, 32, 35, .97);
}

.bili-app-header-inner {
    display: flex;
    width: min(1500px, calc(100% - 32px));
    height: 100%;
    align-items: center;
    gap: 12px;
    margin: 0 auto;
}

.bili-app-avatar-wrap {
    position: relative;
    z-index: 1300;
    flex: 0 0 40px;
}

.bili-app-avatar {
    position: relative;
    display: block;
    width: 40px;
    height: 40px;
    overflow: visible !important;
    border: 2px solid #fff;
    border-radius: 50%;
    background: #e3e5e7;
    box-shadow: 0 0 0 1px rgba(24, 25, 28, .08);
}

.dark-theme .bili-app-avatar {
    border-color: #1f2023;
    background: #2b2c30;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, .1);
}

.bili-app-avatar.is-login {
    display: grid;
    place-items: center;
    background: #f5f6f7;
    color: #fb7299 !important;
    text-decoration: none;
}

.dark-theme .bili-app-avatar.is-login {
    background: #2b2c30;
    color: #fb7299 !important;
}

.bili-app-login-text {
    display: block;
    color: #fb7299 !important;
    -webkit-text-fill-color: #fb7299;
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .5px;
}

.bili-app-avatar img,
.bili-avatar-img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    border-radius: 50%;
    object-fit: cover;
}

.bili-app-search {
    display: flex;
    width: auto;
    max-width: none;
    height: 36px;
    min-width: 0;
    flex: 1 1 0;
    align-items: center;
    gap: 7px;
    margin: 0;
    padding: 0 12px;
    border: 1px solid #d0d3d8;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .03);
    transition: border-color .2s ease, box-shadow .2s ease;
}

.dark-theme .bili-app-search {
    border-color: #43454a;
    background: #1f2023;
}

.bili-app-search:focus-within {
    border-color: #00aeec;
    box-shadow: 0 0 0 2px rgba(0, 174, 236, .1);
}

.bili-app-search button {
    display: grid;
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    place-items: center;
    padding: 0;
    border: 0;
    background: transparent;
    color: #61666d;
    cursor: pointer;
}

.bili-app-search button img,
.bili-app-search button svg {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.bili-app-search input {
    width: 100%;
    min-width: 0;
    height: 100%;
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #18191c;
    font-size: 14px;
    box-shadow: none;
}

.dark-theme .bili-app-search input {
    color: #f1f2f3;
}

.bili-app-search input::placeholder {
    color: #61666d;
}

.bili-app-actions {
    display: flex;
    min-width: 0;
    flex: 0 0 auto;
    align-items: center;
    gap: 10px;
}

.bili-app-douyin {
    position: relative;
    display: grid;
    width: 26px;
    height: 26px;
    flex: 0 0 26px;
    place-items: center;
    overflow: visible;
    border-radius: 8px;
    background: #f4f5f7;
    color: #18191c !important;
    text-decoration: none;
    transition: background-color .2s ease, transform .2s ease;
}

.bili-douyin-entry-badge {
    position: absolute;
    top: -4px;
    right: -3px;
    z-index: 2;
    display: inline-flex;
    max-width: 40px;
    height: 11px;
    align-items: center;
    justify-content: center;
    padding: 0 3px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .92);
    border-radius: 6px;
    background: #fb7299;
    color: #fff !important;
    font-size: 7px;
    font-weight: 700;
    line-height: 1;
    text-overflow: ellipsis;
    text-shadow: none;
    white-space: nowrap;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .16);
    pointer-events: none;
}

.bili-app-douyin:hover {
    background: #e9ebee;
    transform: translateY(-1px);
}

.dark-theme .bili-app-douyin {
    background: #2b2c30;
    color: #f1f2f3 !important;
}

.dark-theme .bili-app-douyin:hover {
    background: #36383d;
}

.bili-app-douyin svg {
    display: block;
    width: 15px;
    height: 15px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
    filter: drop-shadow(1px 0 0 rgba(37, 244, 238, .7)) drop-shadow(-1px 0 0 rgba(254, 44, 85, .62));
}

.bili-app-vip {
    display: inline-flex;
    width: 40px;
    height: 26px;
    align-items: center;
    justify-content: center;
    padding: 0;
    overflow: visible !important;
    border: 1px solid #c9ccd0;
    border-radius: 6px;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: #9499a0 !important;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
}

.bili-app-vip::before,
.bili-app-vip::after {
    display: none !important;
    content: none !important;
}

.bili-vip-mark {
    color: inherit;
    font: inherit;
    letter-spacing: .2px;
}

.bili-app-msg {
    position: relative;
    display: grid;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    place-items: center;
    border-radius: 50%;
    color: #61666d !important;
    text-decoration: none;
}

.dark-theme .bili-app-msg {
    color: #d0d3d8 !important;
}

.bili-app-msg:hover {
    background: #f1f2f3;
}

.dark-theme .bili-app-msg:hover {
    background: #2b2c30;
}

.bili-app-msg svg {
    width: 22px;
    height: 22px;
    fill: currentColor;
}

.bili-msg-badge {
    position: absolute;
    top: 0;
    right: -1px;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    border: 2px solid #fff;
    border-radius: 9px;
    background: #fb7299;
    color: #fff;
    font-size: 9px;
    font-weight: 700;
    line-height: 12px;
    text-align: center;
}

/* 头像用户面板 */
.bili-user-dropdown {
    position: absolute !important;
    top: calc(100% + 13px) !important;
    left: -8px !important;
    display: block !important;
    width: 320px !important;
    max-width: calc(100vw - 20px);
    padding: 10px !important;
    border: 1px solid rgba(24, 25, 28, .08);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 8px 30px rgba(0, 0, 0, .12);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-5px);
    transition: opacity .18s ease, transform .18s ease;
    visibility: hidden;
}

.dark-theme .bili-user-dropdown {
    border-color: rgba(255, 255, 255, .1);
    background: #1f2023;
}

.bili-app-avatar-wrap:hover .bili-user-dropdown,
.bili-app-avatar-wrap.open .bili-user-dropdown {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    visibility: visible;
}

.bili-user-dropdown .sub-user-box {
    max-height: min(680px, calc(100vh - 90px));
    overflow-y: auto;
}

/* 频道与模块导航 */
.bili-channel-wrap,
.bili-module-tab-nav {
    position: sticky;
    top: var(--bili-header-height);
    z-index: 900;
    border-bottom: 1px solid #e3e5e7;
    background: rgba(255, 255, 255, .97);
    backdrop-filter: saturate(180%) blur(16px);
}

.dark-theme .bili-channel-wrap,
.dark-theme .bili-module-tab-nav {
    border-bottom-color: #2b2c30;
    background: rgba(31, 32, 35, .97);
}


.bili-channel-bar,
.bili-module-tab-list {
    display: flex;
    width: min(1500px, calc(100% - 32px)) !important;
    max-width: none !important;
    height: 50px;
    align-items: stretch;
    gap: 30px;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow-x: auto;
    white-space: nowrap;
    scrollbar-width: none;
}

.bili-channel-bar::-webkit-scrollbar,
.bili-module-tab-list::-webkit-scrollbar {
    display: none;
}

.bili-channel-bar a,
.bili-module-tab-list > li > a {
    position: relative;
    display: inline-flex;
    height: 100%;
    flex: 0 0 auto;
    align-items: center;
    color: #61666d !important;
    font-size: 17px;
    font-weight: 400;
    text-decoration: none;
    transition: color .18s ease;
}

.bili-channel-bar a:hover,
.bili-channel-bar a.active,
.bili-module-tab-list > li > a:hover,
.bili-module-tab-list > li.active > a {
    color: #fb7299 !important;
    font-weight: 400;
}

.bili-channel-bar a.active::after,
.bili-module-tab-list > li.active > a::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 28px;
    height: 3px;
    border-radius: 3px 3px 0 0;
    background: #fb7299;
    content: "";
    transform: translateX(-50%);
}

.bili-channel-bar a.bili-channel-has-badge {
    overflow: visible;
}

.bili-channel-badge {
    position: absolute;
    top: 3px;
    right: -9px;
    z-index: 2;
    display: inline-flex;
    min-width: 16px;
    height: 15px;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
    border-radius: 8px;
    background: #fb7299;
    color: #fff;
    font-size: 9px;
    font-weight: 600;
    line-height: 15px;
    letter-spacing: 0;
    white-space: nowrap;
    pointer-events: none;
    box-shadow: 0 2px 6px rgba(251, 114, 153, .25);
}

.bili-module-tab-list > li {
    position: relative;
    display: inline-flex;
    flex: 0 0 auto;
    align-items: stretch;
    margin: 0;
}

/* 首页内容 */
body.zib-bilibili .bili-home-main,
body.zib-bilibili .bili-archive-main {
    width: min(1500px, calc(100% - 32px)) !important;
    max-width: none !important;
    min-height: 60vh;
    margin-top: 0 !important;
    padding: 12px 0 48px !important;
}

body.zib-bilibili .bili-home-main .content-wrap,
body.zib-bilibili .bili-archive-main .content-wrap,
body.zib-bilibili .bili-home-main .content-layout,
body.zib-bilibili .bili-archive-main .content-layout {
    width: 100%;
}

body.zib-bilibili .bili-home-main {
    padding-top: 1px !important;
}

.bili-feed-head {
    display: flex;
    min-height: 34px;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.bili-feed-title,
.bili-archive-heading h1 {
    margin: 0;
    color: #18191c;
    font-size: 20px;
    font-weight: 700;
}

.dark-theme .bili-feed-title,
.dark-theme .bili-archive-heading h1 {
    color: #f1f2f3;
}

.bili-feed-head .ajax-option {
    margin: 0 !important;
}

.bili-feed-head .option-items {
    display: flex;
    gap: 12px;
    margin: 0;
}

.bili-feed-head .option-items a {
    display: inline-flex;
    height: 30px;
    align-items: center;
    padding: 0 11px;
    border-radius: 15px;
    background: #f1f2f3;
    color: #61666d;
    font-size: 12px;
    text-decoration: none;
}

/* 首页轮播 */
.bili-carousel-wrap {
    width: 100%;
    margin: 0;
    background: #f6f7f8;
}

.dark-theme .bili-carousel-wrap {
    background: #17181a;
}

body.zib-bilibili.nav-fixed .bili-carousel-wrap .slide-header {
    margin-top: 0 !important;
}

.bili-carousel-wrap .slide-header,
.bili-carousel-wrap .slide-header .slide-text {
    padding-top: 0 !important;
}

.bili-home-top-widgets {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
}

body.zib-bilibili .bili-home-top-widgets .slide-widget.mb20 {
    margin-bottom: 0 !important;
}

.bili-home-bottom-widgets {
    margin-top: 22px;
}

.bili-top-fluid-widgets,
.bili-bottom-fluid-widgets {
    width: min(1500px, calc(100% - 32px));
    margin: 18px auto;
}

body.zib-bilibili .bili-home-top-widgets .slide-widget,
body.zib-bilibili .bili-home-top-widgets .slide-widget .swiper-container,
body.zib-bilibili .bili-home-top-widgets .slide-widget .swiper-slide {
    height: clamp(390px, 35vw, 520px) !important;
    overflow: hidden;
    border-radius: 4px !important;
    box-sizing: border-box;
}



body.zib-bilibili .bili-home-top-widgets .slide-widget .swiper-slide img {
    border-radius: 4px !important;
}

/* 桌面端轮播限制在首屏内，同时保持原图完整比例，不裁切。 */
@media (min-width: 783px) {
    body.zib-bilibili .bili-home-top-widgets .slide-widget {
        height: min(56.25vw, calc(100vh - 140px)) !important;
        min-height: 360px !important;
        max-height: none !important;
        overflow: hidden !important;
    }

    body.zib-bilibili .bili-home-top-widgets .slide-widget .swiper-slide {
        height: min(56.25vw, calc(100vh - 140px)) !important;
        min-height: 360px !important;
        max-height: none !important;
    }



    body.zib-bilibili .bili-home-top-widgets .slide-widget .swiper-slide {
        aspect-ratio: auto !important;
    }

    body.zib-bilibili .bili-home-top-widgets .slide-widget .swiper-slide img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: contain !important;
        object-position: center !important;
        background: #f6f7f8;
    }

    body.dark-theme.zib-bilibili .bili-home-top-widgets .slide-widget .swiper-slide img {
        background: #17181a;
    }
}
.bili-carousel-hidden {
    display: none !important;
}

/* 有播放权限时，顶部轮播封面全端让位给视频播放器。 */
body.bili-single-bilibili.bili-single-has-access .single-head-cover {
    display: none !important;
}
/* 已开通会员的用户名统一显示为哔哩哔哩粉色 */
body.zib-bilibili .bili-vip-name,
body.zib-bilibili a.bili-vip-name {
    color: #fb7299 !important;
}
/* 文章网格 */
body.zib-bilibili .bili-video-grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 24px 16px;
    margin: 0 !important;
}

body.zib-bilibili .bili-video-grid.bili-video-module-shell {
    display: block !important;
}

body.zib-bilibili .bili-video-grid > .ajax-item-header {
    grid-column: 1 / -1;
    margin-bottom: 0 !important;
}
body.zib-bilibili .bili-video-grid > .theme-pagination,
body.zib-bilibili .bili-video-grid > .ajax-pag,
body.zib-bilibili .bili-video-grid > .text-center {
    grid-column: 1 / -1;
}

body.zib-bilibili .bili-home-tabs-module > .zib-widget-wrap,
body.zib-bilibili .bili-home-tabs-module .widget-container,
body.zib-bilibili .bili-home-tabs-module .widget-content,
body.zib-bilibili .bili-home-tabs-module .widget-tab-post {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.zib-bilibili .bili-home-tabs-module .widget-tab-post .tab-content > .tab-pane {
    margin: 0 !important;
    padding: 0 !important;
}

body.zib-bilibili .bili-home-tabs-module .widget-ajaxpager {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 24px 16px;
}

body.zib-bilibili .bili-home-tabs-module .widget-ajaxpager > .theme-pagination,
body.zib-bilibili .bili-home-tabs-module .widget-ajaxpager > .ajax-pag,
body.zib-bilibili .bili-home-tabs-module .widget-ajaxpager > .text-center {
    grid-column: 1 / -1;
}

/* 视频卡片 */
body.zib-bilibili .bili-video-grid .posts-item.card {
    position: relative;
    display: flex !important;
    width: 100%;
    min-width: 0;
    flex-direction: column;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.zib-bilibili .bili-video-grid .posts-item.card .item-thumbnail {
    position: relative;
    width: 100%;
    height: auto;
    aspect-ratio: 3 / 2;
    padding: 0 !important;
    overflow: hidden;
    border-radius: 4px !important;
    background: #e3e5e7;
}

body.zib-bilibili .bili-video-grid .posts-item.card .bili-card-pay-badge {
    position: absolute;
    bottom: 6px;
    left: 6px;
    z-index: 5;
    display: inline-flex;
    max-width: calc(100% - 12px);
    height: 16px;
    align-items: center;
    gap: 2px;
    padding: 0 4px;
    border-radius: 3px;
    color: #fff !important;
    font-size: 11px;
    font-weight: 600;
    line-height: 16px;
    text-shadow: none;
    opacity: .76;
    pointer-events: none;
    backdrop-filter: blur(8px);
}

body.zib-bilibili .bili-video-grid .posts-item.card .item-thumbnail .bili-card-pay-badge > img {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: 12px !important;
    min-width: 12px !important;
    max-width: 12px !important;
    height: 12px !important;
    min-height: 12px !important;
    max-height: 12px !important;
    flex: 0 0 12px !important;
    border-radius: 0 !important;
    object-fit: contain !important;
    transform: none !important;
}

body.zib-bilibili .bili-video-grid .posts-item.card .bili-card-pay-text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.zib-bilibili .bili-video-grid .posts-item.card .bili-card-pay-badge.is-vip1,
body.zib-bilibili .bili-video-grid .posts-item.card .bili-card-pay-badge.is-vip2 {
    gap: 3px !important;
    padding-right: 1px !important;
    padding-left: 1px !important;
    border: 1px solid rgba(178, 184, 190, .9);
    background: transparent !important;
    color: #f7f8fa !important;
    text-shadow: 0 1px 3px rgba(0, 0, 0, .5);
    backdrop-filter: none !important;
}

body.zib-bilibili .bili-video-grid .posts-item.card .bili-card-pay-badge.is-free {
    background: rgba(0, 174, 236, .68);
}

body.zib-bilibili .bili-video-grid .posts-item.card .bili-card-pay-badge.is-points {
    background: linear-gradient(135deg, rgba(255, 159, 67, .74), rgba(245, 108, 45, .66));
}

body.zib-bilibili .bili-video-grid .posts-item.card .bili-card-pay-badge.is-paid {
    background: rgba(251, 114, 153, .68);
}

body.zib-bilibili .bili-video-grid .posts-item.card .item-thumbnail > a,
body.zib-bilibili .bili-video-grid .posts-item.card .item-thumbnail .video-thumb-box,
body.zib-bilibili .bili-video-grid .posts-item.card .item-thumbnail .img-thumb {
    display: block;
    width: 100%;
    height: 100%;
}

body.zib-bilibili .bili-video-grid .posts-item.card .item-thumbnail img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 4px !important;
    object-fit: cover;
    transition: transform .28s ease, filter .28s ease;
}

body.zib-bilibili .bili-video-grid .posts-item.card:hover .item-thumbnail > a img,
body.zib-bilibili .bili-video-grid .posts-item.card:hover .item-thumbnail .video-thumb-box img,
body.zib-bilibili .bili-video-grid .posts-item.card:hover .item-thumbnail .img-thumb img {
    filter: brightness(.94);
    transform: scale(1.035);
}

body.zib-bilibili .bili-video-grid .posts-item.card:hover .item-thumbnail .bili-card-pay-badge > img {
    filter: none !important;
    transform: none !important;
}

body.zib-bilibili .bili-video-grid .posts-item.card .item-body {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: 10px 2px 0 !important;
}

body.zib-bilibili .bili-video-grid .posts-item.card .item-heading {
    display: -webkit-box;
    min-height: 44px;
    margin: 0;
    overflow: hidden;
    color: #18191c;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body.zib-bilibili.dark-theme .bili-video-grid .posts-item.card .item-heading {
    color: #f1f2f3;
}

body.zib-bilibili .bili-video-grid .posts-item.card .item-heading a {
    color: inherit !important;
    text-decoration: none;
}

body.zib-bilibili .bili-video-grid .posts-item.card .item-tags {
    display: none;
}

body.zib-bilibili .bili-video-grid .posts-item.card .item-meta {
    position: relative;
    display: flex;
    min-height: 22px;
    align-items: center;
    margin-top: auto;
    padding-top: 7px;
    color: #9499a0;
    font-size: 12px;
    line-height: 1.5;
}

body.zib-bilibili .bili-video-grid .posts-item.card .item-meta .meta-author {
    display: flex;
    min-width: 0;
    flex: 1 1 auto;
    align-items: center;
}

body.zib-bilibili .bili-video-grid .posts-item.card .meta-author .avatar,
body.zib-bilibili .bili-video-grid .posts-item.card .meta-author img {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    object-fit: cover;
}

body.zib-bilibili .bili-video-grid .posts-item.card .item-meta > .bili-author-avatar {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    margin-left: 6px;
    text-decoration: none;
}

body.zib-bilibili .bili-video-grid .posts-item.card .item-meta > .bili-author-avatar .avatar,
body.zib-bilibili .bili-video-grid .posts-item.card .item-meta > .bili-author-avatar img {
    display: block;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    object-fit: cover;
}

body.zib-bilibili .bili-video-grid .posts-item.card .item-meta .meta-right {
    position: absolute;
    right: 0;
    bottom: calc(100% + 7px);
    z-index: 30;
    display: none;
    min-width: 96px;
    align-items: center;
    justify-content: space-around;
    gap: 12px;
    padding: 7px 10px;
    border: 1px solid #e3e5e7;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 5px 18px rgba(24, 25, 28, .12);
}

body.zib-bilibili .bili-video-grid .posts-item.card .item-meta.bili-meta-open .meta-right {
    display: flex;
}

.dark-theme .bili-video-grid .posts-item.card .item-meta .meta-right {
    border-color: #35363a;
    background: #25262a;
}

body.zib-bilibili .bili-video-grid .posts-item.card .meta-right item,
body.zib-bilibili .bili-video-grid .posts-item.card .meta-right .meta-comm {
    display: inline-flex;
    align-items: center;
    gap: 2px;
}

body.zib-bilibili .bili-video-grid .posts-item.card svg.icon {
    width: 14px;
    height: 14px;
    margin-right: 2px;
    fill: currentColor;
}

/* UP 标签与三点 */
body.zib-bilibili .bili-video-grid .posts-item.card .bili-up-badge {
    display: inline-flex !important;
    width: 20px !important;
    height: 12px !important;
    flex: 0 0 20px !important;
    align-items: center !important;
    justify-content: center !important;
    margin-right: 4px !important;
    padding: 0 !important;
    border: 1px solid #9499a0 !important;
    border-radius: 3px !important;
    background: transparent !important;
    color: #9499a0 !important;
    font-size: 7px !important;
    font-weight: 700 !important;
    line-height: 12px !important;
    text-align: center !important;
    text-shadow: none !important;
}

body.zib-bilibili .bili-video-grid .posts-item.card .bili-up-badge img {
    display: none !important;
}

body.zib-bilibili .bili-video-grid .posts-item.card .bili-up-badge.is-portrait {
    width: 30px !important;
    height: 12px !important;
    flex: 0 0 30px !important;
    flex-basis: 30px !important;
    border: 1px solid #9499a0 !important;
    border-radius: 3px !important;
    background: transparent !important;
    color: #9499a0 !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    line-height: 12px !important;
}



body.zib-bilibili .bili-video-grid .posts-item.card .bili-more-actions {
    display: inline-flex;
    width: 18px;
    height: 24px;
    flex: 0 0 18px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    margin-left: 4px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #9499a0;
    cursor: pointer;
}

body.zib-bilibili .bili-video-grid .posts-item.card .bili-more-actions span {
    display: block;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: currentColor;
}

body.zib-bilibili .bili-video-grid .posts-item.card .bili-more-actions[aria-expanded="true"] {
    color: #61666d;
}

/* 时长 */
.bili-duration {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    position: absolute;
    right: 7px;
    bottom: 7px;
    z-index: 5;
    padding: 0;
    border-radius: 4px;
    background: transparent !important;
    color: #fff !important;
    font-size: 9px;
    font-weight: 600;
    line-height: 12px;
    text-shadow: 0 1px 3px rgba(0, 0, 0, .85);
    pointer-events: none;
}

.bili-duration svg {
    display: block;
    width: 9px;
    height: 9px;
    flex: 0 0 9px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* 底部菜单 */
.bili-mobile-tabbar,
.bili-shop-mobile-paybar {
    display: none;
}

.bili-mobile-tabbar.bili-mobile-menu-nav {
    display: none !important;
    height: auto;
}

.bili-mobile-tabbar > a {
    display: block;
    width: 100%;
    padding: 0;
    text-decoration: none;
}

.bili-mobile-tabbar > a img,
.bili-mobile-tabbar .bili-mobile-menu > li > a img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}

.bili-mobile-tabbar .bili-mobile-menu {
    display: grid;
    grid-template-columns: repeat(var(--bili-tab-count, 5), minmax(0, 1fr));
    margin: 0;
    padding: 0 0 env(safe-area-inset-bottom, 0);
    list-style: none;
}

.bili-mobile-tabbar .bili-mobile-menu > li {
    min-width: 0;
    margin: 0;
    padding: 0;
}

.bili-mobile-tabbar .bili-mobile-menu > li > a {
    display: block;
    width: 100%;
    padding: 0;
    text-decoration: none;
}

body.modal-open .bili-mobile-tabbar {
    display: none !important;
}

/* 会员弹窗 */
@media (max-width: 782px) {
    #modal_pay_uservip {
        z-index: 3300 !important;
    }

    body.bili-single-video-post.modal-open .paid-box > .new-dplayer.bili-video-player-fixed,
    body.bili-single-video-post.modal-open .bili-video-info-bar {
        z-index: 1000 !important;
    }

    #modal_pay_uservip.bottom.flex {
        height: 100vh;
        height: 100dvh;
        overflow: hidden !important;
    }

    #modal_pay_uservip .modal-dialog.full-sm {
        width: 100% !important;
        max-width: 100% !important;
        max-height: calc(100vh - 10px);
        max-height: calc(100dvh - 10px);
        margin: 0 !important;
        overflow: hidden;
    }

    #modal_pay_uservip .modal-content {
        max-height: calc(100vh - 10px) !important;
        max-height: calc(100dvh - 10px) !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        padding-bottom: calc(92px + env(safe-area-inset-bottom, 0px)) !important;
        border-radius: 16px 16px 0 0;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
    }

    body.modal-open .bili-single-appbar,
    body.modal-open .bili-mobile-tabbar,
    body.modal-open .bili-single-comment-bar,
    body.modal-open .bili-single-intro-tabs {
        display: none !important;
    }

    #modal_pay_uservip.in .initiate-pay {
        position: fixed !important;
        right: 15px !important;
        bottom: calc(14px + env(safe-area-inset-bottom, 0px)) !important;
        left: 15px !important;
        z-index: 2147483000 !important;
        display: flex !important;
        width: auto !important;
        max-width: none !important;
        min-height: 46px;
        align-items: center;
        justify-content: center;
        padding: 8px 12px !important;
        line-height: 1.25 !important;
        white-space: normal;
        box-shadow: 0 -5px 18px rgba(0, 0, 0, .14);
    }

    #modal_pay_uservip .pay-vip-products .but,
    #modal_pay_uservip .vip-price-buts .but {
        height: auto !important;
        min-height: 40px;
        padding: 8px 12px !important;
        line-height: 1.3 !important;
        white-space: normal;
    }
}

/* 会员页支付未到账售后：放在会员说明与支付方式之间 */
.bili-vip-support-link {
    display: flex;
    width: 100%;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin: 0 0 10px;
    padding: 7px 10px;
    border: 1px solid rgba(251, 114, 153, .28);
    border-radius: 10px;
    background: linear-gradient(90deg, #fff8fa 0%, #fff 100%);
    color: #61666d;
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    text-align: center;
    text-decoration: none;
    box-sizing: border-box;
    transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}

.bili-vip-support-link svg {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    fill: none;
    stroke: #fb7299;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.bili-vip-support-link strong {
    color: #fb7299;
    font-weight: 600;
}

.bili-vip-support-link:hover,
.bili-vip-support-link:focus-visible {
    border-color: rgba(251, 114, 153, .52);
    background: #fff0f5;
    box-shadow: 0 2px 8px rgba(251, 114, 153, .08);
    outline: none;
}

@media (max-width: 782px) {
    .bili-vip-support-link {
        min-height: 36px;
        margin-bottom: 10px;
        padding: 6px 9px;
        font-size: 11px;
        line-height: 16px;
    }
}
/* 归档 */
.bili-archive-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    padding: 4px 0 20px;
}

.bili-archive-heading p {
    margin: 5px 0 0;
    color: #9499a0;
    font-size: 13px;
}

/* 响应式 */
@media (max-width: 1400px) {
    body.zib-bilibili .bili-video-grid,
    body.zib-bilibili .bili-home-tabs-module .widget-ajaxpager {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 1100px) {
    body.zib-bilibili .bili-video-grid,
    body.zib-bilibili .bili-home-tabs-module .widget-ajaxpager {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    body.zib-bilibili .bili-home-top-widgets .slide-widget,
    body.zib-bilibili .bili-home-top-widgets .slide-widget .swiper-container,
    body.zib-bilibili .bili-home-top-widgets .slide-widget .swiper-slide {
        height: clamp(290px, 40vw, 420px) !important;
    }


}

@media (max-width: 782px) {
    html,
    body.zib-bilibili {
        max-width: 100%;
        overflow-x: hidden !important;
    }

    body.zib-bilibili {
        --bili-header-height: 56px;
        padding-bottom: 76px !important;
    }

    .bili-app-header-inner {
        width: 100%;
        gap: 0;
        padding: 14px 12px 0 10px;
    }

    .bili-app-avatar-wrap {
        flex: 0 0 36px;
        margin-right: 6px;
    }

    .bili-app-avatar-wrap .bili-app-avatar {
        width: 36px;
        height: 36px;
        flex-basis: 36px;
        border-width: 1px;
    }

    .bili-app-search {
        width: auto;
        max-width: none;
        height: 34px;
        min-width: 0;
        flex: 1 1 0;
        margin: 0 24px 0 0;
        padding: 0 10px;
        border-radius: 17px;
    }

    .bili-app-search button {
        width: 15px;
        height: 15px;
        flex-basis: 15px;
    }

    .bili-app-search input {
        font-size: 12.5px;
    }

    .bili-app-actions {
        gap: 7px;
    }

    .bili-app-douyin {
        width: 24px;
        height: 24px;
        flex-basis: 24px;
        border-radius: 8px;
    }

    .bili-app-vip {
        width: 36px;
        height: 24px;
        flex: 0 0 36px;
    }

    .bili-app-msg {
        width: 34px;
        height: 34px;
        flex-basis: 34px;
    }

    .bili-app-msg svg {
        width: 22px;
        height: 22px;
    }

    .bili-user-dropdown {
        position: fixed !important;
        top: var(--bili-header-height) !important;
        right: 8px !important;
        left: 8px !important;
        width: auto !important;
        max-width: none;
        max-height: calc(100dvh - var(--bili-header-height) - 12px);
        overflow-y: auto !important;
        border-radius: 0 0 12px 12px;
    }

    .bili-channel-bar,
    .bili-module-tab-list {
        width: 100% !important;
        height: 32px;
        gap: 24px;
        margin: 0 !important;
        padding: 0 12px !important;
    }

    .bili-channel-bar a,
    .bili-module-tab-list > li > a {
        font-size: 15px;
    }

    body.zib-bilibili .bili-home-main,
    body.zib-bilibili .bili-archive-main {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 1px 12px 30px !important;
    }

    body.zib-bilibili .bili-top-fluid-widgets,
    body.zib-bilibili .bili-bottom-fluid-widgets {
        width: calc(100% - 24px);
        margin: 12px auto;
    }

    body.zib-bilibili .bili-home-top-widgets {
        margin-bottom: 6px;
    }

    body.zib-bilibili .bili-home-main .bili-carousel-wrap {
        width: calc(100% + 16px);
        margin-right: -8px;
        margin-left: -8px;
    }

    body.zib-bilibili .bili-home-bottom-widgets {
        margin-top: 16px;
    }

    body.zib-bilibili .bili-home-top-widgets .slide-widget,
    body.zib-bilibili .bili-home-top-widgets .slide-widget .swiper-container,
    body.zib-bilibili .bili-home-top-widgets .slide-widget .swiper-slide {
        height: clamp(205px, 56vw, 260px) !important;
    }



    body.zib-bilibili .bili-video-grid,
    body.zib-bilibili .bili-home-tabs-module .widget-ajaxpager {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px 8px;
    }

    body.zib-bilibili .bili-feed-head .ajax-option {
        display: none;
    }

    body.zib-bilibili .bili-feed-title {
        font-size: 18px;
    }

    body.zib-bilibili .bili-video-grid .posts-item.card .item-body {
        padding-top: 8px !important;
    }

    body.zib-bilibili .bili-video-grid .posts-item.card .item-heading {
        min-height: 40px;
        font-size: 14px;
        line-height: 1.42;
    }

    body.zib-bilibili .bili-video-grid .posts-item.card .item-meta {
        padding-top: 5px;
        font-size: 11px;
    }

    body.zib-bilibili .bili-video-grid .posts-item.card .meta-author .avatar,
    body.zib-bilibili .bili-video-grid .posts-item.card .meta-author img {
        width: 18px;
        height: 18px;
    }

    body.zib-bilibili .float-right,
    body.zib-bilibili .position-bottom.float-right {
        display: none !important;
    }

    /* 手机端保留待支付浮窗，点击后展开订单明细。 */
    body.zib-bilibili .float-right.float-right-wait-pay {
        display: block !important;
        top: auto !important;
        right: 10px !important;
        bottom: calc(78px + env(safe-area-inset-bottom, 0px)) !important;
        z-index: 2950;
    }

    body.zib-bilibili .float-right.float-right-wait-pay .float-btn {
        width: 46px;
        min-height: 46px;
        padding: 5px 0;
        border-radius: 14px;
        box-shadow: 0 6px 18px rgba(255, 82, 128, .28);
    }

    body.zib-bilibili .float-right.float-right-wait-pay .float-btn text {
        margin-top: 2px;
        font-size: 9px;
    }

    body.zib-bilibili .float-right.float-right-wait-pay .countdown-box {
        margin-top: 2px;
        font-size: 9px;
    }

    body.zib-bilibili .float-right.float-right-wait-pay .hover-show-con {
        right: 56px !important;
        bottom: 0 !important;
        left: auto !important;
        top: auto !important;
        width: min(240px, calc(100vw - 78px)) !important;
        max-width: none;
        max-height: min(330px, calc(100dvh - 190px));
        margin-right: 8px !important;
        overflow-y: auto;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateY(8px) !important;
        transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
    }

    body.zib-bilibili .float-right.float-right-wait-pay.is-open .hover-show-con {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        transform: translateY(0) !important;
    }

    body.zib-bilibili .bili-home-main .content-wrap,
    body.zib-bilibili .bili-home-main .content-layout,
    body.zib-bilibili .bili-archive-main .content-wrap,
    body.zib-bilibili .bili-archive-main .content-layout {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    body.zib-bilibili img,
    body.zib-bilibili video,
    body.zib-bilibili iframe {
        max-width: 100%;
    }

    .bili-mobile-tabbar {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1100;
        border-top: 1px solid #e3e5e7;
        background: #fff;
        padding-bottom: env(safe-area-inset-bottom, 0);
    }

    .dark-theme .bili-mobile-tabbar {
        border-top-color: #2b2c30;
        background: #1f2023;
    }

    .bili-mobile-tabbar.bili-mobile-menu-nav {
        display: block !important;
    }

    .bili-mobile-tabbar > a {
        height: auto;
    }

    /* 商品详情页：自定义底栏上方补回购买按钮 */
    body.single.shop {
        padding-bottom: calc(132px + env(safe-area-inset-bottom, 0px)) !important;
    }

    body.single.shop .bili-shop-mobile-paybar {
        position: fixed;
        right: 10px;
        bottom: calc(64px + env(safe-area-inset-bottom, 0px));
        left: 10px;
        z-index: 1120;
        display: block;
        padding: 8px;
        border: 1px solid rgba(255, 255, 255, .72);
        border-radius: 18px;
        background: rgba(255, 255, 255, .96);
        box-shadow: 0 10px 30px rgba(0, 0, 0, .16);
        backdrop-filter: saturate(1.4) blur(14px);
    }

    body.single.shop .bili-shop-mobile-paybar .shop-paybtn-group {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 8px;
    }

    body.single.shop .bili-shop-mobile-paybar .but {
        width: 100%;
        min-width: 0;
        height: 44px;
        padding: 0 12px;
        border: 0;
        border-radius: 12px;
        font-size: 15px;
        font-weight: 700;
        line-height: 44px;
        white-space: nowrap;
    }

    body.single.shop .bili-shop-mobile-paybar .bili-shop-add-cart {
        border: 1px solid #e3e5e7;
        background: #f6f7f8;
        color: #18191c;
    }

    body.single.shop .bili-shop-mobile-paybar .bili-shop-buy-now {
        background: var(--theme-color, #f04494);
        color: #fff;
        box-shadow: 0 7px 16px rgba(240, 68, 148, .24);
    }

    body.modal-open .bili-shop-mobile-paybar {
        display: none !important;
    }

    /* 用户主页：压缩标签内容顶部多余空白 */
    body.author .author-tab .affix-header-sm:not(.affix):not(.affix-bottom) .tab-nav-theme {
        margin-bottom: 2px !important;
    }

    body.author .author-tab .tab-content.main-tab-content,
    body.author .author-tab .tab-pane.active {
        margin-top: 0 !important;
        padding-top: 0 !important;
        min-height: 0 !important;
    }

    body.author .author-tab .tab-content.main-tab-content > .tab-pane:not(.active) {
        display: none !important;
    }

    body.author .author-tab .product-lists-row {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    body.author .author-tab .product-lists-row .shop-cat-filter-child {
        margin-top: 0 !important;
        margin-bottom: 6px !important;
        padding-top: 2px !important;
    }
}

@media (max-width: 420px) {
    body.zib-bilibili .bili-video-grid .posts-item.card .item-meta .meta-author span:not(.avatar-mini):not(.bili-up-badge) {
        display: inline-block;
        max-width: 68px;
        overflow: hidden;
        vertical-align: middle;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}

@media (max-width: 380px) {
    .bili-app-header-inner {
        padding-right: 10px;
        padding-left: 10px;
    }

    .bili-app-avatar-wrap {
        margin-right: 6px;
    }

    .bili-app-search {
        width: min(calc(100vw - 198px), 292px);
        max-width: none;
        flex-basis: auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.zib-bilibili .bili-video-grid .posts-item.card .item-thumbnail img {
        transition: none;
    }
}

/* 移除分类导航模块自带的下边距 */
.bili-module-tab-nav.mb20 {
    margin: 0 !important;
}

/* 首页频道导航滚动后固定在视口顶部，插槽保持高度避免页面跳动。 */
.bili-home-tabs-nav-slot {
    min-height: 47px;
}

/* 下拉吸顶时切换为父主题后台设置的顶部导航 */
.bili-sticky-parent-header {
    display: none;
}

body.bili-sticky-parent-nav-active .bili-sticky-parent-header {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 2001;
    display: block !important;
    width: 100%;
    background: #fff;
    box-shadow: 0 4px 12px rgba(24, 25, 28, .04);
}

body.bili-sticky-parent-nav-active .bili-sticky-parent-header > .header {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
}

body.bili-sticky-parent-nav-active .bili-sticky-parent-header .header-slide {
    display: none !important;
}

body.bili-sticky-parent-nav-active .bili-app-header {
    visibility: hidden !important;
    pointer-events: none !important;
}

body.dark-theme.bili-sticky-parent-nav-active .bili-sticky-parent-header {
    background: #1f2023;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .18);
}

.bili-module-tab-nav.is-fixed {
    position: fixed !important;
    top: var(--bili-parent-header-height, 0px) !important;
    right: 0 !important;
    left: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    z-index: 2000 !important;
    box-shadow: 0 1px 0 rgba(24, 25, 28, .08), 0 4px 12px rgba(24, 25, 28, .04);
}
/* 官方 B站客户端底部导航图标 */
@media (max-width: 782px) {
    .bili-mobile-tabbar .bili-mobile-menu > li > a {
        display: flex;
        height: 56px;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 0;
        padding: 0 2px !important;
        color: #868c94 !important;
        text-decoration: none;
        -webkit-tap-highlight-color: transparent;
    }

    .bili-mobile-tabbar .bili-mobile-menu > li > a:hover,
    .bili-mobile-tabbar .bili-mobile-menu > li > a.active {
        color: #fb7299 !important;
    }

    .bili-mobile-official-icon {
        position: relative;
        display: flex;
        width: auto;
        height: auto;
        min-width: 22px;
        align-items: center;
        justify-content: center;
        flex: 0 0 auto;
        flex-direction: column;
        line-height: 0;
    }

    .bili-mobile-tabbar .bili-mobile-menu > li > a .bili-mobile-official-icon img {
        display: block !important;
        width: 22px !important;
        height: 22px !important;
        max-width: none !important;
        margin: 0 !important;
        object-fit: contain !important;
        vertical-align: top;
    }

    .bili-mobile-tabbar .bili-mobile-menu > li > a .bili-mobile-official-icon .bili-mobile-official-active {
        display: none !important;
    }

    .bili-mobile-tabbar .bili-mobile-menu > li > a.active .bili-mobile-official-icon .bili-mobile-official-default {
        display: none !important;
    }

    .bili-mobile-tabbar .bili-mobile-menu > li > a.active .bili-mobile-official-icon .bili-mobile-official-active {
        display: block !important;
    }

    .bili-mobile-tabbar .bili-mobile-label {
        display: block;
        margin-top: 3px;
        font-size: 11px;
        font-weight: 500;
        line-height: 13px;
        white-space: nowrap;
    }

    .bili-mobile-tabbar .bili-mobile-menu > li > a.active .bili-mobile-label {
        font-weight: 600;
    }

    .bili-mobile-official-publish {
        width: 38px;
        height: 38px;
        min-width: 38px;
        flex-basis: 38px;
        flex-direction: row;
    }

    .bili-mobile-tabbar .bili-mobile-menu > li > a .bili-mobile-official-publish img {
        width: 38px !important;
        height: 38px !important;
    }

    .dark-theme .bili-mobile-menu > li > a:not(.active) .bili-mobile-official-default {
        filter: brightness(0) invert(1);
        opacity: .62;
    }
}

/* 底部导航操作提示 */
@media (max-width: 782px) {
    .bili-bottom-nav-notice {
        position: fixed;
        bottom: calc(72px + env(safe-area-inset-bottom, 0));
        left: 50%;
        z-index: 3100;
        max-width: calc(100vw - 40px);
        padding: 9px 14px;
        border-radius: 18px;
        background: rgba(24, 25, 28, .9);
        color: #fff;
        font-size: 12px;
        line-height: 1.4;
        text-align: center;
        opacity: 0;
        pointer-events: none;
        transform: translate(-50%, 8px);
        transition: opacity .18s ease, transform .18s ease;
    }

    .bili-bottom-nav-notice.is-visible {
        opacity: 1;
        transform: translate(-50%, 0);
    }
}
/* 我的菜单角标和选择卡片 */
.bili-mobile-nav-count {
    position: absolute;
    top: -5px;
    right: -7px;
    z-index: 3;
    display: grid;
    min-width: 17px;
    height: 17px;
    place-items: center;
    padding: 0 4px;
    border: 2px solid #fff;
    border-radius: 10px;
    background: #f04b4b;
    color: #fff;
    font-size: 9px;
    font-weight: 700;
    line-height: 1;
    box-shadow: 0 1px 5px rgba(240, 75, 75, .3);
    animation: biliUnreadPulse 1.6s ease-in-out infinite;
}

@keyframes biliUnreadPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.08); }
}

@media (max-width: 782px) {
    body.bili-user-menu-open {
        overflow: hidden !important;
    }

    .bili-user-menu-modal {
        position: fixed;
        inset: 0;
        z-index: 3000;
        display: flex;
        align-items: flex-end;
        justify-content: center;
        visibility: hidden;
        opacity: 0;
        pointer-events: none;
        transition: opacity .18s ease;
    }

    .bili-user-menu-modal.is-open {
        visibility: visible;
        opacity: 1;
        pointer-events: auto;
    }

    .bili-user-menu-backdrop {
        position: absolute;
        inset: 0;
        background: rgba(0, 0, 0, .42);
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px);
    }

    .bili-user-menu-panel {
        position: relative;
        width: min(100%, 560px);
        padding: 18px 16px calc(18px + env(safe-area-inset-bottom, 0));
        border-radius: 18px 18px 0 0;
        background: #fff;
        box-shadow: 0 -12px 34px rgba(0, 0, 0, .16);
        transform: translateY(34px);
        transition: transform .2s ease;
    }

    .bili-user-menu-modal.is-open .bili-user-menu-panel {
        transform: translateY(0);
    }

    .bili-user-menu-header {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 12px;
        margin-bottom: 14px;
    }

    .bili-user-menu-header h2 {
        margin: 0 0 3px;
        color: #18191c;
        font-size: 19px;
        font-weight: 700;
        line-height: 1.25;
    }

    .bili-user-menu-header p {
        margin: 0;
        color: #9499a0;
        font-size: 12px;
        line-height: 1.45;
    }

    .bili-user-menu-member {
        display: flex;
        align-items: center;
        gap: 12px;
        margin: 0 0 14px;
        padding: 12px;
        border: 1px solid #ffe1eb;
        border-radius: 14px;
        background: linear-gradient(135deg, #fff3f8 0%, #fffafd 100%);
    }

    .bili-user-menu-member-avatar {
        display: block;
        width: 50px;
        height: 50px;
        flex: 0 0 50px;
        overflow: hidden;
        border: 2px solid #fff;
        border-radius: 50%;
        background: #f1f2f3;
        box-shadow: 0 0 0 1px rgba(251, 114, 153, .18);
    }

    .bili-user-menu-member-avatar img,
    .bili-user-menu-member-avatar .bili-user-menu-member-avatar-img {
        display: block;
        width: 100%;
        height: 100%;
        border-radius: 50%;
        object-fit: cover;
    }

    .bili-user-menu-member-info {
        display: flex;
        min-width: 0;
        flex: 1 1 auto;
        flex-direction: column;
        gap: 4px;
    }

    .bili-user-menu-member-name-row {
        display: flex;
        min-width: 0;
        align-items: center;
    }

    .bili-user-menu-member-name {
        overflow: hidden;
        color: #18191c;
        font-size: 15px;
        font-weight: 700;
        line-height: 1.25;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .bili-user-menu-member-level {
        display: flex;
        min-width: 0;
        align-items: center;
        gap: 4px;
        color: #9499a0;
        font-size: 11px;
        line-height: 1.25;
    }

    .bili-user-menu-member-level .bili-user-menu-member-vip-icon {
        display: block;
        width: 20px;
        height: 20px;
        flex: 0 0 20px;
        object-fit: contain;
    }

    .bili-user-menu-member-level strong {
        overflow: hidden;
        color: #fb7299;
        font-size: 12px;
        font-weight: 600;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .bili-user-menu-member-expiry {
        overflow: hidden;
        color: #9499a0;
        font-size: 11px;
        line-height: 1.35;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .bili-user-menu-member-renew {
        display: inline-flex;
        min-width: 58px;
        height: 32px;
        flex: 0 0 auto;
        align-items: center;
        justify-content: center;
        padding: 0 12px;
        border-radius: 16px;
        background: linear-gradient(135deg, #fb7299, #ff8fb0);
        color: #fff !important;
        font-size: 12px;
        font-weight: 600;
        line-height: 1;
        text-decoration: none !important;
        box-shadow: 0 5px 12px rgba(251, 114, 153, .24);
    }

    .bili-user-menu-member-renew:active {
        transform: scale(.96);
    }

    .bili-user-menu-close {
        display: grid;
        width: 32px;
        height: 32px;
        flex: 0 0 32px;
        place-items: center;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: #f1f2f3;
        color: #61666d;
        font-size: 23px;
        line-height: 1;
        cursor: pointer;
    }

    .bili-user-menu-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px;
    }

    .bili-user-menu-card {
        position: relative;
        display: flex;
        min-width: 0;
        min-height: 116px;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 10px;
        padding: 16px 8px;
        border: 1px solid #ebeef1;
        border-radius: 14px;
        background: #f8f9fa;
        color: #18191c !important;
        text-decoration: none;
        box-shadow: 0 3px 12px rgba(24, 25, 28, .035);
    }

    .bili-user-menu-card:active {
        border-color: rgba(251, 114, 153, .38);
        background: #fff5f8;
    }

    .bili-user-menu-card strong {
        font-size: 14px;
        font-weight: 600;
        line-height: 1.25;
        text-align: center;
    }

    .bili-user-menu-support {
        min-height: 64px;
        flex-direction: row;
        justify-content: flex-start;
        gap: 12px;
        margin-top: 10px;
        padding: 10px 14px;
        background: #fff8fa;
    }

    .bili-user-menu-support .bili-user-menu-icon {
        width: 38px;
        height: 38px;
        flex: 0 0 38px;
        border-radius: 12px;
        background: #fff0f5;
        color: #fb7299;
    }

    .bili-user-menu-support-copy {
        display: flex;
        min-width: 0;
        flex: 1 1 auto;
        flex-direction: column;
        gap: 3px;
    }

    .bili-user-menu-support-copy strong {
        text-align: left;
    }

    .bili-user-menu-support-copy small {
        overflow: hidden;
        color: #9499a0;
        font-size: 11px;
        line-height: 1.35;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .bili-user-menu-support-arrow {
        flex: 0 0 auto;
        color: #c5c9ce;
        font-size: 24px;
        line-height: 1;
    }

    .bili-user-menu-icon {
        display: grid;
        width: 42px;
        height: 42px;
        place-items: center;
        border-radius: 14px;
        background: #eef6ff;
        color: #3f8cff;
    }

    .bili-user-menu-profile .bili-user-menu-icon {
        background: #fff0f5;
        color: #fb7299;
    }

    .bili-user-menu-orders .bili-user-menu-icon {
        background: #fff7e8;
        color: #f59e20;
    }

    .bili-user-menu-icon svg {
        display: block;
        width: 22px;
        height: 22px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.8;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    .bili-user-menu-count {
        position: absolute;
        top: 8px;
        right: 8px;
        display: grid;
        min-width: 18px;
        height: 18px;
        place-items: center;
        padding: 0 4px;
        border-radius: 9px;
        background: #f04b4b;
        color: #fff;
        font-size: 9px;
        font-weight: 700;
        line-height: 1;
        animation: biliUnreadPulse 1.6s ease-in-out infinite;
    }

    .dark-theme .bili-user-menu-panel {
        background: #24262a;
    }

    .dark-theme .bili-user-menu-header h2,
    .dark-theme .bili-user-menu-card {
        color: #f1f2f3 !important;
    }

    .dark-theme .bili-user-menu-header p {
        color: #aeb3ba;
    }

    .dark-theme .bili-user-menu-close,
    .dark-theme .bili-user-menu-card {
        background: #303237;
        border-color: #3b3e44;
    }

    .dark-theme .bili-user-menu-support {
        background: #352b31;
    }

    .dark-theme .bili-user-menu-support-copy small {
        color: #aeb3ba;
    }

    .dark-theme .bili-user-menu-member {
        border-color: #513443;
        background: linear-gradient(135deg, #36252d 0%, #30272c 100%);
    }

    .dark-theme .bili-user-menu-member-name {
        color: #f1f2f3;
    }

    .dark-theme .bili-user-menu-member-level,
    .dark-theme .bili-user-menu-member-expiry {
        color: #aeb3ba;
    }

    .dark-theme .bili-mobile-nav-count {
        border-color: #24262a;
    }
}

/* 会员购选项弹层 */
@media (max-width: 782px) {
    body.bili-shop-menu-open {
        overflow: hidden !important;
    }

    .bili-shop-menu-modal {
        position: fixed;
        inset: 0;
        z-index: 3000;
        display: flex;
        align-items: flex-end;
        justify-content: center;
        visibility: hidden;
        opacity: 0;
        pointer-events: none;
        transition: opacity .18s ease;
    }

    .bili-shop-menu-modal.is-open {
        visibility: visible;
        opacity: 1;
        pointer-events: auto;
    }

    .bili-shop-menu-backdrop {
        position: absolute;
        inset: 0;
        background: rgba(0, 0, 0, .42);
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px);
    }

    .bili-shop-menu-panel {
        position: relative;
        width: min(100%, 560px);
        max-height: min(76vh, 660px);
        overflow: hidden;
        padding: 18px 16px calc(18px + env(safe-area-inset-bottom, 0));
        border-radius: 18px 18px 0 0;
        background: #fff;
        box-shadow: 0 -12px 34px rgba(0, 0, 0, .16);
        transform: translateY(34px);
        transition: transform .2s ease;
    }

    .bili-shop-menu-modal.is-open .bili-shop-menu-panel {
        transform: translateY(0);
    }

    .bili-shop-menu-header {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 12px;
        margin-bottom: 14px;
    }

    .bili-shop-menu-header h2 {
        margin: 0 0 3px;
        color: #18191c;
        font-size: 19px;
        font-weight: 700;
        line-height: 1.25;
    }

    .bili-shop-menu-header p {
        margin: 0;
        color: #9499a0;
        font-size: 12px;
        line-height: 1.45;
    }

    .bili-shop-menu-close {
        display: grid;
        width: 32px;
        height: 32px;
        flex: 0 0 32px;
        place-items: center;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: #f1f2f3;
        color: #61666d;
        font-size: 23px;
        line-height: 1;
        cursor: pointer;
    }

    .bili-shop-menu-grid {
        display: grid;
        max-height: 48vh;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px;
        overflow-y: auto;
        overscroll-behavior: contain;
        padding: 1px 1px 4px;
        -webkit-overflow-scrolling: touch;
    }

    .bili-shop-menu-card {
        position: relative;
        display: flex;
        min-width: 0;
        min-height: 104px;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 7px;
        padding: 10px 6px;
        border: 1px solid #ebeef1;
        border-radius: 14px;
        background: #f8f9fa;
        color: #18191c !important;
        text-align: center;
        text-decoration: none;
        box-shadow: 0 3px 12px rgba(24, 25, 28, .035);
    }

    .bili-shop-menu-card:active {
        border-color: rgba(251, 114, 153, .38);
        background: #fff5f8;
    }

    .bili-shop-menu-card-icon {
        display: grid;
        width: 42px;
        height: 42px;
        place-items: center;
        border-radius: 14px;
        background: #eef6ff;
        color: #3f8cff;
    }

    .bili-shop-menu-card-icon svg {
        display: block;
        width: 22px;
        height: 22px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.8;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    .bili-shop-menu-card-icon.is-vip {
        background: #fff0f5;
        color: #fb7299;
    }

    .bili-shop-menu-card-icon.is-balance {
        background: #edf6ff;
        color: #3f8cff;
    }

    .bili-shop-menu-card-icon.is-points {
        background: #fff7e8;
        color: #f59e20;
    }

    .bili-shop-menu-card-icon.is-order {
        background: #eefaf4;
        color: #24b47e;
    }

    .bili-shop-menu-card strong {
        display: block;
        max-width: 100%;
        overflow: hidden;
        font-size: 13px;
        font-weight: 600;
        line-height: 1.25;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .bili-shop-menu-card small {
        display: -webkit-box;
        max-width: 100%;
        overflow: hidden;
        color: #9499a0;
        font-size: 10px;
        line-height: 1.3;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }
    .dark-theme .bili-shop-menu-panel {
        background: #24262a;
    }

    .dark-theme .bili-shop-menu-header h2,
    .dark-theme .bili-shop-menu-option,
    .dark-theme .bili-shop-menu-card {
        color: #f1f2f3 !important;
    }

    .dark-theme .bili-shop-menu-header p,
    .dark-theme .bili-shop-menu-option-arrow,
    .dark-theme .bili-shop-menu-card small {
        color: #aeb3ba;
    }

    .dark-theme .bili-shop-menu-close,
    .dark-theme .bili-shop-menu-option,
    .dark-theme .bili-shop-menu-card {
        background: #303237;
    }

    .dark-theme .bili-shop-menu-card {
        border-color: #3b3e44;
    }
}
/* 底部“关注”标签弹层 */
@media (max-width: 782px) {
    body.bili-follow-tags-open {
        overflow: hidden !important;
    }

    .bili-follow-tags-modal {
        position: fixed;
        inset: 0;
        z-index: 3000;
        display: flex;
        align-items: flex-end;
        justify-content: center;
        visibility: hidden;
        opacity: 0;
        pointer-events: none;
        transition: opacity .18s ease;
    }

    .bili-follow-tags-modal.is-open {
        visibility: visible;
        opacity: 1;
        pointer-events: auto;
    }

    .bili-follow-tags-backdrop {
        position: absolute;
        inset: 0;
        background: rgba(0, 0, 0, .42);
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px);
    }

    .bili-follow-tags-panel {
        position: relative;
        display: flex;
        width: min(100%, 560px);
        max-height: min(72vh, 620px);
        flex-direction: column;
        overflow: hidden;
        padding: 18px 16px calc(18px + env(safe-area-inset-bottom, 0));
        border-radius: 18px 18px 0 0;
        background: #fff;
        box-shadow: 0 -12px 34px rgba(0, 0, 0, .16);
        transform: translateY(34px);
        transition: transform .2s ease;
    }

    .bili-follow-tags-modal.is-open .bili-follow-tags-panel {
        transform: translateY(0);
    }

    .bili-follow-tags-header {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 12px;
        margin-bottom: 14px;
    }

    .bili-follow-tags-header h2 {
        margin: 0 0 3px;
        color: #18191c;
        font-size: 19px;
        font-weight: 700;
        line-height: 1.25;
    }

    .bili-follow-tags-header p {
        margin: 0;
        color: #9499a0;
        font-size: 12px;
        line-height: 1.45;
    }

    .bili-follow-tags-close {
        display: grid;
        width: 32px;
        height: 32px;
        flex: 0 0 32px;
        place-items: center;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: #f1f2f3;
        color: #61666d;
        font-size: 23px;
        line-height: 1;
        cursor: pointer;
    }

    .bili-follow-tags-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 9px;
        overflow-y: auto;
        overscroll-behavior: contain;
        padding: 1px 1px 4px;
        -webkit-overflow-scrolling: touch;
    }

    .bili-follow-tag-link {
        display: flex;
        min-width: 0;
        min-height: 66px;
        align-items: center;
        gap: 10px;
        padding: 10px;
        border: 1px solid #ebeef1;
        border-radius: 13px;
        background: #fff;
        color: #18191c;
        text-decoration: none;
        box-shadow: 0 3px 12px rgba(24, 25, 28, .04);
        transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
    }

    .bili-follow-tag-link:active {
        transform: scale(.985);
        border-color: rgba(251, 114, 153, .38);
    }

    .bili-follow-tag-avatar {
        display: block;
        width: 42px;
        height: 42px;
        flex: 0 0 42px;
        overflow: hidden;
        border-radius: 50%;
        background: #f1f2f3;
    }

    .bili-follow-tag-avatar img,
    .bili-follow-tag-avatar-fallback {
        display: grid;
        width: 100%;
        height: 100%;
        place-items: center;
        object-fit: cover;
    }

    .bili-follow-tag-avatar-fallback {
        color: #fff;
        font-size: 17px;
        font-weight: 700;
        line-height: 1;
    }

    .bili-follow-tag-link:nth-child(6n+1) .bili-follow-tag-avatar-fallback {
        background: linear-gradient(135deg, #fb7299, #ff9db8);
    }

    .bili-follow-tag-link:nth-child(6n+2) .bili-follow-tag-avatar-fallback {
        background: linear-gradient(135deg, #3f8cff, #6bc4ff);
    }

    .bili-follow-tag-link:nth-child(6n+3) .bili-follow-tag-avatar-fallback {
        background: linear-gradient(135deg, #ff9f43, #ffc66d);
    }

    .bili-follow-tag-link:nth-child(6n+4) .bili-follow-tag-avatar-fallback {
        background: linear-gradient(135deg, #8b67d8, #b99cff);
    }

    .bili-follow-tag-link:nth-child(6n+5) .bili-follow-tag-avatar-fallback {
        background: linear-gradient(135deg, #24b47e, #61d7a7);
    }

    .bili-follow-tag-link:nth-child(6n+6) .bili-follow-tag-avatar-fallback {
        background: linear-gradient(135deg, #f05252, #ff8b8b);
    }

    .bili-follow-tag-main {
        display: flex;
        min-width: 0;
        flex: 1;
        flex-direction: column;
        gap: 3px;
    }

    .bili-follow-tag-name {
        min-width: 0;
        overflow: hidden;
        color: #18191c;
        font-size: 13px;
        font-weight: 600;
        line-height: 1.35;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .bili-follow-tag-count {
        color: #9499a0;
        font-size: 10px;
        line-height: 1.3;
    }

    .dark-theme .bili-follow-tags-panel {
        background: #24262a;
    }

    .dark-theme .bili-follow-tags-header h2,
    .dark-theme .bili-follow-tag-link,
    .dark-theme .bili-follow-tag-name {
        color: #f1f2f3;
    }


    .dark-theme .bili-follow-tags-header p,
    .dark-theme .bili-follow-tag-count {
        color: #aeb3ba;
    }

    .dark-theme .bili-follow-tags-close,
    .dark-theme .bili-follow-tag-link {
        background: #303237;
    }
}
/* 文章作者头像会员徽章按头像比例缩小，避免覆盖头像 */
body.zib-bilibili .article-avatar .avatar-img .avatar-badge {
    right: 0 !important;
    bottom: 0 !important;
    width: 25px !important;
    height: 12px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 25px !important;
    max-height: 12px !important;
    object-fit: contain;
}


/* 首页文章卡片小头像的会员徽章按比例缩放 */
body.zib-bilibili .bili-video-grid .posts-item.card .item-meta .avatar-mini .avatar-badge {
    right: 0 !important;
    bottom: 0 !important;
    width: 35% !important;
    height: 35% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 10px !important;
    max-height: 10px !important;
    object-fit: contain;
}


/* 顶部头像右上角/右下角会员等级徽章 */
body.zib-bilibili .bili-app-avatar .bili-top-vip-badge {
    position: absolute !important;
    right: -2px !important;
    bottom: -2px !important;
    z-index: 100 !important;
    display: block;
    width: 30% !important;
    height: 30% !important;
    min-width: 10px !important;
    min-height: 10px !important;
    max-width: 25px !important;
    max-height: 12px !important;
    border: 0 !important;
    border-radius: 0 !important;
    object-fit: contain;
    pointer-events: none;
}


/* 移动端文章内页：B站 App 风格 */
@media (max-width: 782px) {
    body.bili-single-bilibili {
        background: #f6f7f8 !important;
        padding-bottom: calc(68px + env(safe-area-inset-bottom, 0px)) !important;
    }

    body.bili-single-appbar-ready .bili-app-header {
        display: none !important;
    }

    body.bili-single-bilibili .bili-mobile-tabbar {
        display: block !important;
    }

    body.bili-single-bilibili .fluid-widget-wrap,
    body.bili-single-bilibili .sidebar,
    body.bili-single-bilibili .breadcrumb {
        display: none !important;
    }

    .bili-single-intro-tabs {
        position: relative;
        top: auto;
        z-index: 2100;
        order: 2;
        display: flex;
        height: 43px;
        align-items: center;
        gap: 24px;
        margin: 0 !important;
        padding: 0 14px;
        border: 0 !important;
        background: #fff;
    }

    .bili-single-intro-tabs.is-fixed {
        position: fixed !important;
        top: 52px !important;
        right: 0;
        left: 0;
        width: 100%;
        background: #fff;
        box-shadow: 0 2px 8px rgba(24, 25, 28, .06);
    }

    .bili-single-intro-spacer {
        display: none;
        order: 2;
        height: 43px;
        flex: 0 0 43px;
    }

    .bili-single-intro-spacer.is-active {
        display: block;
    }

    .bili-single-intro-tab {
        position: relative;
        padding: 0 0 9px;
        border: 0;
        background: transparent;
        color: #61666d;
        font-size: 14px;
        line-height: 20px;
        cursor: pointer;
    }

    .bili-single-intro-tab.is-active {
        color: #18191c;
        font-weight: 600;
    }

    .bili-single-comment-cta-wrap {
        display: flex;
        align-items: center;
        gap: 11px;
        margin-right: 13px;
        margin-left: auto;
    }

    .bili-single-comment-cta {
        display: inline-flex;
        width: 109px;
        height: 34px;
        flex: 0 0 109px;
        align-items: center;
        justify-content: flex-start;
        gap: 2px;
        padding: 0 16px;
        border: 0;
        border-radius: 17px;
        background: #f6f7f9;
        color: #61666d;
        font-size: 12px;
        font-weight: 400;
        line-height: 34px;
        white-space: nowrap;
        cursor: pointer;
    }

    .bili-single-comment-send {
        display: grid;
        width: 22px;
        height: 21px;
        flex: 0 0 22px;
        place-items: center;
        padding: 0;
        border: 0;
        background: transparent;
        cursor: pointer;
    }

    .bili-single-comment-send img {
        display: block;
        width: 22px;
        height: 21px;
        object-fit: contain;
    }

    .bili-single-comment-send:active {
        opacity: .6;
    }

    .bili-single-comment-cta:active {
        background: #e3e5e7;
    }

    .bili-single-intro-tab.is-active::after {
        position: absolute;
        right: 0;
        bottom: -1px;
        left: 0;
        height: 2px;
        border-radius: 2px;
        background: #fb7299;
        content: "";
    }

    body.bili-single-bilibili:not(.bili-single-normal-post):not(.bili-comments-visible) #comments {
        display: none !important;
    }

    body.bili-single-bilibili #respond.mobile-fixed {
        position: static !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        z-index: auto !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        transform: none !important;
    }

    .bili-single-appbar {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: 2200;
        display: flex;
        height: 52px;
        align-items: center;
        padding: 0 8px;
        color: #fff;
        text-shadow: 0 1px 5px rgba(0, 0, 0, .45);
        transition: color .2s ease, background-color .2s ease, box-shadow .2s ease;
    }

    .bili-single-appbar.is-solid {
        color: #18191c;
        background: rgba(255, 255, 255, .97);
        box-shadow: 0 1px 0 rgba(24, 25, 28, .08);
        text-shadow: none;
        backdrop-filter: saturate(180%) blur(16px);
    }

    .bili-single-appbar-btn {
        display: grid;
        width: 40px;
        height: 40px;
        flex: 0 0 40px;
        place-items: center;
        padding: 0;
        border: 0;
        background: transparent;
        color: inherit;
        cursor: pointer;
        text-decoration: none !important;
        -webkit-tap-highlight-color: transparent;
    }

    .bili-single-appbar-btn svg {
        display: block;
        width: 25px;
        height: 25px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.9;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    .bili-single-home,
    .bili-single-share {
        transition: opacity .2s ease, transform .2s ease;
    }

    .bili-single-share {
        margin-left: auto;
    }

    body.bili-single-video-post .bili-single-appbar.is-video-playing .bili-single-home,
    body.bili-single-video-post .bili-single-appbar.is-video-playing .bili-single-share {
        opacity: 0;
        transform: translateY(-6px) scale(.86);
        pointer-events: none;
    }

    .bili-single-appbar-title {
        display: none;
        min-width: 0;
        flex: 1 1 auto;
        overflow: hidden;
        padding: 0 6px;
        font-size: 15px;
        font-weight: 600;
        text-align: center;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    body.bili-single-bilibili main.container,
    body.bili-single-bilibili .content-wrap,
    body.bili-single-bilibili .content-layout {
        display: block;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* 未解锁视频页：让付费卡避开固定顶栏，避免顶部内容被遮挡。 */
    body.bili-single-bilibili.bili-single-media-post:not(.bili-single-has-access) .content-layout {
        padding-top: 58px !important;
    }

    body.bili-single-bilibili.bili-single-media-post:not(.bili-single-has-access) .bili-single-appbar {
        color: #18191c;
        background: rgba(255, 255, 255, .97);
        box-shadow: 0 1px 0 rgba(24, 25, 28, .08);
        text-shadow: none;
        backdrop-filter: saturate(180%) blur(16px);
    }
    body.bili-single-bilibili .article {
        position: relative;
        display: flex;
        overflow: visible !important;
        flex-direction: column;
        width: 100%;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: #fff;
        box-shadow: none !important;
    }

    body.bili-single-bilibili .article::before {
        order: 1;
        display: block;
        width: 100%;
        min-height: 230px;
        max-height: 300px;
        aspect-ratio: 3 / 2;
        background-color: #101114;
        background-image:
            linear-gradient(180deg, rgba(0, 0, 0, .08) 0%, rgba(0, 0, 0, .02) 62%, rgba(0, 0, 0, .24) 100%),
            var(--bili-single-cover);
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        content: "";
    }

    body.bili-single-has-access .article::before,
    body.bili-single-has-native-cover .article::before,
    body.bili-single-bilibili:has(.single-head-cover) .article::before {
        display: none !important;
    }

    /* 有播放权限时，顶部轮播封面让位给视频播放器。 */
    body.bili-single-bilibili.bili-single-has-access .single-head-cover {
        display: none !important;
    }
    body.bili-single-has-access .article > .pay-box.paid-box {
        order: 1;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: #fff !important;
        box-shadow: none !important;
    }

    /* 视频吸顶期间，顶部返回/分享栏保持透明并覆盖在视频上方。 */
    body.bili-single-bilibili.bili-video-sticky-active .bili-single-appbar,
    body.bili-single-bilibili.bili-video-sticky-active .bili-single-appbar.is-solid {
        color: #fff !important;
        background: transparent !important;
        box-shadow: none !important;
        text-shadow: 0 1px 5px rgba(0, 0, 0, .65) !important;
        backdrop-filter: none !important;
    }
    /* 视频吸顶时，简介/评论栏位于播放器下一层但不沉到正文底部。 */
    body.bili-single-bilibili.bili-single-has-access .bili-single-intro-tabs {
        z-index: 1700;
    }

    body.bili-single-has-access .paid-box > .new-dplayer.bili-video-player-fixed {
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        max-width: 100vw !important;
        margin: 0 !important;
        z-index: 1800 !important;
    }

    body.bili-single-has-access .bili-sticky-video-placeholder {
        display: none;
        width: 100%;
    }

    body.bili-single-has-access .bili-sticky-video-placeholder.is-active {
        display: block;
    }

    body.bili-single-has-access .bili-video-info-bar {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: 1900;
        display: none;
        width: 100vw;
        max-width: 100vw;
        padding: 4px 10px;
        overflow: hidden;
        background: rgba(0, 0, 0, .7);
        color: #fff !important;
        font-size: 12px;
        font-weight: 500;
        line-height: 20px;
        text-align: center;
        text-overflow: ellipsis;
        white-space: nowrap;
        pointer-events: none;
    }

    body.bili-single-has-access .bili-video-info-bar.is-visible {
        display: block;
    }

    body.bili-single-has-access .bili-video-info-bar a {
        color: #fff !important;
        text-decoration: underline;
        text-underline-offset: 2px;
        pointer-events: auto;
    }

    body.bili-single-has-access .bili-video-info-blogger {
        color: #fff !important;
    }

    body.bili-single-has-access .bili-video-info-blogger .bili-video-info-tag {
        color: #fb7299 !important;
    }

    body.bili-single-has-access .bili-video-info-more {
        margin-left: 3px;
        font-size: 9px;
        line-height: 12px;
        white-space: nowrap;
    }

    body.bili-single-has-access .paid-box .new-dplayer {
        width: 100%;
        margin: 0 !important;
        border-radius: 0 !important;
        background: #000;
    }

    /* 竖屏视频减小播放器高度，完整显示视频并保留左右黑边；横屏保持原比例。 */
    body.bili-single-has-access .paid-box > .new-dplayer.bili-video-portrait {
        height: clamp(300px, 52vh, 460px) !important;
        max-height: none !important;
        overflow: hidden;
    }

    body.bili-single-has-access .paid-box > .new-dplayer.bili-video-portrait .dplayer-video-wrap,
    body.bili-single-has-access .paid-box > .new-dplayer.bili-video-portrait .dplayer-video {
        height: 100% !important;
    }

    body.bili-single-has-access .paid-box > .new-dplayer.bili-video-portrait .dplayer-video {
        width: 100% !important;
        object-fit: contain !important;
    }

    body.bili-single-has-access .paid-box .dplayer-video-wrap {
        height: auto !important;
        background: #000;
    }

    body.bili-single-has-access .paid-box .dplayer-video {
        width: 100% !important;
        height: auto !important;
        object-fit: contain !important;
    }

    body.bili-single-has-access .paid-box .dplayer-bezel {
        height: 100% !important;
    }

    body.bili-single-has-access .paid-box .new-dplayer .graphic {
        padding-bottom: 56.25% !important;
    }

    body.bili-single-has-access .paid-box > .payvip-icon,
    body.bili-single-has-access .paid-box > .box-body {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    body.bili-single-has-access .article-header {
        order: 2;
        padding-top: 29px !important;
        background: #fff;
        position: relative;
        z-index: 2;
    }

    body.bili-single-bilibili .article-header {
        order: 3;
        display: flex;
        flex-direction: column;
        margin: 0 !important;
        padding: 29px 16px 0 !important;
        border: 0 !important;
    }

    body.bili-single-bilibili .article-avatar {
        order: 1;
        width: 100%;
        margin: 0 !important;
    }

    body.bili-single-bilibili .article-avatar .user-info {
        min-height: 44px;
    }

    body.bili-single-bilibili .article-avatar .avatar,
    body.bili-single-bilibili .article-avatar .avatar-img {
        width: 42px;
        height: 42px;
        border-radius: 50%;
    }

    body.bili-single-bilibili .article-avatar .user-right {
        margin-left: 10px !important;
    }

    body.bili-single-bilibili .article-avatar .display-name {
        color: #18191c;
        font-size: 15px;
        font-weight: 600;
    }

    body.bili-single-bilibili .article-avatar .user-action .but {
        height: 30px;
        padding: 0 13px;
        border-radius: 15px;
        line-height: 28px;
    }

    body.bili-single-bilibili .article-avatar .user-action .follow {
        display: inline-flex;
        min-width: 64px;
        height: 30px;
        align-items: center;
        justify-content: center;
        margin-left: 10px;
        padding: 0 14px;
        border: 0;
        border-radius: 15px;
        background: #fb7299 !important;
        color: #fff !important;
        font-size: 13px;
        font-weight: 600;
        line-height: 30px;
        text-decoration: none;
    }

    body.bili-single-bilibili .article-avatar .user-action .follow.actived {
        background: #f1f2f3 !important;
        color: #61666d !important;
    }

    body.bili-single-bilibili .article-avatar .user-action > a:not(.follow) {
        display: none !important;
    }

    body.bili-single-bilibili .article-avatar .bili-author-follow-fallback {
        display: inline-flex;
        min-width: 64px;
        height: 30px;
        align-items: center;
        justify-content: center;
        margin-left: 10px;
        padding: 0 14px;
        border: 0;
        border-radius: 15px;
        background: #fb7299 !important;
        color: #fff !important;
        font-size: 13px;
        font-weight: 600;
        line-height: 30px;
        text-decoration: none;
    }

    body.bili-single-bilibili .article-avatar > .relative {
        display: none !important;
    }

    body.bili-single-bilibili .article-title {
        order: 2;
        margin: 12px 0 0 !important;
        color: #18191c;
        font-size: 20px;
        font-weight: 600;
        line-height: 1.38;
    }

    body.bili-single-bilibili .article-title a {
        color: inherit;
    }

    body.bili-comments-visible .article-content {
        display: none !important;
    }

    body.bili-single-bilibili .article-content {
        order: 4;
        width: 100%;
        margin: 0 !important;
        padding: 0 16px 18px !important;
    }

    body.bili-single-bilibili .pay-box {
        order: 2;
        width: auto !important;
        margin: 0 16px !important;
        padding: 12px !important;
        border: 1px solid rgba(24, 25, 28, .06);
        border-radius: 12px !important;
        background: #fff !important;
        box-shadow: 0 5px 18px rgba(24, 25, 28, .05) !important;
    }

    body.bili-single-bilibili .pay-box .pay-title,
    body.bili-single-bilibili .pay-box .price-box,
    body.bili-single-bilibili .pay-box .vip-price-buts {
        display: none !important;
    }

    body.bili-single-bilibili .pay-box .pay-tag,
    body.bili-single-bilibili .pay-box .text-right.mt10 > .badg {
        display: none !important;
    }

    body.bili-single-bilibili:not(.bili-single-has-access) .pay-box .vip-price-buts {
        display: flex !important;
        width: 100%;
        align-items: center;
        gap: 8px;
        margin-top: 8px;
    }

    body.bili-single-bilibili:not(.bili-single-has-access) .pay-box .vip-price {
        display: inline-flex !important;
        height: 32px;
        flex: 1 1 0;
        align-items: center;
        justify-content: center;
        padding: 0 8px;
        border-radius: 8px;
        font-size: 12px;
        font-weight: 600;
        line-height: 32px;
        text-decoration: none;
    }

    body.bili-single-bilibili:not(.bili-single-has-access) .pay-box .vip-price[vip-level="1"] {
        background: rgba(255, 164, 35, .14) !important;
        color: #f58b00 !important;
    }

    body.bili-single-bilibili:not(.bili-single-has-access) .pay-box .vip-price[vip-level="2"] {
        background: rgba(251, 114, 153, .14) !important;
        color: #fb7299 !important;
    }

    body.bili-single-bilibili:not(.bili-single-has-access) .pay-box .vip-price-text {
        color: inherit;
    }

    body.bili-single-bilibili .pay-box .text-right.mt10 {
        margin-top: 6px !important;
    }

    body.bili-single-bilibili .pay-box,
    body.bili-single-bilibili .pay-box .pay-flexbox,
    body.bili-single-bilibili .pay-box .flex-auto-h {
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }

    body.bili-single-bilibili .pay-box .flex-auto-h {
        min-width: 0;
    }

    body.bili-single-bilibili .pay-box .text-right.mt10 {
        display: block;
        width: 100%;
        flex: 0 0 auto;
    }

    body.bili-single-bilibili .pay-box .text-right.mt10 > .but {
        display: flex !important;
        width: 100% !important;
        min-height: 44px;
        align-items: center;
        justify-content: center;
        padding: 8px 12px !important;
        line-height: 1.25 !important;
        white-space: normal;
    }

    body.bili-single-bilibili .vip-price .bili-vip-price-icon,
    body.bili-single-bilibili .pay-box .bili-pay-price-icon {
        display: inline-block !important;
        width: 14px !important;
        height: 14px !important;
        margin-right: 4px !important;
        flex: 0 0 14px;
        object-fit: contain !important;
        vertical-align: -2px;
    }

    body.bili-single-bilibili .pay-box .bili-pay-price-label {
        display: inline-flex;
        min-width: 0;
        align-items: center;
    }

    body.bili-single-bilibili .pay-box .bili-pay-price-panel {
        display: grid;
        gap: 6px;
        margin-top: 10px;
    }

    body.bili-single-bilibili .pay-box .bili-pay-price-row {
        display: flex;
        min-height: 32px;
        align-items: center;
        justify-content: space-between;
        padding: 0 10px;
        border-radius: 8px;
        background: #f6f7f8;
        color: #61666d;
        font-size: 13px;
    }

    body.bili-single-bilibili .pay-box .bili-pay-price-row strong {
        color: #18191c;
        font-size: 14px;
        font-weight: 600;
    }

    body.bili-single-bilibili .pay-box .bili-pay-price-row.is-vip1 {
        background: rgba(255, 164, 35, .12);
    }

    body.bili-single-bilibili .pay-box .bili-pay-price-row.is-vip1 strong {
        color: #f58b00;
    }

    body.bili-single-bilibili .pay-box .bili-pay-price-row.is-vip2 {
        background: rgba(251, 114, 153, .12);
    }

    body.bili-single-bilibili .pay-box .bili-pay-price-row.is-vip2 strong {
        color: #fb7299;
    }

    body.bili-single-bilibili .pay-box .pay-flexbox {
        padding: 4px 0;
    }

    body.bili-single-bilibili .article-content .wp-posts-content {
        margin-top: 16px !important;
        color: #18191c;
        font-size: 16px;
        line-height: 1.8;
    }

    /* 正文图片按原始比例完整显示，避免封面区块强制高度后裁切放大。 */
    body.bili-single-bilibili .article-content .wp-block-image img:not(.bili-emoji),
    body.bili-single-bilibili .article-content p > img:not(.bili-emoji),
    body.bili-single-bilibili .article-content > img:not(.bili-emoji) {
        display: block;
        width: auto !important;
        max-width: 100% !important;
        height: auto !important;
        margin-right: auto;
        margin-left: auto;
        object-fit: contain !important;
    }

    body.bili-single-bilibili .article-content .wp-block-cover.bili-content-image-only {
        display: block !important;
        width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        margin-right: auto;
        margin-left: auto;
        padding: 0 !important;
        overflow: hidden;
        border-radius: 8px;
    }

    body.bili-single-bilibili .article-content .bili-content-image-only > .wp-block-cover__image-background {
        position: relative !important;
        inset: auto !important;
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
        height: auto !important;
        margin-right: auto;
        margin-left: auto;
        object-fit: contain !important;
    }

    body.bili-single-bilibili .article-content .bili-content-image-only > .wp-block-cover__background,
    body.bili-single-bilibili .article-content .bili-content-image-only > .wp-block-cover__inner-container {
        display: none !important;
    }

    body.bili-single-bilibili .article-content .theme-box {
        border-color: rgba(24, 25, 28, .06);
    }

    body.bili-single-bilibili .article > .text-center.muted-3-color.box-body.em09,
    body.bili-single-bilibili .article-content > .em09.muted-3-color,
    body.bili-single-bilibili .article-content > .separator,
    body.bili-single-bilibili .posts-copyright,
    body.bili-single-bilibili .post-actions + .box-body,
    body.bili-single-bilibili .content-layout > .theme-box:has(> .article-nav),
    body.bili-single-bilibili .article-nav,
    body.bili-single-bilibili .content-layout > .author {
        display: none !important;
    }

    /* 文章结束后的分类与标签 */
    body.bili-single-bilibili .article-tags {
        display: flex !important;
        align-items: center;
        flex-wrap: wrap;
        gap: 8px;
        margin: 18px 0 4px !important;
        padding: 16px 0 2px !important;
        border-top: 1px solid rgba(24, 25, 28, .06);
        background: transparent !important;
    }

    body.bili-single-bilibili .article-tags br {
        display: none !important;
    }

    body.bili-single-bilibili .article-tags a {
        display: inline-flex !important;
        min-height: 28px;
        align-items: center;
        margin: 0 !important;
        padding: 4px 10px !important;
        border: 0 !important;
        border-radius: 14px !important;
        background: #f6f7f8 !important;
        color: #61666d !important;
        font-size: 12px !important;
        font-weight: 400 !important;
        line-height: 20px !important;
        text-decoration: none !important;
    }

    body.bili-single-bilibili .article-tags a:hover,
    body.bili-single-bilibili .article-tags a:active {
        background: rgba(251, 114, 153, .1) !important;
        color: #fb7299 !important;
    }

    body.bili-single-bilibili .article-tags a i,
    body.bili-single-bilibili .article-tags a svg {
        margin-right: 5px !important;
        color: #9499a0 !important;
    }

    body.bili-single-bilibili .post-actions {
        order: 5;
        display: flex;
        width: 100%;
        align-items: stretch;
        justify-content: space-around;
        margin: 41px 0 0 !important;
        padding: 7px 0 !important;
        border-top: 1px solid rgba(24, 25, 28, .06);
        border-bottom: 1px solid rgba(24, 25, 28, .06);
        background: #fff;
    }

    body.bili-single-bilibili .post-actions .action {
        position: relative;
        display: flex;
        min-width: 0;
        flex: 1 1 0;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        min-height: 50px;
        gap: 3px;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        color: #61666d !important;
        font-size: 11px;
        line-height: 1;
        text-decoration: none;
    }

    body.bili-single-bilibili .post-actions .action svg,
    body.bili-single-bilibili .post-actions .action > i {
        display: block;
        width: 25px;
        height: 25px;
        margin: 0;
        color: inherit;
    }

    body.bili-single-bilibili .post-actions .action-like.is-active,
    body.bili-single-bilibili .post-actions .action-favorite.is-active {
        color: #fb7299 !important;
    }

    body.bili-single-bilibili .relates {
        margin: 10px 0 0 !important;
        padding: 0 16px 12px;
        border: 0 !important;
        border-radius: 0 !important;
        background: #fff;
        box-shadow: none !important;
    }

    body.bili-single-bilibili .relates > .box-body:first-child {
        margin: 0 !important;
        padding: 14px 0 10px !important;
        border: 0 !important;
    }

    body.bili-single-bilibili .relates .title-theme {
        font-size: 16px;
        font-weight: 600;
    }

    body.bili-single-bilibili .relates .zib-widget {
        width: 100%;
    }

    body.bili-single-bilibili .relates .swiper-wrapper {
        display: block !important;
        transform: none !important;
    }

    body.bili-single-bilibili .relates .swiper-slide {
        width: 100% !important;
        margin: 0 !important;
        padding: 12px 0 !important;
        border-bottom: 1px solid rgba(24, 25, 28, .06);
    }

    body.bili-single-bilibili .relates .swiper-slide:last-child {
        border-bottom: 0;
    }

    body.bili-single-bilibili .relates .swiper-slide > a {
        position: relative;
        display: grid;
        min-height: 92px;
        align-items: start;
        grid-template-columns: 150px minmax(0, 1fr);
        grid-template-rows: auto auto;
        column-gap: 14px;
    }

    body.bili-single-bilibili .relates .swiper-slide .graphic {
        position: relative;
        width: 150px !important;
        height: 92px !important;
        grid-column: 1;
        grid-row: 1 / span 2;
        margin: 0 !important;
        padding-bottom: 0 !important;
        overflow: visible !important;
        border-radius: 8px;
    }

    body.bili-single-bilibili .relates .swiper-slide .graphic img {
        width: 100% !important;
        height: 100% !important;
        border-radius: 8px;
        object-fit: cover;
    }

    body.bili-single-bilibili .relates .graphic-text {
        position: relative !important;
        right: auto !important;
        left: auto !important;
        width: 100% !important;
        grid-column: 2;
        transform: none !important;
        color: #18191c !important;
        text-align: left !important;
        text-shadow: none !important;
    }

    body.bili-single-bilibili .relates .graphic-text.text-ellipsis {
        top: auto !important;
        bottom: auto !important;
        display: -webkit-box !important;
        grid-row: 1;
        max-height: 3.4em;
        overflow: hidden !important;
        padding-bottom: 2px;
        font-size: 15px;
        font-weight: 500;
        line-height: 1.5;
        text-overflow: ellipsis;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        white-space: normal;
    }

    body.bili-single-bilibili .relates .graphic-text:not(.text-ellipsis) {
        top: auto !important;
        bottom: auto !important;
        display: block !important;
        grid-row: 2;
        margin-top: 4px !important;
        color: #9499a0 !important;
        font-size: 11px;
        line-height: 1.35;
    }

    body.bili-single-bilibili .relates .graphic-text:not(.text-ellipsis) > .em09 {
        display: -webkit-box !important;
        max-height: 4.05em;
        overflow: hidden !important;
        color: #61666d !important;
        font-size: 11px !important;
        line-height: 1.35 !important;
        text-overflow: ellipsis;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        opacity: 1 !important;
        overflow-wrap: anywhere;
        white-space: normal;
    }

    body.bili-single-bilibili .relates .graphic-text:not(.text-ellipsis) .px12 {
        display: flex !important;
        align-items: center;
        justify-content: flex-start;
        gap: 8px;
        margin-top: 3px !important;
        color: #9499a0 !important;
        font-size: 10px !important;
        opacity: 1 !important;
    }

    body.bili-single-bilibili .relates .graphic-text:not(.text-ellipsis) .pull-right {
        margin-left: auto;
        float: none !important;
    }

    body.bili-single-bilibili .bili-comment-author-up,
    body.bili-single-bilibili .bili-article-author-up {
        display: inline-flex;
        min-width: 18px;
        height: 11px;
        align-items: center;
        justify-content: center;
        padding: 0 3px;
        border-radius: 3.5px;
        background: #fb7299 !important;
        color: #fff !important;
        font-size: 9px;
        font-weight: 700;
        line-height: 11px;
        letter-spacing: .2px;
        white-space: nowrap;
    }

    body.bili-single-bilibili #comments {
        margin: 10px 0 0 !important;
        border-radius: 0 !important;
        background: #fff;
        box-shadow: none !important;
    }

    body.bili-single-bilibili #comments > .box-body {
        margin: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    body.bili-single-bilibili #comments > .box-body.notop {
        padding: 14px 16px 10px !important;
    }

    body.bili-single-bilibili #comments .title-theme {
        font-size: 16px;
        font-weight: 600;
    }

    body.bili-single-bilibili #comments #postcomments {
        padding-bottom: 18px;
    }
}

/* 手机端评论“三个点”菜单：确保点击后从底部正常显示 */
body.bili-single-bilibili #postcomments .dropdown.drop-fixed-sm.open > .dropdown-menu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: translateY(0) !important;
    transition: none !important;
    pointer-events: auto !important;
    z-index: 1200 !important;
}


/* 支付弹窗最上层保护：隐藏文章页所有固定导航，按钮始终完整可点 */
body.bili-single-bilibili.modal-open .bili-single-appbar,
body.bili-single-bilibili.modal-open .bili-mobile-tabbar,
body.bili-single-bilibili.modal-open .bili-single-comment-bar,
body.bili-single-bilibili.modal-open .bili-single-intro-tabs {
    display: none !important;
}

body.bili-single-bilibili.modal-open #modal_pay_uservip.in .initiate-pay {
    display: flex !important;
    min-height: 46px !important;
    align-items: center;
    justify-content: center;
    padding: 8px 12px !important;
    line-height: 1.25 !important;
    white-space: normal;
}









/* 会员权限判断区域：电脑端与手机端使用相同的紧凑图标尺寸 */
body.bili-single-bilibili .pay-box .bili-pay-price-panel {
    display: grid;
    gap: 6px;
    margin-top: 10px;
}

body.bili-single-bilibili .pay-box .bili-pay-price-row {
    display: flex;
    min-height: 32px;
    align-items: center;
    justify-content: space-between;
    padding: 0 10px;
    border-radius: 8px;
    background: #f6f7f8;
    color: #61666d;
    font-size: 13px;
}

body.bili-single-bilibili .pay-box .bili-pay-price-label {
    display: inline-flex;
    min-width: 0;
    align-items: center;
}

body.bili-single-bilibili .pay-box .bili-pay-price-icon {
    display: inline-block !important;
    width: 14px !important;
    min-width: 14px !important;
    max-width: 14px !important;
    height: 14px !important;
    min-height: 14px !important;
    max-height: 14px !important;
    flex: 0 0 14px !important;
    margin-right: 4px !important;
    object-fit: contain !important;
    vertical-align: -2px;
}

body.bili-single-bilibili .pay-box .bili-pay-price-row strong {
    color: #18191c;
    font-size: 14px;
    font-weight: 600;
}

body.bili-single-bilibili .pay-box .bili-pay-price-row.is-vip1 {
    background: rgba(255, 164, 35, .12);
}

body.bili-single-bilibili .pay-box .bili-pay-price-row.is-vip1 strong {
    color: #f58b00;
}

body.bili-single-bilibili .pay-box .bili-pay-price-row.is-vip2 {
    background: rgba(251, 114, 153, .12);
}

body.bili-single-bilibili .pay-box .bili-pay-price-row.is-vip2 strong {
    color: #fb7299;
}

/* 页面内会员免费判断按钮：电脑端图标同样限制为 14px */
body.bili-single-bilibili:not(.bili-single-has-access) .pay-box .vip-price-buts {
    display: flex !important;
    width: 100%;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
}

body.bili-single-bilibili:not(.bili-single-has-access) .pay-box .vip-price {
    display: inline-flex !important;
    height: 32px;
    flex: 1 1 0;
    align-items: center;
    justify-content: center;
    padding: 0 8px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    line-height: 32px;
}

body.bili-single-bilibili:not(.bili-single-has-access) .pay-box .vip-price .bili-vip-price-icon {
    display: inline-block !important;
    width: 14px !important;
    min-width: 14px !important;
    max-width: 14px !important;
    height: 14px !important;
    min-height: 14px !important;
    max-height: 14px !important;
    flex: 0 0 14px !important;
    margin-right: 4px !important;
    object-fit: contain !important;
    vertical-align: -2px;
}

/* 用户主页：手机端取消作者卡片的负上边距，避免封面被顶部导航遮挡 */
@media (max-width: 782px) {
    body.author .author-header {
        margin-top: 0 !important;
    }
}

/* 首页文章卡片封面高度在原有 3:2 基础上提高五分之一 */
body.home.zib-bilibili .bili-video-grid .posts-item.card .item-thumbnail {
    aspect-ratio: 125 / 98 !important;
}




body.bili-single-bilibili .bili-playlist-entry { display:flex; align-items:center; gap:8px; margin:10px 12px 12px; padding:9px 10px; border:1px solid #e3e5e7; border-radius:8px; background:#fff; }
body.bili-single-bilibili .bili-playlist-entry button { display:inline-flex; height:32px; align-items:center; justify-content:center; gap:5px; padding:0 12px; border:1px solid #e3e5e7; border-radius:6px; background:#f6f7f8; color:#18191c; font-size:13px; font-weight:500; line-height:1; cursor:pointer; }
body.bili-single-bilibili .bili-playlist-entry button svg { width:16px; height:16px; fill:currentColor; }
body.bili-single-bilibili .bili-playlist-entry .bili-playlist-add.is-added { border-color:rgba(251,114,153,.45); background:rgba(251,114,153,.08); color:#fb7299; }
body.bili-single-bilibili .bili-playlist-entry-count { width:32px; min-width:32px; padding:0 !important; border-radius:16px !important; color:#61666d !important; font-size:12px !important; font-variant-numeric:tabular-nums; }
body.bili-single-bilibili .bili-playlist-play-all { margin-left:auto; border-color:#fb7299 !important; background:#fb7299 !important; color:#fff !important; }
body.bili-single-bilibili .bili-playlist-layer { position:fixed; inset:0; z-index:1000000; display:none; visibility:hidden; }
body.bili-single-bilibili .bili-playlist-layer.is-open { display:block; visibility:visible; }
body.bili-single-bilibili .bili-playlist-backdrop { position:absolute; inset:0; width:100%; height:100%; padding:0; border:0; background:rgba(0,0,0,.42); cursor:pointer; opacity:0; }
body.bili-single-bilibili .bili-playlist-panel { position:absolute; top:0; right:0; display:flex; width:min(430px,100vw); height:100%; flex-direction:column; background:#fff; color:#18191c; box-shadow:-8px 0 28px rgba(0,0,0,.16); transform:translateX(102%); transition:transform .26s ease; }
body.bili-single-bilibili .bili-playlist-layer.is-open .bili-playlist-panel { transform:translateX(0); }
body.bili-single-bilibili .bili-playlist-head { display:flex; height:56px; flex:0 0 56px; align-items:center; justify-content:space-between; padding:0 16px; border-bottom:1px solid #f1f2f3; }
body.bili-single-bilibili .bili-playlist-head strong { font-size:17px; font-weight:600; }
body.bili-single-bilibili .bili-playlist-head-count { color:#9499a0; font-size:12px; }
body.bili-single-bilibili .bili-playlist-close { width:32px; height:32px; padding:0; border:0; border-radius:50%; background:#f6f7f8; color:#61666d; font-size:24px; line-height:30px; cursor:pointer; }
body.bili-single-bilibili .bili-playlist-now { margin:12px 16px 0; padding:10px 12px; border-radius:8px; background:#f6f7f8; }
body.bili-single-bilibili .bili-playlist-now-label { color:#fb7299; font-size:11px; }
body.bili-single-bilibili .bili-playlist-now-title { overflow:hidden; font-size:14px; font-weight:600; text-overflow:ellipsis; white-space:nowrap; }
body.bili-single-bilibili .bili-playlist-now-meta, body.bili-single-bilibili .bili-playlist-now-empty { color:#9499a0; font-size:12px; }
body.bili-single-bilibili .bili-playlist-modes { display:flex; gap:8px; padding:12px 16px; }
body.bili-single-bilibili .bili-playlist-modes button { flex:1 1 0; height:30px; border:1px solid #e3e5e7; border-radius:6px; background:#fff; color:#61666d; font-size:12px; cursor:pointer; }
body.bili-single-bilibili .bili-playlist-modes button.is-active { border-color:#fb7299; background:rgba(251,114,153,.08); color:#fb7299; }
body.bili-single-bilibili .bili-playlist-body { min-height:0; flex:1 1 auto; overflow-y:auto; overscroll-behavior:contain; }
body.bili-single-bilibili .bili-playlist-section { padding:0 16px 14px; }
body.bili-single-bilibili .bili-playlist-section-title { display:flex; align-items:center; justify-content:space-between; margin:4px 0 9px; color:#61666d; font-size:13px; font-weight:600; }
body.bili-single-bilibili .bili-playlist-section-title button { padding:0; border:0; background:transparent; color:#fb7299; font-size:12px; cursor:pointer; }
body.bili-single-bilibili .bili-playlist-list, body.bili-single-bilibili .bili-playlist-results { display:grid; gap:6px; }
body.bili-single-bilibili .bili-playlist-item, body.bili-single-bilibili .bili-playlist-result { display:flex; min-width:0; align-items:center; border:1px solid #f1f2f3; border-radius:8px; background:#fff; }
body.bili-single-bilibili .bili-playlist-item.is-active { border-color:rgba(251,114,153,.55); background:rgba(251,114,153,.06); }
body.bili-single-bilibili .bili-playlist-item-play { display:flex; min-width:0; flex:1 1 auto; align-items:center; gap:9px; padding:7px; border:0; background:transparent; color:inherit; text-align:left; cursor:pointer; }
body.bili-single-bilibili .bili-playlist-cover { display:grid; width:64px; height:40px; flex:0 0 64px; place-items:center; overflow:hidden; border-radius:5px; background:#f1f2f3; color:#9499a0; }
body.bili-single-bilibili .bili-playlist-cover img { width:100%; height:100%; object-fit:cover; }
body.bili-single-bilibili .bili-playlist-item-main, body.bili-single-bilibili .bili-playlist-result-main { min-width:0; flex:1 1 auto; }
body.bili-single-bilibili .bili-playlist-item-main strong, body.bili-single-bilibili .bili-playlist-result-main strong { display:-webkit-box; overflow:hidden; color:#18191c; font-size:13px; font-weight:500; line-height:18px; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
body.bili-single-bilibili .bili-playlist-item-main em, body.bili-single-bilibili .bili-playlist-result-main span { display:block; margin-top:2px; color:#9499a0; font-size:11px; font-style:normal; }
body.bili-single-bilibili .bili-playlist-item-tools { display:flex; gap:2px; padding-right:6px; }
body.bili-single-bilibili .bili-playlist-item-tools button, body.bili-single-bilibili .bili-playlist-result > button { display:grid; width:28px; height:28px; place-items:center; padding:0; border:0; border-radius:6px; background:transparent; color:#9499a0; font-size:16px; cursor:pointer; }
body.bili-single-bilibili .bili-playlist-result > button { width:auto; min-width:48px; color:#fb7299; font-size:12px; }
body.bili-single-bilibili .bili-playlist-empty { padding:18px 10px; border-radius:8px; background:#f6f7f8; color:#9499a0; font-size:12px; text-align:center; }
body.bili-single-bilibili .bili-playlist-search { display:flex; gap:8px; margin-bottom:8px; }
body.bili-single-bilibili .bili-playlist-search input { min-width:0; height:32px; flex:1 1 auto; padding:0 10px; border:1px solid #e3e5e7; border-radius:6px; background:#fff; color:#18191c; font-size:12px; }
body.bili-single-bilibili .bili-playlist-search button { height:32px; padding:0 12px; border:1px solid #e3e5e7; border-radius:6px; background:#f6f7f8; color:#61666d; font-size:12px; cursor:pointer; }
body.bili-single-bilibili .bili-playlist-footer { display:flex; gap:8px; padding:12px 16px max(12px,env(safe-area-inset-bottom)); border-top:1px solid #f1f2f3; background:#fff; }
body.bili-single-bilibili .bili-playlist-footer button { height:40px; flex:1 1 0; border:1px solid #e3e5e7; border-radius:8px; background:#f6f7f8; color:#61666d; font-size:14px; font-weight:600; cursor:pointer; }
body.bili-single-bilibili .bili-playlist-footer .bili-playlist-start { border-color:#fb7299; background:#fb7299; color:#fff; }
body.bili-single-bilibili .bili-playlist-notice { position:fixed; left:50%; bottom:80px; z-index:1000001; max-width:calc(100vw - 32px); padding:8px 13px; border-radius:18px; background:rgba(24,25,28,.92); color:#fff; font-size:12px; text-align:center; pointer-events:none; opacity:0; transform:translate(-50%,8px); transition:opacity .2s ease, transform .2s ease; }
body.bili-single-bilibili .bili-playlist-notice.is-visible { opacity:1; transform:translate(-50%,0); }
body.bili-single-bilibili .bili-playlist-notice.is-error { background:rgba(203,61,84,.94); }
body.dark-theme.bili-single-bilibili .bili-playlist-entry, body.dark-theme.bili-single-bilibili .bili-playlist-panel, body.dark-theme.bili-single-bilibili .bili-playlist-footer { border-color:#34363b; background:#1f2023; color:#e3e5e7; }
body.dark-theme.bili-single-bilibili .bili-playlist-entry button, body.dark-theme.bili-single-bilibili .bili-playlist-modes button, body.dark-theme.bili-single-bilibili .bili-playlist-search input, body.dark-theme.bili-single-bilibili .bili-playlist-search button, body.dark-theme.bili-single-bilibili .bili-playlist-footer button, body.dark-theme.bili-single-bilibili .bili-playlist-now, body.dark-theme.bili-single-bilibili .bili-playlist-empty { border-color:#3b3d42; background:#2a2b2f; color:#d0d2d5; }
body.dark-theme.bili-single-bilibili .bili-playlist-item, body.dark-theme.bili-single-bilibili .bili-playlist-result { border-color:#34363b; background:#25262a; }
body.dark-theme.bili-single-bilibili .bili-playlist-item-main strong, body.dark-theme.bili-single-bilibili .bili-playlist-result-main strong, body.dark-theme.bili-single-bilibili .bili-playlist-now-title { color:#f1f2f3; }
@media (max-width:782px) { body.bili-single-bilibili .bili-playlist-entry { margin:8px 10px 10px; padding:7px 8px; } body.bili-single-bilibili .bili-playlist-entry button { height:30px; padding:0 9px; font-size:12px; } body.bili-single-bilibili .bili-playlist-panel { top:auto; bottom:0; width:100%; height:min(84vh,720px); border-radius:16px 16px 0 0; transform:translateY(102%); } body.bili-single-bilibili .bili-playlist-layer.is-open .bili-playlist-panel { transform:translateY(0); } body.bili-single-bilibili .bili-playlist-notice { bottom:92px; } }body.zib-bilibili.bili-playlist-open { overflow: hidden; }
/* 播放器广告水印 */
body.bili-single-bilibili .bili-player-ad { position:absolute; left:0; right:0; z-index:8; display:flex; align-items:center; overflow:visible; pointer-events:none; opacity:0; transition:opacity .25s ease; }
body.bili-single-bilibili .bili-player-ad.is-playing { opacity:1; }
body.bili-single-bilibili .bili-player-ad--top { top:calc(34px + var(--bili-player-ad-y,0px)); }
body.bili-single-bilibili .bili-player-ad--middle { top:50%; transform:translateY(calc(-50% + var(--bili-player-ad-y,0px))); }
body.bili-single-bilibili .bili-player-ad--bottom { bottom:calc(46px - var(--bili-player-ad-y,0px)); }
body.bili-single-bilibili .bili-player-ad--left { justify-content:flex-start; padding-left:16px; }
body.bili-single-bilibili .bili-player-ad--center { justify-content:center; }
body.bili-single-bilibili .bili-player-ad--right { justify-content:flex-end; padding-right:16px; }
body.bili-single-bilibili .bili-player-ad-content { position:relative; left:var(--bili-player-ad-x,0px); display:inline-flex; align-items:center; gap:10px; max-width:100%; pointer-events:none; }
body.bili-single-bilibili a.bili-player-ad-content { pointer-events:auto; text-decoration:none; }
body.bili-single-bilibili .bili-player-ad-image { display:block; width:var(--bili-player-ad-image-width,120px); max-width:80vw; height:auto; opacity:var(--bili-player-ad-image-opacity,.85); transform:rotate(var(--bili-player-ad-rotation,0deg)); transform-origin:center; }
body.bili-single-bilibili .bili-player-ad-text { color:var(--bili-player-ad-color,#fff); font-size:var(--bili-player-ad-size,14px); font-weight:600; line-height:1.5; opacity:var(--bili-player-ad-text-opacity,.75); text-shadow:0 1px 3px rgba(0,0,0,.65),0 0 2px rgba(0,0,0,.45); white-space:nowrap; transform:rotate(var(--bili-player-ad-rotation,0deg)); transform-origin:center; }
body.bili-single-bilibili .bili-player-ad--scroll .bili-player-ad-content { position:absolute; left:calc(100% + var(--bili-player-ad-x,0px)); top:0; animation:bili-player-ad-scroll var(--bili-player-ad-duration,14s) linear infinite; animation-play-state:paused; }
body.bili-single-bilibili .bili-player-ad--scroll.is-playing .bili-player-ad-content { animation-play-state:running; }
body.bili-single-bilibili .bili-player-ad--fade .bili-player-ad-content { animation:bili-player-ad-fade var(--bili-player-ad-duration,14s) ease-in-out infinite; animation-play-state:paused; }
body.bili-single-bilibili .bili-player-ad--fade.is-playing .bili-player-ad-content { animation-play-state:running; }
@keyframes bili-player-ad-scroll { from { transform:translateX(0); } to { transform:translateX(calc(-1 * var(--bili-player-ad-distance,120vw))); } }
@keyframes bili-player-ad-fade { 0%,100% { opacity:0; } 12%,78% { opacity:1; } }
@media (max-width:782px) { body.bili-single-bilibili .bili-player-ad--top { top:calc(28px + var(--bili-player-ad-y,0px)); } body.bili-single-bilibili .bili-player-ad--bottom { bottom:calc(42px - var(--bili-player-ad-y,0px)); } }
/* 文字水印前置图标 */
body.bili-single-bilibili .bili-player-ad-text-wrap { display:inline-flex; align-items:center; gap:6px; }
body.bili-single-bilibili .bili-player-ad-text-icon { display:block; width:18px; height:18px; flex:0 0 18px; object-fit:contain; opacity:var(--bili-player-ad-text-opacity,.75); transform:rotate(var(--bili-player-ad-rotation,0deg)); transform-origin:center; pointer-events:none; }
/* 播放器评论漂浮 */
body.bili-single-bilibili .bili-player-comment-content { position:absolute !important; left:calc(100% + var(--bili-player-ad-x,0px)) !important; top:0; display:inline-flex !important; flex-wrap:nowrap !important; gap:6px; animation:bili-player-comment-scroll var(--bili-player-comment-duration,5s) linear !important; animation-play-state:paused !important; will-change:transform; }
body.bili-single-bilibili .bili-player-comment-ad.is-playing .bili-player-comment-content { animation-play-state:running !important; }
@keyframes bili-player-comment-scroll { from { transform:translateX(0); } to { transform:translateX(calc(-1 * var(--bili-player-ad-distance,120vw))); } }
body.bili-single-bilibili .bili-player-comment-icon { display:block; width:18px; height:18px; flex:0 0 18px; object-fit:contain; opacity:var(--bili-player-ad-text-opacity,.75); transform:rotate(var(--bili-player-ad-rotation,0deg)); transform-origin:center; }
body.bili-single-bilibili .bili-player-comment-author, body.bili-single-bilibili .bili-player-comment-colon { display:inline-block; flex:0 0 auto; color:var(--bili-player-ad-color,#fff); font-size:var(--bili-player-ad-size,14px); line-height:1.5; opacity:var(--bili-player-ad-text-opacity,.75); text-shadow:0 1px 3px rgba(0,0,0,.65),0 0 2px rgba(0,0,0,.45); white-space:nowrap; writing-mode:horizontal-tb; transform:rotate(var(--bili-player-ad-rotation,0deg)); transform-origin:center; }
body.bili-single-bilibili .bili-player-comment-author { font-weight:600; }
body.bili-single-bilibili .bili-player-comment-text { display:inline-flex !important; align-items:center; gap:2px; min-width:0; }
body.bili-single-bilibili .bili-player-comment-emoji { display:block; width:1.35em; height:1.35em; flex:0 0 auto; object-fit:contain; vertical-align:middle; }
body.bili-single-bilibili .bili-player-comment-emoji.is-large { width:2.15em; height:2.15em; margin:-.28em .08em; }
/* 播放列表操作栏内的弹幕开关 */
body.bili-single-bilibili .bili-comments-toggle-inline { display:inline-flex; height:30px; align-items:center; gap:5px; margin-left:0; padding:0 8px; border:1px solid #e3e5e7; border-radius:6px; background:#f6f7f8; color:#9499a0; cursor:pointer; }
body.bili-single-bilibili .bili-playlist-play-all { margin-left:auto !important; }
body.bili-single-bilibili .bili-comments-toggle-track { position:relative; display:block; width:28px; height:16px; flex:0 0 28px; border-radius:8px; background:#d0d2d5; transition:background .2s ease; }
body.bili-single-bilibili .bili-comments-toggle-track i { position:absolute; left:2px; top:2px; width:12px; height:12px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.2); transition:transform .2s ease; }
body.bili-single-bilibili .bili-comments-toggle-inline.is-on { color:#fb7299; }
body.bili-single-bilibili .bili-comments-toggle-inline.is-on .bili-comments-toggle-track { background:#fb7299; }
body.bili-single-bilibili .bili-comments-toggle-inline.is-on .bili-comments-toggle-track i { transform:translateX(12px); }
body.bili-single-bilibili .bili-comments-toggle-inline em { font-size:11px; font-style:normal; line-height:1; white-space:nowrap; }
body.dark-theme.bili-single-bilibili .bili-comments-toggle-inline { border-color:#3b3d42; background:#2a2b2f; }
@media (max-width:782px) { body.bili-single-bilibili .bili-comments-toggle-inline { height:28px; padding:0 6px; } body.bili-single-bilibili .bili-comments-toggle-inline em { font-size:10px; } }
/* 文章打开后的自动播放倒计时 */
body.bili-single-bilibili .bili-autoplay-countdown { position:absolute; top:16px; right:16px; z-index:12; height:auto; min-height:28px; max-width:min(560px,calc(100% - 32px)); padding:6px 10px; border:0; border-radius:14px; background:rgba(24,25,28,.68); color:#fff; font-size:12px; line-height:16px; text-align:left; white-space:normal; cursor:pointer; }
body.bili-single-bilibili .bili-autoplay-fallback { position:absolute; inset:0; z-index:13; display:grid; place-items:center; background:rgba(0,0,0,.26); }
body.bili-single-bilibili .bili-autoplay-fallback button { height:40px; padding:0 22px; border:0; border-radius:20px; background:#fb7299; color:#fff; font-size:14px; font-weight:600; cursor:pointer; box-shadow:0 5px 18px rgba(0,0,0,.22); }
@media (max-width:782px) { body.bili-single-bilibili .bili-autoplay-countdown { top:12px; right:12px; height:auto; min-height:26px; font-size:11px; line-height:15px; } }
/* 文章打开后的中央问候语 */
body.bili-single-bilibili .bili-autoplay-center-message { position:absolute; left:50%; top:50%; z-index:14; width:max-content; max-width:calc(100% - 24px); padding:6px 10px; overflow:hidden; border-radius:14px; background:rgba(24,25,28,.68); color:#fff; font-size:12px; font-weight:500; line-height:16px; text-align:center; text-overflow:ellipsis; text-shadow:0 1px 3px rgba(0,0,0,.55); white-space:nowrap; pointer-events:none; transform:translate(-50%,-50%); }
@media (max-width:782px) { body.bili-single-bilibili .bili-autoplay-center-message { max-width:calc(100% - 24px); padding:6px 10px; font-size:11px; line-height:15px; } }
/* 中央问候语用户名前的会员图标 */
body.bili-single-bilibili .bili-autoplay-name-wrap { display:inline-block; white-space:nowrap; line-height:inherit; vertical-align:baseline; }
body.bili-single-bilibili .bili-autoplay-name-icon { display:inline-block; width:14px; height:14px; margin-right:3px; object-fit:contain; vertical-align:-2px; }
/* 中央问候语链接点击 */
body.bili-single-bilibili a.bili-autoplay-center-message { pointer-events:auto !important; cursor:pointer; text-decoration:none; }
body.bili-single-bilibili a.bili-autoplay-center-message:hover { background:rgba(24,25,28,.82); }

/* 弹窗打开时压住顶部头像层，避免退出确认弹窗被头像菜单遮挡 */
body.modal-open .bili-app-header {
    z-index: 1000 !important;
}

body.modal-open .bili-user-dropdown {
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

body.modal-open #modal_signout {
    z-index: 1500 !important;
}

body.bili-signout-open #modal_signout {
    z-index: 3400 !important;
}

body.bili-signout-open .modal-backdrop {
    z-index: 3300 !important;
}

/* 联系客服前的自定义确认弹窗 */
body.bili-support-notice-open {
    overflow: hidden;
}

.bili-support-notice-modal {
    position: fixed;
    inset: 0;
    z-index: 2147483640 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(24, 25, 28, .38);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .18s ease, visibility .18s ease;
}

.bili-support-notice-modal.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.bili-support-notice-dialog {
    position: relative;
    width: min(420px, 100%);
    max-height: calc(100dvh - 36px);
    overflow-y: auto;
    padding: 20px;
    border: 1px solid rgba(24, 25, 28, .08);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 18px 60px rgba(24, 25, 28, .22);
    transform: translateY(10px) scale(.98);
    transition: transform .18s ease;
    box-sizing: border-box;
}

.bili-support-notice-modal.is-open .bili-support-notice-dialog {
    transform: translateY(0) scale(1);
}

.bili-support-notice-close {
    position: absolute;
    top: 10px;
    right: 10px;
    display: grid;
    width: 28px;
    height: 28px;
    padding: 0;
    place-items: center;
    border: 0;
    border-radius: 50%;
    background: #f4f5f7;
    color: #9499a0;
    font-size: 21px;
    line-height: 1;
    cursor: pointer;
}

.bili-support-notice-dialog h3 {
    margin: 0 32px 12px 0;
    color: #18191c;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
}

.bili-support-notice-content {
    color: #61666d;
    font-size: 13px;
    line-height: 1.75;
    white-space: pre-line;
    word-break: break-word;
}

.bili-support-notice-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 20px;
}

.bili-support-notice-actions button {
    height: 40px;
    padding: 0 14px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}

.bili-support-notice-cancel {
    border: 1px solid #e3e5e7;
    background: #fff;
    color: #61666d;
}

.bili-support-notice-confirm {
    border: 1px solid #fb7299;
    background: #fb7299;
    color: #fff;
}

.bili-support-notice-confirm:hover {
    border-color: #fa5f8c;
    background: #fa5f8c;
}

.bili-support-notice-close:hover {
    background: #e9ebee;
    color: #61666d;
}

@media (max-width: 782px) {
    .bili-support-notice-modal {
        padding: 14px;
    }

    .bili-support-notice-dialog {
        max-height: calc(100dvh - 28px);
        padding: 18px;
        border-radius: 14px;
    }

    .bili-support-notice-content {
        font-size: 12px;
        line-height: 1.7;
    }
}

/* B站表情：输入面板与正文显示 */
.dropdown-smilie {
    width: min(420px, calc(100vw - 24px)) !important;
    height: 360px !important;
    padding: 8px 10px !important;
    text-align: left !important;
}

.bili-emoji-picker {
    display: flex;
    width: 100%;
    height: 100%;
    min-height: 0;
    flex-direction: column;
}

.bili-emoji-tabs {
    display: flex;
    flex: 0 0 auto;
    gap: 6px;
    padding: 0 0 8px;
    overflow-x: auto;
    border-bottom: 1px solid #eef0f2;
    scrollbar-width: none;
}

.bili-emoji-tabs::-webkit-scrollbar,
.bili-emoji-panel::-webkit-scrollbar {
    display: none;
}

.bili-emoji-tab {
    flex: 0 0 auto;
    padding: 5px 10px;
    border: 0;
    border-radius: 999px;
    background: #f4f5f7;
    color: #61666d;
    font-size: 12px;
    line-height: 18px;
    cursor: pointer;
}

.bili-emoji-tab.active {
    background: #fb7299;
    color: #fff;
}

.bili-emoji-panels {
    position: relative;
    flex: 1 1 auto;
    min-height: 0;
}

.bili-emoji-panel {
    display: none;
    height: 100%;
    padding: 8px 2px 2px;
    overflow-y: auto;
    grid-template-columns: repeat(auto-fill, minmax(42px, 1fr));
    align-content: start;
    gap: 4px;
    box-sizing: border-box;
}

.bili-emoji-panel.active {
    display: grid;
}

.dropdown-smilie .bili-emoji-choice {
    display: inline-flex !important;
    width: 42px !important;
    height: 42px !important;
    align-items: center;
    justify-content: center;
    padding: 3px !important;
    border-radius: 8px;
    box-sizing: border-box;
}

.dropdown-smilie .bili-emoji-choice:hover {
    background: #fff0f5;
}

.dropdown-smilie .bili-emoji-choice.is-large {
    width: 56px !important;
    height: 56px !important;
}

.bili-emoji-choice img {
    display: block;
    width: 32px;
    height: 32px;
    object-fit: contain;
}

.bili-emoji-choice.is-large img {
    width: 48px;
    height: 48px;
}

.bili-emoji-small {
    display: inline-block !important;
    width: 30px !important;
    height: auto !important;
    margin: 0 2px;
    vertical-align: -7px;
}

.bili-emoji-large {
    display: inline-block !important;
    width: 76px !important;
    height: auto !important;
    max-width: 100%;
    margin: 3px 4px;
    vertical-align: -12px;
}

/* 文章正文中的表情按正文字号缩放，避免后台插入后显得过大 */
.article-content .bili-emoji-small {
    display: inline-block !important;
    width: 30px !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 2px !important;
    vertical-align: -7px;
}

.article-content .bili-emoji-large {
    width: 48px !important;
    margin: 2px 3px;
    vertical-align: -8px;
}

/* 前台文章编辑器的 B站表情入口 */
.bili-editor-emoji-wrap {
    position: relative;
    display: inline-block;
    margin: 0 6px 6px 0;
}

.bili-editor-emoji-button {
    display: inline-flex !important;
    height: 32px;
    align-items: center;
    gap: 4px;
    padding: 0 10px !important;
    border-color: #e3e5e7 !important;
    border-radius: 6px !important;
    color: #61666d !important;
    font-size: 13px !important;
    line-height: 30px !important;
}

.bili-editor-emoji-button .dashicons {
    width: 17px;
    height: 17px;
    font-size: 17px;
}

.bili-editor-emoji-popover {
    position: absolute;
    left: 0;
    bottom: calc(100% + 8px);
    z-index: 100000;
    display: none;
    width: min(420px, calc(100vw - 40px));
    height: 360px;
    padding: 10px;
    border: 1px solid rgba(24, 25, 28, .1);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 12px 40px rgba(24, 25, 28, .18);
    box-sizing: border-box;
}

.bili-editor-emoji-wrap.open .bili-editor-emoji-popover {
    display: block;
}

@media (max-width: 782px) {
    .dropdown-smilie {
        width: calc(100vw - 18px) !important;
        height: 330px !important;
        padding: 7px 8px !important;
    }

    .bili-emoji-panel {
        grid-template-columns: repeat(auto-fill, minmax(40px, 1fr));
    }

    .bili-emoji-choice.is-large {
        width: 52px !important;
        height: 52px !important;
    }

    .bili-emoji-choice.is-large img {
        width: 44px;
        height: 44px;
    }

    .bili-emoji-large {
        width: 62px !important;
    }

    .article-content .bili-emoji-small {
        display: inline-block !important;
        width: 30px !important;
        max-width: none !important;
        height: auto !important;
        margin: 0 2px !important;
        vertical-align: -7px;
    }

    .article-content .bili-emoji-large {
        width: 42px !important;
        margin: 2px 2px;
        vertical-align: -7px;
    }

    .bili-editor-emoji-popover {
        position: fixed;
        right: 8px;
        bottom: 62px;
        left: 8px;
        width: auto;
        height: min(430px, calc(100dvh - 90px));
    }
}

.dark-theme .bili-editor-emoji-popover {
    border-color: rgba(255, 255, 255, .12);
    background: #1f2023;
}

/* 播放列表定时关闭 */
body.bili-single-bilibili .bili-playlist-sleep-wrap {
    position: relative;
    display: inline-flex;
    flex: 0 0 auto;
}

body.bili-single-bilibili .bili-playlist-timer {
    white-space: nowrap;
}

body.bili-single-bilibili .bili-playlist-timer.is-active {
    border-color: rgba(251, 114, 153, .5) !important;
    background: rgba(251, 114, 153, .08) !important;
    color: #fb7299 !important;
}

body.bili-single-bilibili .bili-playlist-timer-menu {
    position: absolute;
    right: 0;
    bottom: calc(100% + 7px);
    z-index: 1000;
    min-width: 132px;
    padding: 6px;
    border: 1px solid #e3e5e7;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 8px 28px rgba(24, 25, 28, .16);
}

body.bili-single-bilibili .bili-playlist-timer-menu[hidden] {
    display: none !important;
}

body.bili-single-bilibili .bili-playlist-timer-menu button {
    display: block;
    width: 100%;
    height: 32px;
    justify-content: flex-start;
    padding: 0 10px;
    border: 0 !important;
    border-radius: 5px;
    background: transparent !important;
    color: #61666d;
    font-size: 12px;
    text-align: left;
}

body.bili-single-bilibili .bili-playlist-timer-menu button:hover {
    background: #fff0f5 !important;
    color: #fb7299;
}

body.bili-single-bilibili .bili-playlist-timer-menu .is-cancel {
    margin-top: 4px;
    border-top: 1px solid #f1f2f3 !important;
    border-radius: 0 0 5px 5px;
    color: #9499a0;
}

@media (max-width: 782px) {
    body.bili-single-bilibili .bili-playlist-entry {
        flex-wrap: wrap;
    }

    body.bili-single-bilibili .bili-playlist-play-all {
        margin-left: 0 !important;
    }

    body.bili-single-bilibili .bili-playlist-timer span {
        display: inline;
    }
}

/* 播放列表操作栏压缩与定时菜单层级修复 */
body.bili-single-bilibili .bili-playlist-entry {
    overflow: visible;
}

body.bili-single-bilibili .bili-playlist-sleep-wrap {
    z-index: auto;
}

body.bili-single-bilibili .bili-playlist-timer-menu {
    z-index: 2147483001;
}

@media (max-width: 782px) {
    body.bili-single-bilibili .bili-playlist-entry {
        flex-wrap: nowrap !important;
        gap: 5px !important;
        padding: 8px 7px !important;
    }

    body.bili-single-bilibili .bili-playlist-entry button {
        height: 30px;
        gap: 4px;
        padding: 0 8px !important;
        font-size: 12px !important;
        white-space: nowrap;
    }

    body.bili-single-bilibili .bili-playlist-entry button svg {
        width: 14px;
        height: 14px;
    }

    body.bili-single-bilibili .bili-playlist-add svg,
    body.bili-single-bilibili .bili-playlist-play-all svg,
    body.bili-single-bilibili .bili-playlist-timer svg {
        display: none;
    }

    body.bili-single-bilibili .bili-playlist-entry-count {
        width: 30px;
        min-width: 30px;
        padding: 0 !important;
    }

    body.bili-single-bilibili .bili-comments-toggle-inline {
        padding: 0 6px !important;
        gap: 4px;
    }

    body.bili-single-bilibili .bili-comments-toggle-track {
        width: 24px;
        flex-basis: 24px;
    }

    body.bili-single-bilibili .bili-comments-toggle-track i {
        width: 12px;
        height: 12px;
    }

    body.bili-single-bilibili .bili-comments-toggle-inline.is-on .bili-comments-toggle-track i {
        transform: translateX(8px);
    }

    body.bili-single-bilibili .bili-comments-toggle-inline em {
        font-size: 10px;
    }
}
/* 当前私信窗口刷新按钮 */
.bili-private-refresh {
    position: absolute;
    top: 50%;
    right: 38px;
    transform: translateY(-50%);
    z-index: 12;
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: inherit;
    cursor: pointer;
    opacity: .72;
    transition: opacity .18s ease, background-color .18s ease;
}

.bili-private-refresh:hover,
.bili-private-refresh:focus-visible {
    background: rgba(128, 128, 128, .1);
    opacity: 1;
}

.bili-private-refresh svg {
    display: block;
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.bili-private-refresh.is-refreshing svg {
    animation: biliPrivateRefreshSpin .7s linear infinite;
}

@keyframes biliPrivateRefreshSpin {
    to { transform: rotate(360deg); }
}
/* 无封面内页：为固定返回导航预留顶部安全区 */
@media (max-width: 782px) {
    body.bili-single-appbar-ready:not(.bili-single-bilibili):not(.archive):not(.author):not(.bili-user-center-page) {
        padding-top: 52px !important;
    }
}
/* 桌面端隐藏仅用于底部导航的移动端弹层，避免以普通区块铺在页面底部 */
@media (min-width: 783px) {
    .bili-follow-tags-modal,
    .bili-shop-menu-modal,
    .bili-user-menu-modal {
        display: none !important;
    }
}
/* 首页底部按钮：滚动到底部时切换为返回顶部 */
@media (max-width: 782px) {
    .bili-mobile-tabbar .bili-back-to-top-icon {
        display: none;
        width: 22px;
        height: 22px;
        align-items: center;
        justify-content: center;
        color: #fb7299;
    }

    .bili-mobile-tabbar .bili-back-to-top-icon svg {
        display: block;
        width: 24px;
        height: 24px;
        fill: none;
        stroke: none;
    }

    body.zib-bilibili .bili-mobile-tabbar .bili-mobile-menu > li > a.is-back-to-top .bili-mobile-official-icon img {
        display: none !important;
    }

    .bili-mobile-tabbar .bili-mobile-menu > li > a.is-back-to-top .bili-back-to-top-icon {
        display: flex;
    }

    .bili-mobile-tabbar .bili-mobile-menu > li > a.is-back-to-top .bili-mobile-label {
        color: #fb7299;
        font-weight: 600;
    }
}
/* 会员7天内到期提醒 */
.bili-member-expiry-notice {
    position: relative;
    display: grid;
    width: 100%;
    grid-template-columns: 56px minmax(0, 1fr) max-content;
    align-items: center;
    gap: 12px;
    margin: 12px 0 18px;
    padding: 12px 44px 12px 14px;
    border: 1px solid #eef0f2;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 4px 14px rgba(24, 25, 28, .045);
}

.bili-member-expiry-notice.is-video-notice {
    margin: 14px 0 16px;
}

.bili-member-expiry-icon {
    display: grid;
    width: 56px;
    height: 56px;
    place-items: center;
}

.bili-member-expiry-icon img {
    display: block;
    width: 56px;
    height: 56px;
    object-fit: contain;
}

.bili-member-expiry-fallback {
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    border-radius: 50%;
    background: #fb7299;
    color: #fff;
    font-size: 28px;
    font-weight: 700;
}

.bili-member-expiry-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 4px;
}

.bili-member-expiry-copy strong {
    overflow: hidden;
    color: #18191c;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bili-member-expiry-copy small {
    overflow: hidden;
    color: #9499a0;
    font-size: 13px;
    line-height: 1.4;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bili-member-expiry-renew {
    display: inline-flex;
    width: auto;
    min-width: max-content;
    max-width: none;
    height: 40px;
    align-items: center;
    justify-content: center;
    justify-self: end;
    padding: 0 17px;
    white-space: nowrap;
    border-radius: 8px;
    background: #fb7299;
    color: #fff !important;
    font-size: 15px;
    font-weight: 600;
    line-height: 1;
    text-decoration: none !important;
    box-shadow: 0 4px 10px rgba(251, 114, 153, .18);
}

.bili-member-expiry-renew:active {
    transform: scale(.97);
}

.bili-member-expiry-ack {
    appearance: none;
    -webkit-appearance: none;
    margin: 0;
    border: 0;
    font-family: inherit;
    cursor: pointer;
}

.bili-member-expiry-ack:focus-visible {
    outline: 2px solid rgba(251, 114, 153, .35);
    outline-offset: 2px;
}

.bili-member-expiry-actions {
    display: flex;
    align-items: center;
    justify-self: end;
    gap: 6px;
}

.bili-member-expiry-action {
    display: inline-flex;
    width: auto;
    min-width: max-content;
    height: 36px;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    text-decoration: none !important;
    white-space: nowrap;
}

.bili-member-expiry-action.is-register {
    background: #fb7299;
    color: #fff !important;
}

.bili-member-expiry-action.is-login {
    border: 1px solid #ffd0df;
    background: #fff0f5;
    color: #fb7299 !important;
}

.bili-member-expiry-close {
    position: absolute;
    top: 5px;
    right: 5px;
    z-index: 2;
    display: grid;
    width: 26px;
    height: 26px;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #c7cbd0;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
}

.bili-member-expiry-close:hover,
.bili-member-expiry-close:focus-visible {
    background: #f3f4f5;
    color: #61666d;
}

.dark-theme .bili-member-expiry-notice {
    border-color: #34363b;
    background: #292b2f;
    box-shadow: none;
}

.dark-theme .bili-member-expiry-copy strong {
    color: #f1f2f3;
}

.dark-theme .bili-member-expiry-copy small {
    color: #aeb3ba;
}

.dark-theme .bili-member-expiry-close:hover,
.dark-theme .bili-member-expiry-close:focus-visible {
    background: #3a3d42;
    color: #f1f2f3;
}

@media (max-width: 380px) {
    .bili-member-expiry-notice {
        grid-template-columns: 44px minmax(0, 1fr) max-content;
        gap: 8px;
        padding: 9px 36px 9px 9px;
    }

    .bili-member-expiry-icon,
    .bili-member-expiry-icon img {
        width: 44px;
        height: 44px;
    }

    .bili-member-expiry-copy strong {
        font-size: 14px;
    }

    .bili-member-expiry-copy small {
        font-size: 11px;
    }

    .bili-member-expiry-renew {
        grid-column: auto;
        width: auto;
        min-width: max-content;
        height: 34px;
        margin-top: 0;
        padding: 0 9px;
        font-size: 12px;
    }

    .bili-member-expiry-actions {
        gap: 4px;
    }

    .bili-member-expiry-action {
        height: 32px;
        padding: 0 8px;
        font-size: 11px;
    }
}
/* 视频文章桌面端：会员支付弹窗放在播放器下方，不覆盖视频 */
@media (min-width: 783px) {
    body.bili-single-video-post.modal-open #modal_pay_uservip.in {
        align-items: flex-start !important;
        padding-top: var(--bili-video-pay-modal-top, 170px) !important;
    }

    body.bili-single-video-post.modal-open #modal_pay_uservip.in .modal-dialog {
        width: 600px;
        max-width: calc(100vw - 32px);
        max-height: calc(100vh - var(--bili-video-pay-modal-top, 170px) - 18px);
        margin: 0 auto !important;
        overflow-y: auto;
    }
}
/* 手机端所有页面：Bootstrap 支付弹窗始终高于吸顶视频和固定导航 */
@media (max-width: 782px) {
    body.modal-open .modal.in {
        z-index: 3200 !important;
    }

    body.modal-open .modal-backdrop {
        z-index: 3100 !important;
    }

    body.modal-open .bili-video-player-fixed,
    body.modal-open .bili-video-info-bar {
        z-index: 1000 !important;
    }
}
/* 归档页：频道栏和标题按正常顺序排列，避免标题被吸顶频道栏遮住 */
@media (max-width: 782px) {
    body.bili-single-appbar-ready.archive:not(.author):not(.bili-user-center-page) {
        padding-top: 52px !important;
    }

    body.bili-single-appbar-ready.archive:not(.author):not(.bili-user-center-page) .bili-channel-wrap {
        position: relative !important;
        top: auto !important;
    }
}
/* 抖音模式入口 */
body.zib-bilibili .bili-channel-bar a.bili-channel-douyin {
    display: inline-flex;
    height: 30px;
    align-self: center;
    align-items: center;
    gap: 5px;
    padding: 0 11px;
    border-radius: 16px;
    background: #18191c;
    color: #fff !important;
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
}

body.zib-bilibili .bili-channel-bar a.bili-channel-douyin::before {
    display: block;
    color: #25f4ee;
    font-size: 16px;
    font-weight: 800;
    line-height: 1;
    content: "♪";
    text-shadow: 2px 0 0 #fe2c55;
}

body.zib-bilibili .bili-channel-bar a.bili-channel-douyin:hover {
    background: #24262a;
    color: #fff !important;
}

@media (max-width: 782px) {
    body.zib-bilibili .bili-channel-bar a.bili-channel-douyin {
        height: 28px;
        margin-left: 4px;
        padding: 0 10px;
        font-size: 12px;
    }
}



/* 虚拟评论会员身份 */
.bili-virtual-identity {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-left: 5px;
    vertical-align: middle;
    white-space: nowrap;
}

.bili-virtual-vip-icon {
    display: inline-block;
    width: 15px;
    height: 15px;
    object-fit: contain;
    vertical-align: -2px;
}

.bili-virtual-vip {
    display: inline-flex;
    height: 18px;
    align-items: center;
    padding: 0 6px;
    border-radius: 9px;
    background: #fff1f5;
    color: #fb7299;
    font-size: 10px;
    font-weight: 700;
    line-height: 18px;
}

.bili-virtual-vip.is-level-2 {
    background: rgba(251, 114, 153, .14);
}

.bili-virtual-up {
    display: inline-flex;
    height: 16px;
    align-items: center;
    padding: 0 4px;
    border-radius: 4px;
    background: #fb7299;
    color: #fff;
    font-size: 9px;
    font-weight: 800;
    line-height: 16px;
}

.bili-virtual-location {
    color: #9499a0;
    font-size: 11px;
}

body.dark-theme .bili-virtual-location {
    color: #a1a7b2;
}
/* 虚拟评论会员红名与用户等级 */
.bili-virtual-vip-name,
body.zib-bilibili .bili-virtual-vip-name {
    color: #fb7299 !important;
    font-weight: 700;
}

.bili-virtual-level-icon {
    display: inline-block !important;
    width: auto !important;
    height: 16px !important;
    max-width: 42px !important;
    object-fit: contain;
    vertical-align: -2px;
}

.bili-virtual-avatar-badge {
    pointer-events: none;
}
/* B站客户端官方短消息图标 */
.bili-app-msg img {
    display: block;
    width: 22px;
    height: 22px;
    object-fit: contain;
}

.dark-theme .bili-app-msg img {
    filter: brightness(0) invert(1);
    opacity: .84;
}

/* 夜间模式：补齐移动端文章、评论、购买区与自定义弹层 */
body.dark-theme.zib-bilibili .article.main-bg,
body.dark-theme.zib-bilibili .article-header,
body.dark-theme.zib-bilibili .post-actions,
body.dark-theme.zib-bilibili .theme-box.relates,
body.dark-theme.zib-bilibili #comments,
body.dark-theme.zib-bilibili .bili-single-intro-tabs,
body.dark-theme.zib-bilibili .bili-single-intro-tabs.is-fixed,
body.dark-theme.zib-bilibili .pay-box,
body.dark-theme.zib-bilibili .paid-box,
body.dark-theme.zib-bilibili .bili-member-expiry-notice,
body.dark-theme.zib-bilibili .bili-playlist-entry,
body.dark-theme.zib-bilibili .bili-playlist-panel,
body.dark-theme.zib-bilibili .bili-playlist-footer {
    border-color: #34363b !important;
    background: #1f2023 !important;
    color: #e3e5e7 !important;
}

body.dark-theme.zib-bilibili .bili-user-dropdown,
body.dark-theme.zib-bilibili .bili-user-menu-panel,
body.dark-theme.zib-bilibili .bili-shop-menu-panel,
body.dark-theme.zib-bilibili .bili-follow-tags-panel,
body.dark-theme.zib-bilibili .bili-follow-tag-link,
body.dark-theme.zib-bilibili .bili-support-notice-dialog,
body.dark-theme.zib-bilibili .bili-editor-emoji-popover,
body.dark-theme.zib-bilibili .bili-playlist-timer-menu {
    border-color: #34363b !important;
    background: #1f2023 !important;
    color: #e3e5e7 !important;
}

body.dark-theme.zib-bilibili .bili-support-notice-cancel,
body.dark-theme.zib-bilibili .bili-playlist-modes button,
body.dark-theme.zib-bilibili .bili-playlist-search button,
body.dark-theme.zib-bilibili .bili-playlist-search input,
body.dark-theme.zib-bilibili .bili-playlist-item,
body.dark-theme.zib-bilibili .bili-playlist-result {
    border-color: #3b3d42 !important;
    background: #2a2b2f !important;
    color: #e3e5e7 !important;
}

body.dark-theme.zib-bilibili .bili-playlist-search input::placeholder,
body.dark-theme.zib-bilibili .bili-app-search input::placeholder {
    color: #8f949c !important;
}

body.dark-theme.zib-bilibili .bili-single-intro-tabs a,
body.dark-theme.zib-bilibili .bili-single-intro-tabs button {
    color: #c9ccd0;
}

body.dark-theme.zib-bilibili .bili-single-intro-tabs a.active,
body.dark-theme.zib-bilibili .bili-single-intro-tabs button.active {
    color: #f1f2f3;
}
/* 夜间模式文字与吸顶支付区补充 */
body.dark-theme.zib-bilibili .article > #posts-pay,
body.dark-theme.zib-bilibili .article > .pay-box.paid-box {
    background: #1f2023 !important;
}

body.dark-theme.zib-bilibili .article-title,
body.dark-theme.zib-bilibili .article-title a,
body.dark-theme.zib-bilibili .article-avatar .display-name,
body.dark-theme.zib-bilibili .article-content,
body.dark-theme.zib-bilibili .article-content .wp-posts-content,
body.dark-theme.zib-bilibili .article-content p,
body.dark-theme.zib-bilibili .article-content li,
body.dark-theme.zib-bilibili .article-content h1,
body.dark-theme.zib-bilibili .article-content h2,
body.dark-theme.zib-bilibili .article-content h3,
body.dark-theme.zib-bilibili .article-content h4,
body.dark-theme.zib-bilibili .article-content h5,
body.dark-theme.zib-bilibili .article-content h6 {
    color: #f1f2f3 !important;
}

body.dark-theme.zib-bilibili .relates .graphic-text,
body.dark-theme.zib-bilibili .relates .graphic-text.text-ellipsis,
body.dark-theme.zib-bilibili .relates .graphic-text:not(.text-ellipsis) {
    color: #e3e5e7 !important;
}

body.dark-theme.zib-bilibili .relates .graphic-text:not(.text-ellipsis) > .em09 {
    color: #aeb3bb !important;
}

body.dark-theme.zib-bilibili .relates .graphic-text:not(.text-ellipsis) .px12 {
    color: #8f949c !important;
}