/* source: v33_header.php */
*{box-sizing:border-box;margin:0;padding:0;}
        body{background:#0a1520;color:#94a3b8;font-family:Arial,sans-serif;font-size:13px;line-height:1.4;padding-top:52px;}
        a{color:#94a3b8;text-decoration:none;transition:color 0.2s;}
        a:hover{color:#00bfa5;}
        img{display:block;width:100%;height:auto;}

        .v33-header{position:fixed;top:0;left:0;right:0;height:52px;background:#0d1b2a;z-index:1000;border-bottom:2px solid #00bfa5;}
        .v33-nav{max-width:1240px;margin:0 auto;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 12px;}
        .v33-logo{font-size:20px;font-weight:900;color:#00bfa5 !important;letter-spacing:1px;text-transform:uppercase;flex-shrink:0;}
        .v33-logo span{background:#00bfa5;color:#000;padding:1px 5px;border-radius:2px;}
        .v33-menu{display:flex;gap:12px;overflow:hidden;}
        .v33-menu a{font-size:12.5px;color:#64748b;font-weight:bold;white-space:nowrap;}
        .v33-menu a:hover,.v33-menu a.active{color:#00bfa5;}
        .v33-search-box{display:flex;align-items:center;background:#152030;border:1px solid #1e3040;border-radius:3px;overflow:hidden;height:30px;}
        .v33-search-input{background:none;border:none;padding:4px 8px;color:#fff;outline:none;font-size:12px;width:120px;transition:width 0.3s;}
        .v33-search-input:focus{width:170px;}
        .v33-search-btn{background:#00bfa5;border:none;color:#000;font-weight:bold;padding:0 10px;cursor:pointer;height:100%;font-size:11.5px;}
        .v33-mobile-btn{display:none;background:none;border:none;color:#fff;font-size:18px;cursor:pointer;}
        @media(max-width:768px){
            .v33-menu{display:none;}.v33-search-box{display:none;}.v33-mobile-btn{display:block;}
            .v33-menu.show{display:flex;flex-direction:column;position:absolute;top:52px;left:0;right:0;background:#0d1b2a;padding:12px;border-bottom:2px solid #00bfa5;gap:10px;z-index:999;}
        }
        .thumbnail img,.lazy,.lozad{opacity:1 !important;filter:none !important;backdrop-filter:none !important;}

        .floating-ad-container{position:fixed;top:50%;transform:translateY(-50%);z-index:9999;display:flex;flex-direction:column;gap:10px;}
        .floating-ad-container-left{left:5px;right:auto;}.floating-ad-container-right{right:5px;left:auto;}
        .floating-ad,.floating-ad-esi{position:absolute;opacity:0;pointer-events:none;}
        .floating-ad-container .floating-ad,.floating-ad-container .floating-ad-esi{position:relative !important;opacity:1 !important;pointer-events:auto !important;top:auto !important;left:auto !important;right:auto !important;transform:none !important;width:110px !important;display:block !important;margin:0 !important;}
        .floating-ad img,.floating-ad-esi img{width:100% !important;height:auto !important;border-radius:6px !important;box-shadow:0 3px 10px rgba(0,191,165,0.2) !important;}
        @media(max-width:768px){.floating-ad-container .floating-ad,.floating-ad-container .floating-ad-esi{width:75px !important;}}

        .ad-popup-mask{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.88);z-index:99998;align-items:center;justify-content:center;}
        .ad-popup-card{background:#0d1b2a;border:1px solid #00bfa5;border-radius:5px;max-width:460px;width:92%;overflow:hidden;box-shadow:0 0 30px rgba(0,191,165,0.2);}
        .ad-popup-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:rgba(0,191,165,0.06);border-bottom:1px solid #152030;}
        .ad-popup-title{color:#00bfa5;font-weight:bold;font-size:12.5px;}
        .ad-popup-x{cursor:pointer;color:#00bfa5;font-size:17px;line-height:1;padding:2px 6px;}
        .ad-popup-body{padding:14px;}
        .ad-popup-content img{max-width:100%;border-radius:3px;}
        .ad-popup-footer{padding:10px 14px 14px;text-align:center;}
        .ad-btn-close{background:#00bfa5;color:#000;border:none;border-radius:3px;padding:8px 24px;font-weight:bold;cursor:pointer;}

        #header-ads-container{max-width:1240px;margin:0 auto;padding:0 12px;}

/* source: v33_header.php */
html,body{overflow-x:hidden !important;max-width:100vw;}

/* source: v33_index.php */
/* JavBus 风格轻量卡片无边框 */
    .v33-content { max-width: 1200px; margin: 0 auto; padding: 15px 10px; }
    
    .v33-title {
        font-size: 16px; font-weight: bold; color: #ffffff; margin: 15px 0 10px;
        display: flex; justify-content: space-between; align-items: center;
    }
    .v33-title a { font-size: 11px; color: #00bfa5; font-weight: normal; }

    /* 网格 */
    .v33-grid {
        display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px;
    }
    @media (min-width: 768px) { .v33-grid { grid-template-columns: repeat(4, 1fr); } }

    /* JavBus 卡片：无边框，全圆角，悬停微光 */
    .v33-card {
        background-color: transparent; overflow: hidden; position: relative;
    }
    .v33-card-img {
        position: relative; aspect-ratio: 16/10; overflow: hidden; border-radius: 6px;
        box-shadow: 0 4px 6px rgba(0,0,0,0.3); transition: transform 0.25s, box-shadow 0.25s;
    }
    .v33-card-img img { width: 100%; height: 100%; object-fit: cover; }
    .v33-card:hover .v33-card-img {
        transform: translateY(-4px);
        box-shadow: 0 10px 15px rgba(0, 191, 165, 0.3);
    }
    .v33-card-duration {
        position: absolute; bottom: 5px; right: 5px; background: rgba(0,0,0,0.7);
        color: #fff; font-size: 10px; padding: 2px 5px; border-radius: 3px;
    }
    .v33-card-title-wrap { padding: 6px 0; }
    .v33-card-title {
        font-size: 12.5px; font-weight: bold; color: #e2e8f0; display: block;
        overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    }
    .v33-card:hover .v33-card-title { color: #00bfa5; }

/* source: v33_list.php */
.v33-content { max-width: 1200px; margin: 0 auto; padding: 15px 10px; }

    .v33-breadcrumb { font-size: 13px; color: #ffffff !important; margin-bottom: 15px; }
    .v33-breadcrumb a { color: #00bfa5 !important; }
    .v33-breadcrumb a:hover { color: #ffffff !important; }

    /* 筛选条件样式 */
    .v33-filter-box {
        background: #151718; border: 1px solid #222; border-radius: 6px;
        padding: 12px 15px; margin-bottom: 20px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
    }
    .v33-filter-label { color: #ffffff !important; font-weight: bold; font-size: 13.5px; }
    .v33-filter-item {
        color: #ffffff !important; font-size: 12.5px; text-decoration: none; padding: 5px 12px;
        border-radius: 3px; border: 1px solid transparent; transition: all 0.2s; opacity: 0.85;
    }
    .v33-filter-item:hover { color: #00bfa5 !important; background: rgba(255, 255, 255, 0.05); opacity: 1; }
    .v33-filter-item.active-filter {
        background: rgba(0, 191, 165, 0.15) !important; border-color: #00bfa5 !important;
        color: #00bfa5 !important; font-weight: bold; opacity: 1;
    }

    /* 专题横幅 */
    .v33-topic-header {
        position: relative; border-radius: 6px; overflow: hidden; border: 1px solid #00bfa5;
        padding: 25px; background-size: cover; background-position: center; margin-bottom: 20px;
    }
    .v33-topic-mask {
        position: absolute; top: 0; left: 0; right: 0; bottom: 0;
        background: linear-gradient(180deg, rgba(30,32,34,0.9) 0%, rgba(30,32,34,0.7) 100%);
    }
    .v33-topic-content { position: relative; z-index: 2; max-width: 700px; }

    .v33-title-bar {
        font-size: 14.5px; font-weight: bold; color: #ffffff !important; margin-bottom: 12px;
        border-left: 3px solid #00bfa5; padding-left: 8px; text-transform: uppercase;
    }

    /* 网格 */
    .v33-grid {
        display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px;
    }
    @media (min-width: 768px) { .v33-grid { grid-template-columns: repeat(4, 1fr); } }

    /* JavBus 卡片 */
    .v33-card { background-color: transparent; overflow: hidden; position: relative; }
    .v33-card-img {
        position: relative; aspect-ratio: 16/10; overflow: hidden; border-radius: 6px;
        box-shadow: 0 4px 6px rgba(0,0,0,0.3); transition: transform 0.25s, box-shadow 0.25s;
    }
    .v33-card-img img { width: 100%; height: 100%; object-fit: cover; }
    .v33-card:hover .v33-card-img { transform: translateY(-4px); box-shadow: 0 10px 15px rgba(0, 191, 165, 0.3); }
    .v33-card-duration { position: absolute; bottom: 5px; right: 5px; background: rgba(0,0,0,0.7); color: #fff; font-size: 10px; padding: 2px 5px; border-radius: 3px; }
    .v33-card-title-wrap { padding: 6px 0; }
    .v33-card-title { font-size: 12.5px; font-weight: bold; color: #e2e8f0; display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

    /* 分页 */
    .v33-pagination { display: flex; justify-content: center; align-items: center; gap: 6px; margin-top: 25px; }
    .v33-pagination a, .v33-pagination span {
        padding: 6px 12px; background: #151718; border: 1px solid #222;
        color: #ffffff; border-radius: 3px; font-size: 12px; transition: 0.2s; text-decoration: none;
    }
    .v33-pagination a:hover { border-color: #00bfa5; color: #00bfa5; }
    .v33-pagination span.current { background: rgba(0, 191, 165, 0.15); border-color: #00bfa5; color: #00bfa5; font-weight: bold; }

/* source: v33_play.php */
/* JavBus 播放页样式 */
    .v33-breadcrumb { font-size: 13px; color: #ffffff !important; margin-bottom: 15px; }
    .v33-breadcrumb a { color: #00bfa5 !important; }
    .v33-breadcrumb a:hover { color: #ffffff !important; }

    .v33-play-layout { display: flex; flex-direction: column; gap: 15px; }
    @media (min-width: 992px) { .v33-play-layout { flex-direction: row; } }
    .v33-play-main { flex: 2.1; min-width: 0; }
    .v33-play-side { flex: 0.9; }

    .v33-player-container {
        position: relative !important; overflow: hidden !important; background: #000 !important;
        width: 100% !important; border-radius: 6px !important; border: 1px solid #00bfa5 !important;
        margin-bottom: 20px; box-shadow: 0 4px 15px rgba(0, 191, 165, 0.2) !important;
    }
    #video-player {
        background: #000 !important; width: 100% !important; height: auto !important;
        aspect-ratio: 16/9 !important; display: block !important;
    }

    /* 广告 */
    #player-pre-ad {
        position: absolute; top: 0; left: 0; width: 100%; height: 100%;
        z-index: 1001; background: #000; display: flex; align-items: center; justify-content: center;
    }
    #player-pre-ad img { width: 100%; height: 100%; object-fit: cover; }
    #ad-timer {
        position: absolute; top: 15px; right: 15px; background: rgba(21,23,24,0.9);
        color: #00bfa5; padding: 4px 10px; border-radius: 3px; font-size: 11.5px;
        z-index: 1002; border: 1px solid #00bfa5;
    }
    #ad-skip {
        position: absolute; bottom: 25px; right: 20px; background: #00bfa5; color: #fff !important;
        padding: 5px 15px; border-radius: 2px; font-size: 12px; font-weight: bold; cursor: pointer;
        z-index: 1002; border: 1px solid #151718;
    }

    /* 侧边详情 */
    .v33-side-card {
        background: #151718; border: 1px solid #222; border-radius: 6px;
        padding: 15px; margin-bottom: 15px;
    }
    .v33-side-info-row { display: flex; gap: 12px; margin-bottom: 15px; }
    .v33-side-info-row img { width: 80px; height: 105px; object-fit: cover; border-radius: 4px; border: 1px solid #222; }
    
    .v33-ep-btn {
        display: inline-block; padding: 6px 12px; background: #26292b; border: 1px solid #333;
        color: #e2e8f0 !important; border-radius: 3px; font-size: 11.5px; margin: 2px; transition: 0.2s;
    }
    .v33-ep-btn:hover { border-color: #00bfa5; color: #fff !important; }
    .v33-ep-btn.active-ep { border-color: #00bfa5 !important; color: #00bfa5 !important; background: rgba(0,191,165,0.1) !important; font-weight: bold; }

    .v33-box { background: #151718; border: 1px solid #222; border-radius: 6px; padding: 15px; margin-bottom: 20px; }
    .v33-title-bar {
        font-size: 14.5px; font-weight: bold; color: #ffffff !important; margin-bottom: 12px;
        border-left: 3px solid #00bfa5; padding-left: 8px; text-transform: uppercase;
    }

    .v33-cmt-card { border-bottom: 1px solid #222; padding-bottom: 12px; margin-bottom: 12px; }
    .v33-cmt-card:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }

    /* ===【修复】推荐视频封面图统一尺寸=== */
    .v33-grid {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
        margin-top: 15px !important;
        margin-bottom: 30px !important;
    }
    @media (min-width: 768px) {
        .v33-grid {
            grid-template-columns: repeat(4, 1fr) !important;
        }
    }
    @media (min-width: 1024px) {
        .v33-grid {
            grid-template-columns: repeat(5, 1fr) !important;
        }
    }
    .v33-card {
        position: relative !important;
        background: #0b1c2c !important;
        border-radius: 4px !important;
        overflow: hidden !important;
        border: 1px solid #1a2c3d !important;
        transition: all 0.2s ease !important;
    }
    .v33-card:hover {
        border-color: #00bfa5 !important;
    }
    .v33-card-duration {
        position: absolute !important;
        bottom: 4px !important;
        right: 4px !important;
        background: rgba(0,0,0,0.8) !important;
        color: #00bfa5 !important;
        font-size: 10px !important;
        padding: 1px 4px !important;
        border-radius: 2px !important;
        z-index: 10 !important;
    }
    .v33-card-title-wrap {
        padding: 8px !important;
    }
    .v33-card-title {
        font-size: 13px !important;
        font-weight: bold !important;
        color: #94a3b8 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        display: block !important;
    }
    .v33-card:hover .v33-card-title { color: #fff !important; }

    .v33-card-img {
        position: relative !important;
        aspect-ratio: 16 / 9 !important;
        overflow: hidden !important;
        background: #0a1520;
        width: 100%;
    }
    .v33-card-img img {
        position: absolute !important;
        top: 0 !important; left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center top !important;
        display: block !important;
    }

#video-player { aspect-ratio: 16/9; }
@media (max-width: 768px) {
    /* 播放器本身改为4:3 */
    #video-player { aspect-ratio: 4/3 !important; height: auto !important; }
    /* 所有父容器同步改为4:3，防止absolute定位的播放器溢出遮挡标题 */
    div.player-wrapper,
    div.player-box,
    div.player-container,
    div.video-player-wrap,
    div.portal-player-wrap,
    div.video-container,
    div.embed-responsive,
    div.media-player,
    div.play-box,
    div.play-wrap,
    div.player-inner {
        aspect-ratio: 4/3 !important;
    }
}

/* 旧版手机浏览器 aspect-ratio 兼容 */
/* 确保#video-player有高度（兼容不支持aspect-ratio的旧浏览器）*/
@supports not (aspect-ratio: 16/9) {
    #video-player { position:relative; height:0; padding-bottom:56.25%; min-height:0; }
    #video-player .art-video-player { position:absolute; top:0; left:0; width:100%; height:100%; min-height:0; }
}
@media (max-width: 768px) {
    @supports not (aspect-ratio: 4/3) {
        #video-player { padding-bottom:75%; }
    }
}


/* ===== 核心修复：强制所有播放器父容器不截断控制栏 ===== */
div.player-wrapper,
div.player-box,
div.player-container,
div.video-player-wrap,
div.portal-player-wrap,
div.video-container,
div.embed-responsive,
div.media-player,
div.play-box,
div.play-wrap,
div.player-inner {
    overflow: visible !important;
}

/* source: v33_play.php */
/* 防止手机端页面左右滑动 */
html { overflow-x: hidden !important; max-width: 100vw !important; }
body { overflow-x: hidden !important; }
#video-player { max-width: 100% !important; box-sizing: border-box !important; }
.art-video-player { max-width: 100% !important; overflow-x: hidden !important; }
.art-video-player { overflow: visible !important; }
.art-video-player .art-bottom { position:absolute!important; bottom:0!important; top:auto!important; left:0!important; right:0!important; background:linear-gradient(transparent,rgba(0,0,0,0.8))!important; display:flex!important; flex-direction:column!important; }
.art-video-player .art-bottom .art-progress { order:-1!important; height:8px!important; cursor:pointer!important; }
.art-video-player .art-bottom .art-progress .art-control-progress-played { background:linear-gradient(90deg,#ff4500,#ff8c00)!important; height:8px!important; border-radius:4px!important; }
.art-video-player .art-bottom .art-progress .art-control-progress-inner { height:8px!important; border-radius:4px!important; background:rgba(255,255,255,0.2)!important; }
.art-video-player .art-bottom .art-progress .art-control-progress-indicator { width:14px!important; height:14px!important; top:-3px!important; background:#fff!important; box-shadow:0 0 6px rgba(255,69,0,0.9)!important; }
.art-video-player .art-bottom .art-controls { height:44px!important; }
.art-video-player .art-bottom .art-controls .art-control { color:#fff!important; opacity:1!important; visibility:visible!important; }
.art-video-player .art-bottom .art-controls .art-control svg,.art-video-player .art-bottom .art-controls .art-control svg path { fill:#fff!important; opacity:1!important; }
.art-video-player .art-bottom .art-controls .art-control-time { color:#fff!important; }
.art-video-player .art-mini-progress,.art-video-player .art-progress-mini { display:none!important; height:0!important; opacity:0!important; }
/* 播放按钮绝对居中 PC+手机 */
.art-video-player .art-mask { position:absolute!important; top:0!important; left:0!important; width:100%!important; height:100%!important; display:flex!important; align-items:center!important; justify-content:center!important; }
.art-video-player .art-mask .art-state { position:static!important; top:auto!important; left:auto!important; right:auto!important; bottom:auto!important; transform:none!important; }

/* source: v33_footer.php */
.v33-footer{background:#06111a;color:#334155;padding:35px 12px 25px;border-top:1px solid #0d1b2a;font-size:11.5px;margin-top:25px;}
    .v33-foot-container{max-width:1240px;margin:0 auto;}
    .v33-foot-title{color:#00bfa5;font-weight:bold;margin-bottom:12px;font-size:12px;text-transform:uppercase;letter-spacing:0.5px;}
    .v33-foot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:18px;}
    @media(min-width:480px){.v33-foot-grid{grid-template-columns:repeat(4,1fr);}}
    @media(min-width:768px){.v33-foot-grid{grid-template-columns:repeat(6,1fr);}}
    @media(min-width:1024px){.v33-foot-grid{grid-template-columns:repeat(8,1fr);}}
    .v33-foot-grid a{color:#1e3040;text-decoration:none;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;}
    .v33-foot-grid a:hover{color:#00bfa5;}
    .v33-foot-info{border-top:1px solid #0d1b2a;padding-top:12px;display:flex;flex-direction:column;gap:8px;align-items:center;text-align:center;}
    .v33-disclaimer{max-width:900px;font-size:10px;color:#1e3040;line-height:1.5;}
    .v33-copyright{color:#00bfa5;font-weight:bold;font-size:10.5px;}

    /* 返回顶部按钮 */
    .back-to-top {
        position: fixed;
        bottom: 30px;
        right: 30px;
        width: 45px;
        height: 45px;
        border-radius: 50%;
        background-color: #00bfa5;
        color: #000000;
        border: none;
        outline: none;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 4px 12px rgba(0,0,0,0.5);
        opacity: 0;
        visibility: hidden;
        transition: all 0.3s ease;
        z-index: 9999;
    }
    .back-to-top.show {
        opacity: 1;
        visibility: visible;
    }
    .back-to-top:hover {
        background-color: #00e676;
        transform: translateY(-3px);
    }
    .back-to-top svg {
        width: 22px;
        height: 22px;
    }
