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

        .v34-header{position:fixed;top:0;left:0;right:0;height:56px;background:#1b1b1b;z-index:1000;border-bottom:1px solid #2a2a2a;}
        .v34-nav{max-width:1240px;margin:0 auto;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 10px;gap:10px;}
        .v34-logo{font-size:21px;font-weight:900;letter-spacing:-0.5px;flex-shrink:0;}
        .v34-logo a{color:#fff !important;}
        .v34-logo .logo-highlight{background:#ffa200;color:#000;padding:2px 7px;border-radius:2px;font-weight:900;}
        .v34-menu{display:flex;gap:15px;overflow:hidden;flex-shrink:1;}
        .v34-menu a{font-size:13px;color:#aaa;font-weight:bold;white-space:nowrap;}
        .v34-menu a:hover,.v34-menu a.active{color:#ffa200;}
        .v34-search-box{display:flex;align-items:center;background:#2a2a2a;border:1px solid #3a3a3a;border-radius:3px;overflow:hidden;height:32px;flex-shrink:0;}
        .v34-search-input{background:none;border:none;padding:5px 10px;color:#fff;outline:none;font-size:12px;width:150px;transition:width 0.3s;}
        .v34-search-input:focus{width:210px;}
        .v34-search-btn{background:#ffa200;border:none;color:#000;font-weight:900;padding:0 14px;cursor:pointer;height:100%;font-size:13px;letter-spacing:0.5px;}
        .v34-mobile-btn{display:none;background:none;border:none;color:#fff;font-size:20px;cursor:pointer;padding:4px;flex-shrink:0;}
        @media(max-width:900px){
            .v34-menu{display:none;}.v34-mobile-btn{display:block;}
            .v34-menu.show{display:flex;flex-direction:column;position:absolute;top:56px;left:0;right:0;background:#1b1b1b;padding:15px;border-bottom:2px solid #ffa200;gap:12px;z-index:999;}
        }
        @media(max-width:600px){.v34-search-input{width:110px;}.v34-search-input:focus{width:150px;}}
        .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:120px !important;display:block !important;margin:0 !important;}
        .floating-ad img,.floating-ad-esi img{width:100% !important;height:auto !important;border-radius:4px !important;box-shadow:0 3px 12px rgba(255,162,0,0.3) !important;}
        @media(max-width:768px){.floating-ad-container .floating-ad,.floating-ad-container .floating-ad-esi{width:80px !important;}}

        .ad-popup-mask{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.9);z-index:99998;align-items:center;justify-content:center;}
        .ad-popup-card{background:#1b1b1b;border:2px solid #ffa200;border-radius:4px;max-width:480px;width:92%;overflow:hidden;box-shadow:0 0 40px rgba(255,162,0,0.3);}
        .ad-popup-header{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background:rgba(255,162,0,0.08);border-bottom:1px solid #2a2a2a;}
        .ad-popup-title{color:#ffa200;font-weight:900;font-size:13px;}
        .ad-popup-x{cursor:pointer;color:#ffa200;font-size:18px;line-height:1;padding:2px 6px;}
        .ad-popup-body{padding:15px;}
        .ad-popup-content img{max-width:100%;border-radius:3px;}
        .ad-popup-footer{padding:10px 15px 15px;text-align:center;}
        .ad-btn-close{background:#ffa200;color:#000;border:none;border-radius:3px;padding:8px 28px;font-weight:900;cursor:pointer;font-size:13px;}

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

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

/* source: v34_index.php */
/* Pornhub 双栏结构 */
    .v34-layout {
        max-width: 1240px; margin: 0 auto; padding: 15px 15px; display: flex; gap: 20px;
    }
    .v34-sidebar {
        width: 220px; flex-shrink: 0; display: none;
    }
    @media (min-width: 992px) { .v34-sidebar { display: block; } }
    .v34-main-content { flex: 1; min-width: 0; }

    /* 侧栏菜单 */
    .v34-side-menu {
        background: #0f0f0f; border: 1px solid #2a2a2a; border-radius: 4px; padding: 15px;
    }
    .v34-side-menu h3 { font-size: 14px; color: #ffa200; font-weight: bold; margin-bottom: 12px; text-transform: uppercase; }
    .v34-side-menu a { display: block; padding: 8px 10px; color: #ccc; border-radius: 3px; font-weight: bold; font-size: 13px; margin-bottom: 4px; }
    .v34-side-menu a:hover, .v34-side-menu a.active { background: #ffa200; color: #000 !important; }

    /* 主网格 */
    .v34-section-title {
        font-size: 17px; font-weight: bold; color: #ffffff; margin-bottom: 15px;
        display: flex; justify-content: space-between; align-items: center;
        border-bottom: 1px solid #2a2a2a; padding-bottom: 8px;
    }
    .v34-section-title a { font-size: 12px; color: #ffa200; font-weight: normal; }

    .v34-grid {
        display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin-bottom: 30px;
    }
    @media (min-width: 768px) { .v34-grid { grid-template-columns: repeat(3, 1fr); } }
    @media (min-width: 1100px) { .v34-grid { grid-template-columns: repeat(4, 1fr); } }

    /* PH 风格卡片 */
    .v34-card {
        background: #0f0f0f; border-radius: 4px; overflow: hidden;
        border: 1px solid #2a2a2a; transition: border-color 0.2s;
    }
    .v34-card:hover { border-color: #ffa200; }
    .v34-card-img { position: relative; aspect-ratio: 16/10; overflow: hidden; background: #000; }
    .v34-card-img img { width: 100%; height: 100%; object-fit: cover; }
    .v34-card-duration {
        position: absolute; bottom: 5px; right: 5px; background: rgba(0,0,0,0.8);
        color: #fff; font-size: 10px; padding: 2px 4px; border-radius: 2px;
    }
    .v34-card-info { padding: 8px; }
    .v34-card-title {
        font-size: 12.5px; font-weight: bold; color: #e0e0e0; display: block;
        overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin-bottom: 6px;
    }
    .v34-card:hover .v34-card-title { color: #ffa200; }

    /* 经典点赞条模拟 */
    .v34-rating-bar { display: flex; align-items: center; justify-content: space-between; font-size: 10.5px; color: #999; }
    .v34-like-pct { color: #22c55e; font-weight: bold; }
    .v34-bar-bg { flex: 1; height: 3px; background: #444; margin: 0 8px; border-radius: 2px; overflow: hidden; }
    .v34-bar-fill { height: 100%; background: #22c55e; }

/* source: v34_list.php */
/* Pornhub 双栏结构 */
    .v34-layout {
        max-width: 1240px; margin: 0 auto; padding: 15px 15px; display: flex; gap: 20px;
    }
    .v34-sidebar {
        width: 220px; flex-shrink: 0; display: none;
    }
    @media (min-width: 992px) { .v34-sidebar { display: block; } }
    .v34-main-content { flex: 1; min-width: 0; }

    /* 侧栏菜单 */
    .v34-side-menu {
        background: #0f0f0f; border: 1px solid #2a2a2a; border-radius: 4px; padding: 15px;
    }
    .v34-side-menu h3 { font-size: 14px; color: #ffa200; font-weight: bold; margin-bottom: 12px; text-transform: uppercase; }
    .v34-side-menu a { display: block; padding: 8px 10px; color: #ccc; border-radius: 3px; font-weight: bold; font-size: 13px; margin-bottom: 4px; }
    .v34-side-menu a:hover, .v34-side-menu a.active { background: #ffa200; color: #000 !important; }

    .v34-breadcrumb { font-size: 13px; color: #ffffff !important; margin-bottom: 15px; }
    .v34-breadcrumb a { color: #ffffff !important; opacity: 0.8; }
    .v34-breadcrumb a:hover { color: #ffa200 !important; }

    /* 筛选条件样式 */
    .v34-filter-box {
        background: #0f0f0f; border: 1px solid #2a2a2a; border-radius: 4px;
        padding: 12px 15px; margin-bottom: 20px; display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
    }
    .v34-filter-label { color: #ffffff !important; font-weight: bold; font-size: 13.5px; }
    .v34-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;
    }
    .v34-filter-item:hover { color: #ffa200 !important; background: rgba(255, 255, 255, 0.05); opacity: 1; }
    .v34-filter-item.active-filter {
        background: rgba(255, 162, 0, 0.15) !important; border-color: #ffa200 !important;
        color: #ffa200 !important; font-weight: bold; opacity: 1;
    }

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

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

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

    /* Card */
    .v34-card {
        background: #0f0f0f; border-radius: 4px; overflow: hidden;
        border: 1px solid #2a2a2a; transition: border-color 0.2s;
    }
    .v34-card:hover { border-color: #ffa200; }
    .v34-card-img { position: relative; aspect-ratio: 16/10; overflow: hidden; }
    .v34-card-img img { width: 100%; height: 100%; object-fit: cover; }
    .v34-card-duration { position: absolute; bottom: 5px; right: 5px; background: rgba(0,0,0,0.8); color: #fff; font-size: 10px; padding: 2px 4px; border-radius: 2px; }
    .v34-card-info { padding: 8px; }
    .v34-card-title { font-size: 12.5px; font-weight: bold; color: #e0e0e0; display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin-bottom: 6px; }
    
    .v34-rating-bar { display: flex; align-items: center; justify-content: space-between; font-size: 10.5px; color: #999; }
    .v34-like-pct { color: #22c55e; font-weight: bold; }
    .v34-bar-bg { flex: 1; height: 3px; background: #444; margin: 0 8px; border-radius: 2px; overflow: hidden; }
    .v34-bar-fill { height: 100%; background: #22c55e; }

    /* 分页 */
    .v34-pagination { display: flex; justify-content: center; align-items: center; gap: 6px; margin-top: 25px; }
    .v34-pagination a, .v34-pagination span {
        padding: 6px 12px; background: #0f0f0f; border: 1px solid #2a2a2a;
        color: #ffffff; border-radius: 3px; font-size: 12px; transition: 0.2s; text-decoration: none;
    }
    .v34-pagination a:hover { border-color: #ffa200; color: #ffa200; }
    .v34-pagination span.current { background: rgba(255, 162, 0, 0.15); border-color: #ffa200; color: #ffa200; font-weight: bold; }

/* source: v34_play.php */
/* Pornhub 播放页样式 */
    .v34-breadcrumb { font-size: 13.5px; color: #ffffff !important; margin-bottom: 20px; }
    .v34-breadcrumb a { color: #ffffff !important; opacity: 0.85; }
    .v34-breadcrumb a:hover { color: #ffa200 !important; opacity: 1; }

    /* 双栏排版 */
    .v34-play-layout { display: flex; flex-direction: column; gap: 20px; }
    @media (min-width: 992px) { .v34-play-layout { flex-direction: row; } }
    .v34-play-main { flex: 2.2; min-width: 0; }
    .v34-play-side { flex: 0.8; }

    /* DPlayer 防坍塌容器 */
    .v34-player-container {
        position: relative !important; overflow: hidden !important; background: #000 !important;
        width: 100% !important; border-radius: 4px !important; border: 1px solid #ffa200 !important;
        box-shadow: 0 4px 20px rgba(0,0,0,0.8) !important; margin-bottom: 25px;
    }
    #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(0,0,0,0.85);
        color: #ffa200; padding: 5px 12px; border-radius: 3px; font-size: 12px;
        z-index: 1002; border: 1px solid #ffa200;
    }
    #ad-skip {
        position: absolute; bottom: 30px; right: 20px; background: #ffa200; color: #000 !important;
        padding: 6px 18px; border-radius: 3px; font-size: 13px; font-weight: bold; cursor: pointer;
        z-index: 1002; border: 1px solid #000; box-shadow: 0 4px 10px rgba(0,0,0,0.5);
    }

    /* 详情卡片 */
    .v34-side-card {
        background: #0f0f0f; border: 1px solid #2a2a2a; border-radius: 4px;
        padding: 20px; margin-bottom: 20px; box-shadow: 0 4px 10px rgba(0,0,0,0.3);
    }
    .v34-side-info-row { display: flex; gap: 15px; margin-bottom: 20px; }
    .v34-side-info-row img { width: 85px; height: 115px; object-fit: cover; border-radius: 3px; border: 1px solid #333; }
    
    /* 线路按钮 */
    .v34-ep-btn {
        display: inline-block; padding: 7px 14px; background: #1f1f1f; border: 1px solid #333;
        color: #ddd !important; border-radius: 4px; font-size: 12px; margin: 3px; transition: 0.3s;
    }
    .v34-ep-btn:hover { border-color: #ffa200; color: #fff !important; }
    .v34-ep-btn.active-ep { border-color: #ffa200 !important; color: #ffa200 !important; background: rgba(255,162,0,0.1) !important; font-weight: bold; }

    /* 简介 & 评论 */
    .v34-box {
        background: #0f0f0f; border: 1px solid #2a2a2a; border-radius: 4px;
        padding: 20px; margin-bottom: 25px;
    }
    .v34-title-bar {
        font-size: 15px; font-weight: bold; color: #ffffff !important; margin-bottom: 15px;
        border-left: 3px solid #ffa200; padding-left: 8px; text-transform: uppercase;
    }

    /* 评论框样式 */
    .v34-cmt-card { border-bottom: 1px solid #222; padding-bottom: 15px; margin-bottom: 15px; }
    .v34-cmt-card:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }

    /* ===【修复】推荐视频封面图统一尺寸=== */
    .v34-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) {
        .v34-grid {
            grid-template-columns: repeat(4, 1fr) !important;
        }
    }
    @media (min-width: 1024px) {
        .v34-grid {
            grid-template-columns: repeat(5, 1fr) !important;
        }
    }
    .v34-card {
        position: relative !important;
        background: #1a1a1a !important;
        border-radius: 4px !important;
        overflow: hidden !important;
        border: 1px solid #222 !important;
        transition: all 0.2s ease !important;
    }
    .v34-card:hover {
        border-color: #ffa200 !important;
    }
    .v34-card-duration {
        position: absolute !important;
        bottom: 4px !important;
        right: 4px !important;
        background: rgba(0,0,0,0.8) !important;
        color: #ffa200 !important;
        font-size: 10px !important;
        padding: 1px 4px !important;
        border-radius: 2px !important;
        z-index: 10 !important;
    }
    .v34-card-info {
        padding: 8px !important;
    }
    .v34-card-title {
        font-size: 13px !important;
        font-weight: bold !important;
        color: #ccc !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        display: block !important;
    }
    .v34-card:hover .v34-card-title { color: #fff !important; }

    .v34-card-img {
        position: relative !important;
        aspect-ratio: 16 / 9 !important;
        overflow: hidden !important;
        background: #000;
        width: 100%;
    }
    .v34-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: v34_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: v34_footer.php */
.v34-footer{background:#111;color:#555;padding:30px 10px 20px;border-top:1px solid #222;font-size:11.5px;margin-top:20px;}
    .v34-foot-container{max-width:1240px;margin:0 auto;}
    .v34-foot-title{color:#ffa200;font-weight:bold;margin-bottom:12px;font-size:12px;text-transform:uppercase;letter-spacing:0.5px;}
    .v34-foot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:15px;}
    @media(min-width:480px){.v34-foot-grid{grid-template-columns:repeat(4,1fr);}}
    @media(min-width:768px){.v34-foot-grid{grid-template-columns:repeat(6,1fr);}}
    @media(min-width:1024px){.v34-foot-grid{grid-template-columns:repeat(8,1fr);}}
    @media(min-width:1200px){.v34-foot-grid{grid-template-columns:repeat(10,1fr);}}
    .v34-foot-grid a{color:#333;text-decoration:none;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;font-weight:bold;}
    .v34-foot-grid a:hover{color:#ffa200;}
    .v34-foot-info{border-top:1px solid #1a1a1a;padding-top:12px;display:flex;flex-direction:column;gap:8px;align-items:center;text-align:center;}
    .v34-disclaimer{max-width:900px;font-size:10px;color:#2a2a2a;line-height:1.5;}
    .v34-copyright{color:#ffa200;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: #ffa200;
        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: #ffb733;
        transform: translateY(-3px);
    }
    .back-to-top svg {
        width: 22px;
        height: 22px;
    }
.v34-page{max-width:1240px;margin:0 auto;padding:0 10px;box-sizing:border-box;}

.v34-page .v34-layout{max-width:none;width:100%;padding-left:0;padding-right:0;}
