/* ==========================================================================
   PVS HOME MODERN CSS
   Gom các rule chung của trang chủ vào một file để dễ bảo trì.
   Mục tiêu:
   - Slider đầu trang vẫn full width.
   - Tất cả section dưới slider dùng cùng khoảng thở trái/phải.
   - Không bó hẹp .pvs-home-sections bằng max-width.
   - CSS chỉ tác động trong .pvs-home-sections hoặc các block PVS riêng.
   ========================================================================== */

:root{
    --pvs-green:#12c957;
    --pvs-bg:#0b0f17;
    --pvs-panel:#151a27;
    --pvs-text:#ffffff;
    --pvs-muted:rgba(255,255,255,.58);
    --pvs-section-x:clamp(18px,2.2vw,42px);
    --pvs-section-gap:clamp(28px,3.1vw,52px);
    --pvs-radius:16px;
}

/* ==========================================================================
   HOME CONTAINER
   ========================================================================== */

/* Không giới hạn chiều rộng trang chủ nữa để tránh bị thu hẹp trên desktop */
.pvs-home-sections{
    position:relative;
    z-index:2;
    width:100%;
    max-width:100% !important;
    margin-left:auto;
    margin-right:auto;
    box-sizing:border-box;
}

/* Chỉ tạo khoảng thở hai bên cho section dưới slider */
@media (min-width:992px){
    .pvs-home-sections{
        padding-left:var(--pvs-section-x);
        padding-right:var(--pvs-section-x);
    }

    .pvs-home-sections > .Main.Container,
    .pvs-home-sections > .firm-by-category,
    .pvs-home-sections > .pvs-ranking-section,
    .pvs-home-sections > .pvs-interest-links,
    .pvs-home-sections > .pvs-interest-links-section,
    .pvs-home-sections > .pvs-categories-showcase,
    .pvs-home-sections > .pvs-landscape-featured,
    .pvs-home-sections > .pvs-landscape-simple,
    .pvs-home-sections > .pvs-thumb-slider-section,
    .pvs-home-sections > .pvs-hero-collection-section{
        max-width:100%;
        margin-left:0 !important;
        margin-right:0 !important;
        box-sizing:border-box;
    }

    .pvs-home-sections .container,
    .pvs-home-sections > .Main.Container > .container{
        max-width:100% !important;
        width:100% !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box;
    }
}

/* Mobile giữ gọn, không thêm khoảng cách thừa */
@media (max-width:991px){
    .pvs-home-sections{
        padding-left:0 !important;
        padding-right:0 !important;
        padding-top:0 !important;
    }
}

/* Khoảng cách slider đầu trang với section dưới */
@media (min-width:992px){
    #slider{
        margin-bottom:clamp(22px,2.4vh,42px) !important;
    }
}
@media (max-width:991px){
    #slider{
        margin-bottom:14px !important;
    }
}

/* ==========================================================================
   SECTION ISOLATION
   Mỗi section PVS tự quản layout của nó; tránh CSS toàn cục làm tràn khung.
   ========================================================================== */

.pvs-home-sections .pvs-interest-links-section,
.pvs-home-sections .pvs-ranking-section,
.pvs-home-sections .pvs-thumb-slider-section,
.pvs-home-sections .pvs-categories-showcase,
.pvs-home-sections .pvs-landscape-featured,
.pvs-home-sections .pvs-landscape-simple,
.pvs-home-sections .pvs-hero-collection-section{
    isolation:isolate;
    box-sizing:border-box;
}

.pvs-home-sections img{
    max-width:100%;
}

/* Nội dung cuộn ngang không được làm tràn page */
.pvs-home-sections .pvs-ranking-track,
.pvs-home-sections .pvs-thumb-track,
.pvs-home-sections .pvs-categories-scroller,
.pvs-home-sections .pvs-landscape-scroller,
.pvs-home-sections .pvs-simple-scroller{
    max-width:100%;
}

/* ==========================================================================
   SHARED TYPOGRAPHY HELPERS
   ========================================================================== */

.pvs-line-1,
.pvs-home-sections .pvs-ranking-origin,
.pvs-home-sections .pvs-thumb-origin,
.pvs-home-sections .pvs-categories-origin,
.pvs-home-sections .pvs-landscape-origin,
.pvs-home-sections .pvs-simple-origin{
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.pvs-line-2,
.pvs-home-sections .pvs-ranking-name,
.pvs-home-sections .pvs-thumb-name,
.pvs-home-sections .pvs-categories-name,
.pvs-home-sections .pvs-landscape-name,
.pvs-home-sections .pvs-simple-name{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    text-overflow:ellipsis;
}

/* ==========================================================================
   RANKING SHOWCASE DESKTOP SMOOTH PATCH
   Mobile của section này đang ổn nên chỉ tăng mượt desktop.
   ========================================================================== */

@media (min-width:992px){
    .pvs-ranking-section{
        overflow:hidden;
    }

    .pvs-ranking-track{
        scroll-behavior:smooth;
        -webkit-overflow-scrolling:touch;
        scrollbar-width:none;
        will-change:scroll-position;
        transform:translateZ(0);
        backface-visibility:hidden;
        contain:paint;
        overscroll-behavior-x:contain;
    }

    .pvs-ranking-track::-webkit-scrollbar{
        display:none;
    }

    .pvs-ranking-item,
    .pvs-ranking-card,
    .pvs-ranking-thumb-wrap,
    .pvs-ranking-thumb,
    .pvs-ranking-thumb img{
        backface-visibility:hidden;
        transform:translateZ(0);
    }

    .pvs-ranking-thumb img{
        image-rendering:auto;
        filter:none !important;
    }
}

/* ==========================================================================
   HOVER SAFE AREA
   Những section có hover nổi lên cần overflow visible ở wrapper ngoài.
   ========================================================================== */

@media (min-width:992px){
    .pvs-interest-links-section,
    .pvs-interest-links-track,
    .pvs-thumb-slider-section,
    .pvs-ranking-section{
        overflow:visible;
    }
}


/* ========================================================================== 
   PVS SLIDER ARROW + DESKTOP DRAG STABILITY FIX
   - Mũi tên nổi trên viền khung, không bị cắt.
   - Thumb slider kéo chuột trên desktop mượt và vẫn click được.
   - Mobile giữ nguyên native swipe.
   ========================================================================== */
@media (min-width:992px){
    .pvs-thumb-section,
    .pvs-ranking-section,
    .pvs-thumb-section .container,
    .pvs-ranking-section .container,
    .pvs-thumb-wrap,
    .pvs-ranking-wrap{
        overflow:visible !important;
    }

    .pvs-thumb-track,
    .pvs-ranking-track{
        overflow-x:auto !important;
        overflow-y:hidden !important;
        scrollbar-width:none;
        -webkit-overflow-scrolling:touch;
        cursor:grab;
        scroll-behavior:smooth;
        will-change:scroll-position;
        transform:translateZ(0);
        backface-visibility:hidden;
        overscroll-behavior-x:contain;
        user-select:none;
    }

    .pvs-thumb-track::-webkit-scrollbar,
    .pvs-ranking-track::-webkit-scrollbar{
        display:none;
    }

    .pvs-thumb-track.is-dragging,
    .pvs-ranking-track.is-dragging{
        cursor:grabbing !important;
        scroll-behavior:auto !important;
        scroll-snap-type:none !important;
    }

    .pvs-thumb-track.is-dragging a,
    .pvs-ranking-track.is-dragging a{
        cursor:grabbing !important;
    }

    .pvs-thumb-arrow,
    .pvs-ranking-arrow{
        z-index:999 !important;
        opacity:1;
        visibility:visible;
        pointer-events:auto;
        box-shadow:0 12px 32px rgba(0,0,0,.38) !important;
    }

    .pvs-thumb-prev,
    .pvs-ranking-prev{
        left:-18px !important;
    }

    .pvs-thumb-next,
    .pvs-ranking-next{
        right:-18px !important;
    }

    .pvs-thumb-arrow.is-hidden,
    .pvs-ranking-arrow.is-hidden{
        opacity:0 !important;
        visibility:hidden !important;
        pointer-events:none !important;
    }
}

/* ========================================================================== 
   PVS RESPONSIVE REFINEMENT FOR PHONE LANDSCAPE / IPAD PORTRAIT / TV
   - Giữ mobile dọc hiện tại.
   - iPad ngang và desktop giữ layout desktop.
   - iPad dọc + điện thoại ngang không để card/thumb phóng quá to.
   - Màn hình TV: thêm số lượng card hiển thị, không phóng to quá mức.
   ========================================================================== */

/* Điện thoại quay ngang: vẫn dạng mobile, nhưng nhiều cột hơn để card không quá to */
@media (min-width:576px) and (max-width:767.98px) and (orientation: landscape){
    .pvs-interest-track{gap:10px!important;padding-left:8px!important;padding-right:8px!important;}
    .pvs-interest-card{flex:0 0 calc((100vw - 56px)/3)!important;width:calc((100vw - 56px)/3)!important;min-width:calc((100vw - 56px)/3)!important;max-width:calc((100vw - 56px)/3)!important;}
    .pvs-interest-link{min-height:96px!important;padding:14px 16px!important;border-radius:18px!important;}
    .pvs-interest-name{font-size:18px!important;line-height:1.15!important;}
    .pvs-interest-more{margin-top:10px!important;font-size:11px!important;}

    .pvs-ranking-track{gap:10px!important;padding-left:8px!important;padding-right:8px!important;}
    .pvs-ranking-item{flex:0 0 calc((100vw - 58px)/3)!important;width:calc((100vw - 58px)/3)!important;min-width:calc((100vw - 58px)/3)!important;max-width:calc((100vw - 58px)/3)!important;}
    .pvs-ranking-rank{font-size:34px!important;bottom:-8px!important;}
    .pvs-ranking-info{margin-top:14px!important;}
    .pvs-ranking-name{font-size:12px!important;line-height:1.2!important;}
    .pvs-ranking-origin{font-size:10.5px!important;margin-top:2px!important;}

    .pvs-thumb-track{gap:10px!important;padding-left:8px!important;padding-right:8px!important;}
    .pvs-thumb-item{flex:0 0 calc((100vw - 66px)/4)!important;width:calc((100vw - 66px)/4)!important;min-width:calc((100vw - 66px)/4)!important;max-width:calc((100vw - 66px)/4)!important;}
    .pvs-thumb-name{font-size:11.5px!important;line-height:1.22!important;}
    .pvs-thumb-origin{font-size:10.5px!important;margin-top:2px!important;}
}

/* iPad/tablet dọc: không dùng layout mobile 2 cột quá to */
@media (min-width:768px) and (max-width:991.98px) and (orientation: portrait){
    .pvs-interest-section{margin:30px 0 38px!important;}
    .pvs-interest-title{font-size:25px!important;margin-bottom:14px!important;}
    .pvs-interest-track{gap:12px!important;padding-left:10px!important;padding-right:10px!important;}
    .pvs-interest-card{flex:0 0 calc((100vw - 72px)/3)!important;width:calc((100vw - 72px)/3)!important;min-width:calc((100vw - 72px)/3)!important;max-width:calc((100vw - 72px)/3)!important;}
    .pvs-interest-link{min-height:112px!important;padding:18px 20px!important;border-radius:22px!important;}
    .pvs-interest-name{font-size:20px!important;line-height:1.16!important;}
    .pvs-interest-more{margin-top:12px!important;font-size:12px!important;}

    .pvs-ranking-section{margin:28px 0 36px!important;}
    .pvs-ranking-title{font-size:24px!important;}
    .pvs-ranking-track{gap:12px!important;padding-left:10px!important;padding-right:10px!important;}
    .pvs-ranking-item{flex:0 0 calc((100vw - 82px)/3)!important;width:calc((100vw - 82px)/3)!important;min-width:calc((100vw - 82px)/3)!important;max-width:calc((100vw - 82px)/3)!important;}
    .pvs-ranking-thumb-skew,.pvs-ranking-thumb-inner{border-radius:13px!important;}
    .pvs-ranking-rank{font-size:38px!important;bottom:-9px!important;letter-spacing:-2.5px!important;}
    .pvs-ranking-info{margin-top:15px!important;}
    .pvs-ranking-name{font-size:12.5px!important;line-height:1.22!important;}
    .pvs-ranking-origin{font-size:10.8px!important;margin-top:2px!important;}
    .pvs-ranking-meta{margin-top:5px!important;}

    .pvs-thumb-section{margin:30px 0 38px!important;}
    .pvs-thumb-title{font-size:25px!important;}
    .pvs-thumb-track{gap:12px!important;padding-left:10px!important;padding-right:10px!important;}
    .pvs-thumb-item{flex:0 0 calc((100vw - 94px)/4)!important;width:calc((100vw - 94px)/4)!important;min-width:calc((100vw - 94px)/4)!important;max-width:calc((100vw - 94px)/4)!important;}
    .pvs-thumb-poster{border-radius:8px!important;}
    .pvs-thumb-badge{height:18px!important;padding:0 5px!important;font-size:9.5px!important;}
    .pvs-thumb-name{font-size:12px!important;line-height:1.24!important;margin-top:7px!important;}
    .pvs-thumb-origin{font-size:10.8px!important;margin-top:2px!important;}
}

/* TV / màn hình lớn: giữ desktop, tăng số lượng card thay vì phóng card */
@media (min-width:1920px){
    .pvs-home-sections{padding-left:44px!important;padding-right:44px!important;}
    .pvs-thumb-item{flex-basis:180px!important;width:180px!important;min-width:180px!important;max-width:180px!important;}
    .pvs-ranking-item{flex-basis:185px!important;width:185px!important;min-width:185px!important;max-width:185px!important;}
    .pvs-interest-card{flex-basis:235px!important;width:235px!important;min-width:235px!important;max-width:235px!important;}
}



/* ==========================================================================
   PVS HOME CLEAN RESPONSIVE + MEDIA LOADING OVERRIDES
   Áp dụng cho các section dưới slider. Không động slider_recommended.
   ========================================================================== */

/* Ảnh trong các section PVS hiển thị ngay, không chờ hover/lazy class */
.pvs-home-sections .pvs-ranking-img,
.pvs-home-sections .pvs-thumb-img,
.pvs-home-sections .pvs-categories-card img,
.pvs-home-sections .pvs-landscape-card img,
.pvs-home-sections .pvs-hero-collection-section img,
.pvs-home-sections .firm-by-category img{
    opacity:1 !important;
    visibility:visible !important;
    display:block;
    image-rendering:auto;
}

/* Slider/card section dưới slider: không bó khung toàn trang, chỉ giữ khoảng thở đều */
.pvs-home-sections{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box;
}

@media (min-width:992px){
    .pvs-home-sections{
        padding-left:clamp(24px,2.1vw,44px) !important;
        padding-right:clamp(24px,2.1vw,44px) !important;
    }

    .pvs-ranking-section,
    .pvs-thumb-section,
    .pvs-interest-section,
    .pvs-categories-showcase,
    .pvs-landscape-featured{
        max-width:100% !important;
        overflow:visible !important;
    }

    .pvs-ranking-wrap,
    .pvs-thumb-wrap,
    .pvs-interest-wrap{
        overflow:visible !important;
        padding-left:2px;
        padding-right:2px;
    }

    .pvs-ranking-track,
    .pvs-thumb-track,
    .pvs-interest-track{
        overscroll-behavior-x:contain;
        backface-visibility:hidden;
        transform:translate3d(0,0,0);
    }

    .pvs-ranking-arrow,
    .pvs-thumb-arrow{
        z-index:80 !important;
        transform:translateY(-50%) translate3d(0,0,0);
        will-change:opacity,transform;
    }
}

/* Mobile dọc: giữ cảm giác hiện tại nhưng chặn phóng quá mức */
@media (max-width:575.98px){
    .pvs-interest-card{
        flex:0 0 calc((100vw - 44px)/2) !important;
        width:calc((100vw - 44px)/2) !important;
        min-width:calc((100vw - 44px)/2) !important;
        max-width:calc((100vw - 44px)/2) !important;
    }

    .pvs-ranking-item{
        flex:0 0 calc((100vw - 46px)/2) !important;
        width:calc((100vw - 46px)/2) !important;
        min-width:calc((100vw - 46px)/2) !important;
        max-width:calc((100vw - 46px)/2) !important;
    }

    .pvs-thumb-item{
        flex:0 0 calc((100vw - 50px)/3) !important;
        width:calc((100vw - 50px)/3) !important;
        min-width:calc((100vw - 50px)/3) !important;
        max-width:calc((100vw - 50px)/3) !important;
    }
}

/* Điện thoại ngang: vẫn mobile/native scroll, không dùng layout desktop quá sớm */
@media (min-width:576px) and (max-width:767.98px) and (orientation:landscape){
    .pvs-home-sections{padding-left:14px !important;padding-right:14px !important;}

    .pvs-interest-card{
        flex:0 0 calc((100vw - 70px)/3) !important;
        width:calc((100vw - 70px)/3) !important;
        min-width:calc((100vw - 70px)/3) !important;
        max-width:calc((100vw - 70px)/3) !important;
    }
    .pvs-interest-link{min-height:94px !important;padding:14px 16px !important;border-radius:18px !important;}
    .pvs-interest-name{font-size:18px !important;}

    .pvs-ranking-item{
        flex:0 0 calc((100vw - 76px)/3) !important;
        width:calc((100vw - 76px)/3) !important;
        min-width:calc((100vw - 76px)/3) !important;
        max-width:calc((100vw - 76px)/3) !important;
    }
    .pvs-ranking-rank{font-size:34px !important;bottom:-8px !important;}
    .pvs-ranking-name{font-size:12px !important;}
    .pvs-ranking-origin{font-size:10.5px !important;margin-top:2px !important;}

    .pvs-thumb-item{
        flex:0 0 calc((100vw - 84px)/4) !important;
        width:calc((100vw - 84px)/4) !important;
        min-width:calc((100vw - 84px)/4) !important;
        max-width:calc((100vw - 84px)/4) !important;
    }
    .pvs-thumb-name{font-size:11.5px !important;}
    .pvs-thumb-origin{font-size:10.5px !important;margin-top:2px !important;}
}

/* iPad/tablet dọc: dùng layout tablet riêng, không phóng thumb to như desktop */
@media (min-width:768px) and (max-width:991.98px) and (orientation:portrait){
    .pvs-home-sections{padding-left:18px !important;padding-right:18px !important;}

    .pvs-interest-card{
        flex:0 0 calc((100vw - 84px)/3) !important;
        width:calc((100vw - 84px)/3) !important;
        min-width:calc((100vw - 84px)/3) !important;
        max-width:calc((100vw - 84px)/3) !important;
    }
    .pvs-interest-link{min-height:108px !important;padding:16px 18px !important;border-radius:22px !important;}
    .pvs-interest-name{font-size:20px !important;}

    .pvs-ranking-item{
        flex:0 0 calc((100vw - 96px)/3) !important;
        width:calc((100vw - 96px)/3) !important;
        min-width:calc((100vw - 96px)/3) !important;
        max-width:calc((100vw - 96px)/3) !important;
    }
    .pvs-ranking-rank{font-size:38px !important;bottom:-9px !important;}
    .pvs-ranking-name{font-size:12.5px !important;}
    .pvs-ranking-origin{font-size:10.8px !important;margin-top:2px !important;}

    .pvs-thumb-item{
        flex:0 0 calc((100vw - 110px)/4) !important;
        width:calc((100vw - 110px)/4) !important;
        min-width:calc((100vw - 110px)/4) !important;
        max-width:calc((100vw - 110px)/4) !important;
    }
    .pvs-thumb-name{font-size:12px !important;}
    .pvs-thumb-origin{font-size:10.8px !important;margin-top:2px !important;}
}

/* iPad ngang và desktop: giữ desktop, chỉ không để card phóng quá lớn */
@media (min-width:992px) and (max-width:1199.98px){
    .pvs-ranking-item{flex-basis:170px !important;width:170px !important;min-width:170px !important;max-width:170px !important;}
    .pvs-thumb-item{flex-basis:165px !important;width:165px !important;min-width:165px !important;max-width:165px !important;}
    .pvs-interest-card{flex-basis:210px !important;width:210px !important;min-width:210px !important;max-width:210px !important;}
}

/* Desktop lớn / TV: tăng số card hiển thị thay vì phóng card */
@media (min-width:1920px){
    .pvs-home-sections{padding-left:44px !important;padding-right:44px !important;}
    .pvs-ranking-item{flex-basis:185px !important;width:185px !important;min-width:185px !important;max-width:185px !important;}
    .pvs-thumb-item{flex-basis:180px !important;width:180px !important;min-width:180px !important;max-width:180px !important;}
    .pvs-interest-card{flex-basis:235px !important;width:235px !important;min-width:235px !important;max-width:235px !important;}
}

@media (min-width:2560px){
    .pvs-home-sections{padding-left:56px !important;padding-right:56px !important;}
    .pvs-ranking-item{flex-basis:190px !important;width:190px !important;min-width:190px !important;max-width:190px !important;}
    .pvs-thumb-item{flex-basis:185px !important;width:185px !important;min-width:185px !important;max-width:185px !important;}
}

/* Khi đang kéo desktop: tắt hover/transition để tránh giật hình */
.pvs-ranking-track.is-dragging *,
.pvs-thumb-track.is-dragging *,
.pvs-interest-track.is-dragging *{
    transition:none !important;
}

.pvs-ranking-track.is-dragging .pvs-ranking-img,
.pvs-thumb-track.is-dragging .pvs-thumb-img{
    transform:none !important;
    filter:none !important;
}

/* ===== PVS INLINE SECTION CSS EXTRACTED TO HOME-MODERN START ===== */

/* ===== Extracted from interest_links.blade.php (1) ===== */
.pvs-interest-section{position:relative;margin:38px 0 48px;color:#fff;overflow:visible;padding-top:12px}
.pvs-interest-section .container{max-width:100%;position:relative}
.pvs-interest-title{font-size:clamp(24px,1.85vw,34px);font-weight:900;line-height:1.15;margin:0 0 22px;color:#fff;letter-spacing:-.35px;text-shadow:0 2px 12px rgba(0,0,0,.28)}
.pvs-interest-wrap{position:relative;overflow:hidden;width:100%}
.pvs-interest-track{display:flex;gap:clamp(14px,1.15vw,22px);overflow-x:auto;overflow-y:hidden;width:100%;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:pan-x pan-y;padding:0 2px 8px;user-select:none;cursor:grab}
.pvs-interest-track::-webkit-scrollbar{display:none}.pvs-interest-track.is-dragging{cursor:grabbing;scroll-behavior:auto}
.pvs-interest-card{flex:0 0 clamp(190px,12.4vw,245px);width:clamp(190px,12.4vw,245px);min-width:190px;max-width:245px;list-style:none;position:relative}
.pvs-interest-link{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:clamp(132px,8.5vw,160px);padding:22px 26px;border-radius:26px;color:#fff!important;text-decoration:none!important;overflow:hidden;background:linear-gradient(135deg,var(--pvs-interest-color,#3161e8),color-mix(in srgb,var(--pvs-interest-color,#3161e8) 72%,#fff 12%));box-shadow:0 16px 34px rgba(0,0,0,.22);transform:translateY(0);transition:transform .22s ease,filter .22s ease,box-shadow .22s ease}
.pvs-interest-link:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 82%,rgba(255,255,255,.20),rgba(255,255,255,0) 45%),linear-gradient(135deg,rgba(255,255,255,.10),rgba(0,0,0,.10));pointer-events:none}
.pvs-interest-link:hover{transform:translateY(-7px);filter:brightness(1.05);box-shadow:0 22px 44px rgba(0,0,0,.32)}
.pvs-interest-name{position:relative;z-index:2;font-size:clamp(20px,1.35vw,28px);font-weight:900;line-height:1.18;letter-spacing:-.3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;max-width:95%}
.pvs-interest-more{position:relative;z-index:2;margin-top:18px;font-size:14px;font-weight:850;color:rgba(255,255,255,.92);display:inline-flex;align-items:center;gap:8px}.pvs-interest-more i{font-size:16px;line-height:1}
@media (max-width:991px){.pvs-interest-section{margin:28px 0 36px}.pvs-interest-title{font-size:24px;margin-bottom:14px}.pvs-interest-track{gap:10px;padding:0 4px 8px;scroll-snap-type:x mandatory;cursor:auto}.pvs-interest-card{flex:0 0 calc((100vw - 34px)/2);width:calc((100vw - 34px)/2);min-width:calc((100vw - 34px)/2);max-width:calc((100vw - 34px)/2);scroll-snap-align:start}.pvs-interest-link{min-height:118px;border-radius:18px;padding:18px 18px}.pvs-interest-name{font-size:20px;line-height:1.18}.pvs-interest-more{margin-top:14px;font-size:12px}.pvs-interest-link:hover{transform:none;filter:none;box-shadow:0 16px 34px rgba(0,0,0,.22)}}
@media (max-width:360px){.pvs-interest-card{flex-basis:calc((100vw - 30px)/2);width:calc((100vw - 30px)/2);min-width:calc((100vw - 30px)/2);max-width:calc((100vw - 30px)/2)}.pvs-interest-link{min-height:108px;padding:16px}.pvs-interest-name{font-size:18px}}

/* Interest links polish: glass shadow, deeper radius, no hover clipping */
.pvs-interest-section{overflow:visible!important;padding-top:18px!important}
.pvs-interest-wrap{overflow:visible!important;padding-top:18px;padding-bottom:10px}
.pvs-interest-track{overflow-y:visible!important;padding-top:18px;padding-bottom:18px}
.pvs-interest-card{border-radius:34px!important;overflow:visible!important;transition:transform .24s ease,filter .24s ease}
.pvs-interest-link{
    border-radius:34px!important;
    border:1px solid rgba(255,255,255,.20)!important;
    background:
      linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.04)),
      linear-gradient(135deg,var(--pvs-interest-color,#3161e8),color-mix(in srgb,var(--pvs-interest-color,#3161e8) 72%,#050816 24%))!important;
    box-shadow:
      0 22px 55px rgba(0,0,0,.38),
      inset 0 1px 0 rgba(255,255,255,.22),
      inset 0 -18px 36px rgba(0,0,0,.14)!important;
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}
.pvs-interest-link:after{
    content:"";position:absolute;left:14px;right:14px;top:10px;height:1px;
    background:linear-gradient(90deg,rgba(255,255,255,.42),rgba(255,255,255,0));
    pointer-events:none;opacity:.75;
}
.pvs-interest-card:hover{transform:translateY(-6px)!important;filter:brightness(1.04)}
.pvs-interest-card:hover .pvs-interest-link{
    box-shadow:
      0 30px 70px rgba(0,0,0,.50),
      0 10px 24px rgba(0,0,0,.22),
      inset 0 1px 0 rgba(255,255,255,.28),
      inset 0 -20px 38px rgba(0,0,0,.16)!important;
}
@media (max-width:991px){
  .pvs-interest-section{padding-top:12px!important}
  .pvs-interest-wrap{padding-top:8px;padding-bottom:4px}
  .pvs-interest-track{padding-top:8px;padding-bottom:12px}
  .pvs-interest-link{border-radius:22px!important;box-shadow:0 16px 34px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.18)!important}
  .pvs-interest-card{border-radius:22px!important}
  .pvs-interest-card:hover{transform:none!important;filter:none}
}


/* ===== Extracted from ranking_showcase.blade.php (1) ===== */
.pvs-ranking-section{position:relative;margin:34px 0 44px;color:#fff;overflow:hidden}
.pvs-ranking-section .container{position:relative;max-width:100%;overflow:visible}
.pvs-ranking-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px;padding:0 4px}
.pvs-ranking-title{font-size:clamp(24px,1.75vw,32px);line-height:1.12;font-weight:950;letter-spacing:-.5px;margin:0;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.28)}
.pvs-ranking-more{color:rgba(255,255,255,.74);font-size:14px;font-weight:800;text-decoration:none;white-space:nowrap;transition:.22s ease}
.pvs-ranking-more:hover{color:#fff;text-decoration:none;transform:translateX(2px)}
.pvs-ranking-wrap{position:relative;overflow:visible;width:100%;padding-top:6px}
.pvs-ranking-track{display:flex;align-items:flex-start;gap:clamp(14px,1.15vw,20px);overflow-x:auto;overflow-y:hidden;width:100%;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:pan-x pan-y;padding:4px 2px 10px;cursor:grab;user-select:none;overscroll-behavior-x:contain;overscroll-behavior-y:auto;will-change:scroll-position;transform:translateZ(0);backface-visibility:hidden}
.pvs-ranking-track::-webkit-scrollbar{display:none}
.pvs-ranking-track.is-dragging{cursor:grabbing;scroll-behavior:auto!important;scroll-snap-type:none!important}
.pvs-ranking-item{flex:0 0 clamp(154px,11.6vw,205px);width:clamp(154px,11.6vw,205px);min-width:154px;max-width:205px;list-style:none;position:relative}
.pvs-ranking-link{display:block;color:inherit;text-decoration:none;outline:0;cursor:pointer}
.pvs-ranking-link:hover{text-decoration:none;color:inherit}
.pvs-ranking-card,.pvs-ranking-thumb-outer,.pvs-ranking-thumb-skew,.pvs-ranking-thumb-inner,.pvs-ranking-info,.pvs-ranking-name,.pvs-ranking-origin,.pvs-ranking-meta{display:block}
.pvs-ranking-card{position:relative}
.pvs-ranking-thumb-outer{position:relative;width:100%;aspect-ratio:490/654;overflow:visible;filter:drop-shadow(0 10px 18px rgba(0,0,0,.30));transition:transform .24s ease,filter .24s ease}
.pvs-ranking-thumb-skew{position:absolute;inset:0;overflow:hidden;border-radius:15px;background:linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,255,255,.03));box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);clip-path:polygon(8% 0,100% 0,92% 100%,0 100%)}
.pvs-ranking-thumb-inner{position:absolute;inset:0;overflow:hidden;border-radius:15px;clip-path:inherit;transform:none}
.pvs-ranking-img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform .28s ease,filter .28s ease;will-change:transform;transform:none;image-rendering:auto}
.pvs-ranking-thumb-skew:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.52),rgba(0,0,0,0) 50%);pointer-events:none;z-index:3}
.pvs-ranking-link:hover .pvs-ranking-thumb-outer{transform:translateY(-4px) translateZ(0);filter:drop-shadow(0 14px 24px rgba(0,0,0,.38))}
.pvs-ranking-link:hover .pvs-ranking-img{transform:scale(1.035);filter:brightness(1.04)}
.pvs-ranking-track.is-dragging .pvs-ranking-thumb-outer,.pvs-ranking-track.is-dragging .pvs-ranking-img,.pvs-ranking-track.is-dragging .pvs-ranking-link:hover .pvs-ranking-thumb-outer,.pvs-ranking-track.is-dragging .pvs-ranking-link:hover .pvs-ranking-img{transition:none!important;transform:none!important;filter:none!important}
.pvs-ranking-rank{display:block;position:absolute;left:6px;bottom:-12px;z-index:8;font-size:clamp(38px,3vw,56px);line-height:.82;font-weight:1000;letter-spacing:-3px;color:#13d760;text-shadow:0 5px 16px rgba(19,215,96,.25),0 4px 10px rgba(0,0,0,.58);font-family:Arial Black,Impact,Arial,sans-serif;pointer-events:none}
.pvs-ranking-info{margin-top:19px;padding-right:4px}
.pvs-ranking-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;color:#fff;font-size:13px;font-weight:900;line-height:1.24;text-shadow:0 1px 7px rgba(0,0,0,.22)}
.pvs-ranking-origin{margin-top:3px;color:rgba(255,255,255,.50);font-size:11.5px;font-weight:650;line-height:1.18;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pvs-ranking-meta{display:flex;gap:5px;flex-wrap:wrap;align-items:center;margin-top:6px;min-height:19px;overflow:hidden}
.pvs-ranking-badge{display:inline-flex;align-items:center;height:19px;padding:0 6px;border-radius:5px;font-size:9.5px;line-height:1;font-weight:900;color:#fff;background:rgba(105,113,128,.88);white-space:nowrap}
.pvs-ranking-badge.is-green{background:#12bf55;color:#fff}
.pvs-ranking-arrow{position:absolute;top:36%;transform:translateY(-50%);z-index:30;width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.95);color:#101010;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(0,0,0,.28);cursor:pointer;transition:opacity .22s ease,visibility .22s ease,transform .22s ease}
.pvs-ranking-arrow:hover{transform:translateY(-50%) scale(1.06)}
.pvs-ranking-prev{left:2px}.pvs-ranking-next{right:2px}
.pvs-ranking-arrow.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.pvs-ranking-arrow i{font-size:22px;line-height:1}
@media (max-width:991px){
  .pvs-ranking-section{margin:24px 0 30px;overflow:hidden}
  .pvs-ranking-title{font-size:22px;letter-spacing:-.25px}
  .pvs-ranking-more{font-size:13px}
  .pvs-ranking-wrap{padding-top:4px}
  .pvs-ranking-track{gap:10px;padding:3px 6px 8px;scroll-snap-type:x mandatory;cursor:auto;touch-action:pan-x pan-y;scroll-behavior:auto}
  .pvs-ranking-item{flex:0 0 calc((100vw - 44px)/2);width:calc((100vw - 44px)/2);min-width:calc((100vw - 44px)/2);max-width:calc((100vw - 44px)/2);scroll-snap-align:start}
  .pvs-ranking-thumb-skew,.pvs-ranking-thumb-inner{border-radius:12px}
  .pvs-ranking-thumb-skew{clip-path:polygon(8% 0,100% 0,92% 100%,0 100%)}
  .pvs-ranking-thumb-inner{transform:none}
  .pvs-ranking-link:hover .pvs-ranking-thumb-outer{transform:none}
  .pvs-ranking-link:hover .pvs-ranking-img{transform:none;filter:none}
  .pvs-ranking-rank{left:5px;bottom:-9px;font-size:36px;letter-spacing:-2.5px}
  .pvs-ranking-info{margin-top:16px}
  .pvs-ranking-name{font-size:12.5px;line-height:1.22;font-weight:900}
  .pvs-ranking-origin{font-size:10.8px;margin-top:3px;line-height:1.16}
  .pvs-ranking-meta{margin-top:5px;gap:4px;min-height:18px}
  .pvs-ranking-badge{height:18px;padding:0 5px;font-size:9px;border-radius:4px}
  .pvs-ranking-arrow{display:none!important}
}
@media (max-width:360px){
  .pvs-ranking-track{gap:10px;padding-left:5px;padding-right:5px}
  .pvs-ranking-item{flex-basis:calc((100vw - 38px)/2);width:calc((100vw - 38px)/2);min-width:calc((100vw - 38px)/2);max-width:calc((100vw - 38px)/2)}
  .pvs-ranking-name{font-size:11.5px}.pvs-ranking-origin{font-size:10px}.pvs-ranking-rank{font-size:34px}
}


/* ===== Extracted from thumb_slider.blade.php (1) ===== */
.pvs-thumb-section{position:relative;margin:44px 0 54px;color:#fff;overflow:hidden}
.pvs-thumb-section .container{position:relative;max-width:100%;}
.pvs-thumb-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;padding:0 4px}
.pvs-thumb-title{font-size:clamp(28px,2.25vw,40px);line-height:1.12;font-weight:900;letter-spacing:-.7px;margin:0;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.28)}
.pvs-thumb-more{color:rgba(255,255,255,.72);font-size:15px;font-weight:700;text-decoration:none;white-space:nowrap;transition:.22s ease}
.pvs-thumb-more:hover{color:#fff;text-decoration:none;transform:translateX(2px)}
.pvs-thumb-wrap{position:relative;overflow:visible;width:100%}
.pvs-thumb-track{display:flex;gap:clamp(14px,1.4vw,22px);overflow-x:auto;overflow-y:hidden;width:100%;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:pan-x pan-y;padding:0 2px 8px;cursor:grab;user-select:none}
.pvs-thumb-track::-webkit-scrollbar{display:none}.pvs-thumb-track.is-dragging{cursor:grabbing;scroll-behavior:auto}
.pvs-thumb-item{flex:0 0 clamp(145px,11.2vw,205px);width:clamp(145px,11.2vw,205px);min-width:145px;max-width:205px;list-style:none;position:relative}
.pvs-thumb-link{display:block;color:inherit;text-decoration:none;outline:0}.pvs-thumb-link:hover{text-decoration:none;color:inherit}
.pvs-thumb-poster{position:relative;display:block;width:100%;aspect-ratio:490/654;border-radius:8px;overflow:hidden;background:#151515;box-shadow:0 10px 24px rgba(0,0,0,.28)}
.pvs-thumb-img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform .36s ease,filter .36s ease;will-change:transform}
.pvs-thumb-link:hover .pvs-thumb-img{transform:scale(1.065);filter:brightness(1.04)}
.pvs-thumb-poster:after{content:"";position:absolute;left:0;right:0;bottom:0;height:44%;background:linear-gradient(to top,rgba(0,0,0,.72),rgba(0,0,0,0));pointer-events:none}
.pvs-thumb-badges{position:absolute;left:8px;bottom:8px;z-index:4;display:flex;gap:5px;align-items:center;max-width:calc(100% - 16px);overflow:hidden}
.pvs-thumb-badge{display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:4px;font-size:12px;line-height:1;font-weight:900;color:#fff;white-space:nowrap;background:#6b7280}.pvs-thumb-badge.is-green{background:#13bf5a}.pvs-thumb-badge.is-gray{background:#697180}
.pvs-thumb-name{margin-top:10px;color:#fff;font-size:15px;font-weight:800;line-height:1.28;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 6px rgba(0,0,0,.2)}
.pvs-thumb-origin{margin-top:3px;color:rgba(255,255,255,.46);font-size:13px;font-weight:600;line-height:1.2;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pvs-thumb-arrow{position:absolute;top:39%;transform:translateY(-50%);z-index:30;width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:#111;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 28px rgba(0,0,0,.28);cursor:pointer;transition:opacity .22s ease,visibility .22s ease,transform .22s ease}.pvs-thumb-arrow:hover{transform:translateY(-50%) scale(1.06)}.pvs-thumb-prev{left:2px}.pvs-thumb-next{right:2px}.pvs-thumb-arrow.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.pvs-thumb-arrow i{font-size:24px;line-height:1}
@media (max-width:991px){.pvs-thumb-section{margin:28px 0 34px}.pvs-thumb-title{font-size:24px}.pvs-thumb-more{font-size:13px}.pvs-thumb-track{gap:10px;padding:0 4px 6px;scroll-snap-type:x mandatory;cursor:auto}.pvs-thumb-item{flex:0 0 calc((100vw - 30px)/3);width:calc((100vw - 30px)/3);min-width:calc((100vw - 30px)/3);max-width:calc((100vw - 30px)/3);scroll-snap-align:start}.pvs-thumb-poster{border-radius:7px}.pvs-thumb-badges{left:5px;bottom:5px;gap:4px}.pvs-thumb-badge{height:19px;padding:0 6px;font-size:10px;border-radius:3px}.pvs-thumb-name{font-size:12px;line-height:1.28;margin-top:7px}.pvs-thumb-origin{font-size:11px;margin-top:3px}.pvs-thumb-arrow{display:none!important}.pvs-thumb-link:hover .pvs-thumb-img{transform:none;filter:none}}
@media (max-width:360px){.pvs-thumb-track{gap:8px}.pvs-thumb-item{flex-basis:calc((100vw - 26px)/3);width:calc((100vw - 26px)/3);min-width:calc((100vw - 26px)/3);max-width:calc((100vw - 26px)/3)}.pvs-thumb-name{font-size:11px}.pvs-thumb-origin{font-size:10px}}


/* ===== Extracted from categories_showcase.blade.php (1) ===== */
.pvs-categories-showcase{margin:34px 0 48px;position:relative;overflow:hidden}
.pvs-categories-showcase .container{max-width:100%;padding-left:clamp(18px,2.4vw,48px);padding-right:clamp(18px,2.4vw,48px)}
.pvs-categories-box{background:linear-gradient(180deg,#1f2434 0%,#171b28 100%);border:1px solid rgba(255,255,255,.04);border-radius:18px;padding:30px 32px 32px;box-shadow:0 18px 50px rgba(0,0,0,.22);overflow:hidden}
.pvs-categories-row{display:grid;grid-template-columns:190px minmax(0,1fr);gap:26px;align-items:start;margin-bottom:34px}
.pvs-categories-row:last-child{margin-bottom:0}
.pvs-categories-side{padding-top:48px;min-width:0}
.pvs-categories-title{margin:0 0 18px;color:#fff;font-size:clamp(26px,2vw,36px);line-height:1.12;font-weight:900;letter-spacing:-.45px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pvs-categories-title .accent{color:#f391dc}
.pvs-categories-more{display:inline-flex;align-items:center;gap:8px;color:#fff!important;font-size:14px;font-weight:700;text-decoration:none!important;opacity:.96;transition:.22s ease}
.pvs-categories-more i{font-size:14px;transition:.22s ease}.pvs-categories-more:hover{color:#12c957!important}.pvs-categories-more:hover i{transform:translateX(3px)}
.pvs-categories-wrap{position:relative;min-width:0}.pvs-categories-scroller{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:auto;cursor:grab;padding:0 0 8px}.pvs-categories-scroller::-webkit-scrollbar{display:none}.pvs-categories-scroller.is-dragging{cursor:grabbing;scroll-behavior:auto}
.pvs-categories-list{display:flex;flex-wrap:nowrap;gap:clamp(16px,1.2vw,24px);width:max-content;min-width:100%;margin:0;padding:0;list-style:none}.pvs-categories-item{list-style:none;flex:0 0 clamp(210px,17vw,292px);width:clamp(210px,17vw,292px)}
.pvs-categories-card{display:block;color:#fff!important;text-decoration:none!important}.pvs-categories-cover{position:relative;display:block;width:100%;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background:#10131d;box-shadow:0 10px 26px rgba(0,0,0,.18)}
.pvs-categories-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;background:#10131d;transition:transform .28s ease}.pvs-categories-card:hover .pvs-categories-cover img{transform:scale(1.045)}
.pvs-categories-badges{position:absolute;left:12px;bottom:0;z-index:3;display:flex;align-items:center;gap:5px;max-width:calc(100% - 24px);overflow:hidden}.pvs-categories-badge{display:inline-flex;align-items:center;justify-content:center;height:23px;padding:0 8px;border-radius:4px 4px 0 0;background:#566079;color:#fff;font-size:11px;font-weight:800;line-height:1;white-space:nowrap}.pvs-categories-badge.is-green{background:#12c957;color:#fff}.pvs-categories-badge.is-yellow{position:absolute;right:8px;top:8px;background:#ffe595;color:#111;border-radius:4px;height:22px;padding:0 7px;font-size:10.5px}
.pvs-categories-name{margin:13px 0 6px;color:#fff;font-size:16px;font-weight:800;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:22px}.pvs-categories-origin{margin:0;color:rgba(255,255,255,.62);font-size:14px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pvs-categories-nav{position:absolute;top:62px;z-index:8;width:38px;height:38px;border:0;border-radius:50%;background:#fff;color:#111;display:flex;align-items:center;justify-content:center;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.28);transition:.2s ease}.pvs-categories-nav:hover{background:#12c957;color:#fff;transform:scale(1.05)}.pvs-categories-prev{left:-19px}.pvs-categories-next{right:-19px}.pvs-categories-nav.is-hidden{opacity:0;visibility:hidden;pointer-events:none;transform:scale(.92)}
@media (max-width:1199px){.pvs-categories-box{padding:24px}.pvs-categories-row{grid-template-columns:160px minmax(0,1fr);gap:20px}.pvs-categories-side{padding-top:38px}.pvs-categories-item{flex-basis:clamp(200px,24vw,260px);width:clamp(200px,24vw,260px)}}
@media (max-width:767px){
    .pvs-categories-showcase{margin:24px 0 34px;overflow:hidden}.pvs-categories-showcase .container{padding-left:10px!important;padding-right:10px!important;max-width:100%!important}.pvs-categories-box{background:linear-gradient(180deg,#1b2030 0%,#151925 100%);border-radius:14px;padding:16px 0 18px;border-color:rgba(255,255,255,.035);box-shadow:none;overflow:hidden}.pvs-categories-row{display:block;margin-bottom:28px}.pvs-categories-row:last-child{margin-bottom:0}.pvs-categories-side{padding:0 12px 10px;display:flex;align-items:center;justify-content:space-between;gap:10px}.pvs-categories-title{font-size:24px;line-height:1.15;margin:0;max-width:76%;-webkit-line-clamp:2}.pvs-categories-more{font-size:12px;white-space:nowrap;opacity:.85}.pvs-categories-wrap{overflow:hidden}.pvs-categories-scroller{padding:0 10px 2px!important;scroll-snap-type:x proximity;touch-action:auto!important;overscroll-behavior-inline:contain}.pvs-categories-list{gap:12px!important;min-width:100%!important;width:max-content!important;padding:0!important;margin:0!important}.pvs-categories-item{flex:0 0 calc((100vw - 44px)/2)!important;width:calc((100vw - 44px)/2)!important;min-width:145px!important;max-width:210px!important;scroll-snap-align:start}.pvs-categories-cover{aspect-ratio:16/9;border-radius:8px;box-shadow:none}.pvs-categories-card{display:block!important;pointer-events:auto!important}.pvs-categories-card:hover .pvs-categories-cover img{transform:none}.pvs-categories-badges{left:50%;bottom:0;transform:translateX(-50%);justify-content:center;gap:4px;max-width:94%;white-space:nowrap;z-index:6}.pvs-categories-badge{height:20px;padding:0 7px;font-size:10.5px;border-radius:4px 4px 0 0}.pvs-categories-badge.is-yellow{right:6px;top:6px;height:20px;padding:0 6px;font-size:10px;border-radius:4px}.pvs-categories-name{font-size:14px;line-height:1.28;margin:8px 0 2px;text-align:center;min-height:36px!important;height:36px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;text-overflow:ellipsis!important;word-break:break-word}.pvs-categories-origin{display:block;margin:0!important;font-size:12.5px;line-height:1.2;height:15px!important;max-height:15px!important;text-align:center;color:rgba(255,255,255,.58);white-space:nowrap;overflow:hidden!important;text-overflow:ellipsis!important}.pvs-categories-nav{display:none!important}
}
@media (max-width:380px){.pvs-categories-showcase .container{padding-left:8px!important;padding-right:8px!important}.pvs-categories-list{gap:10px!important}.pvs-categories-item{flex-basis:calc((100vw - 36px)/2)!important;width:calc((100vw - 36px)/2)!important;min-width:138px!important}.pvs-categories-title{font-size:22px}.pvs-categories-name{font-size:13px;height:34px!important;min-height:34px!important}.pvs-categories-origin{font-size:12px;height:15px!important}}

/* PVS categories_showcase final fix: desktop drag/click + mobile title spacing */
.pvs-categories-scroller{position:relative;z-index:2;user-select:none;-webkit-user-select:none;}
.pvs-categories-card{position:relative;z-index:3;cursor:pointer;}
.pvs-categories-cover img{-webkit-user-drag:none;user-drag:none;pointer-events:none;}
.pvs-categories-nav{pointer-events:auto;}
.pvs-categories-badges{pointer-events:none;}
.pvs-categories-badge{pointer-events:none;}
@media (max-width:767px){
    .pvs-categories-name{min-height:0!important;height:auto!important;margin:7px 0 1px!important;line-height:1.24!important;}
    .pvs-categories-origin{margin-top:0!important;height:auto!important;max-height:16px!important;line-height:1.18!important;}
    .pvs-categories-card{touch-action:manipulation;}
}
@media (min-width:768px){
    .pvs-categories-scroller.is-dragging{cursor:grabbing;}
    .pvs-categories-scroller.is-dragging .pvs-categories-card{cursor:grabbing;}
}


/* PVS categories_showcase drag+click safe fix */
.pvs-categories-card,.pvs-categories-card *{touch-action:inherit;}
.pvs-categories-scroller{scroll-behavior:smooth;}
.pvs-categories-scroller.is-dragging{scroll-behavior:auto!important;}
@media (max-width:767px){
    .pvs-categories-name{margin:7px 0 1px!important;min-height:0!important;height:auto!important;max-height:36px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;text-overflow:ellipsis!important;}
    .pvs-categories-origin{margin:0!important;padding:0!important;line-height:1.18!important;height:15px!important;max-height:15px!important;display:block!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
}


/* ===== Extracted from landscape_featured.blade.php (1) ===== */
/* PVS Landscape Featured - section riêng, có CSS giữ khung ngay khi tải trang */
.pvs-landscape-featured{margin:26px 0 42px;position:relative;overflow:hidden}
.pvs-landscape-featured .container{max-width:100%}
.pvs-landscape-head{display:flex;align-items:center;gap:12px;margin:0 0 18px}
.pvs-landscape-title{margin:0;color:#fff;font-size:clamp(24px,2.1vw,34px);font-weight:800;line-height:1.2}
.pvs-landscape-more{width:34px;height:34px;min-width:34px;border-radius:50%;border:1px solid rgba(255,255,255,.25);color:#fff;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.03);text-decoration:none;transition:.22s ease;position:relative;z-index:5}
.pvs-landscape-more:hover{background:#12c957;border-color:#12c957;color:#fff;transform:translateX(2px)}
.pvs-landscape-wrap{position:relative;min-height:305px}
.pvs-landscape-scroller{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:0 0 16px;cursor:grab;touch-action:pan-x pan-y;overscroll-behavior-x:contain;user-select:none}
.pvs-landscape-scroller.is-dragging{cursor:grabbing;scroll-behavior:auto}
.pvs-landscape-scroller::-webkit-scrollbar{display:none}
.pvs-landscape-list{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:clamp(18px,1.4vw,28px);width:max-content;min-width:100%;margin:0;padding:0;list-style:none}
.pvs-landscape-item{flex:0 0 clamp(360px,24vw,470px);width:clamp(360px,24vw,470px);list-style:none}
.pvs-landscape-card{display:block;color:#fff!important;text-decoration:none!important;position:relative}
.pvs-landscape-cover{position:relative;display:block;width:100%;aspect-ratio:16/7.15;border-radius:9px;overflow:hidden;background:#151821;box-shadow:0 12px 28px rgba(0,0,0,.22)}
.pvs-landscape-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;background:#151821;-webkit-user-drag:none;user-select:none}
.pvs-landscape-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 26%,rgba(0,0,0,.52) 100%);pointer-events:none}
.pvs-landscape-watch{position:absolute;right:14px;bottom:10px;z-index:4;display:inline-flex;align-items:center;gap:8px;background:#12c957;color:#fff!important;border-radius:999px;padding:9px 14px;font-size:13px;font-weight:800;line-height:1;text-decoration:none!important;box-shadow:0 8px 20px rgba(18,201,87,.28);transition:.22s ease;pointer-events:auto}
.pvs-landscape-watch i{width:22px;height:22px;border-radius:50%;background:#fff;color:#12c957;display:inline-flex;align-items:center;justify-content:center;font-size:10px;line-height:1}
.pvs-landscape-card:hover .pvs-landscape-watch{transform:translateY(-2px);box-shadow:0 12px 26px rgba(18,201,87,.36)}
.pvs-landscape-quality{position:absolute;right:8px;top:8px;z-index:3;background:#ffe9a6;color:#111;border-radius:4px;font-size:11px;font-weight:800;line-height:1;padding:5px 6px}
.pvs-landscape-info{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;margin:0 0 0 22px;transform:translateY(-28px);position:relative;z-index:4;min-height:112px}
.pvs-landscape-thumb{width:76px;height:112px;border-radius:8px;overflow:hidden;background:#151821;box-shadow:0 12px 24px rgba(0,0,0,.35)}
.pvs-landscape-thumb img{width:100%;height:100%;display:block;object-fit:cover;object-position:center center}
.pvs-landscape-meta{padding-top:37px;min-width:0}
.pvs-landscape-name{font-size:16px;font-weight:800;line-height:1.35;color:#fff;margin:0 0 5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pvs-landscape-origin{font-size:13px;color:rgba(255,255,255,.56);line-height:1.35;margin:0 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pvs-landscape-detail{font-size:13px;color:rgba(255,255,255,.68);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pvs-landscape-detail b{color:#fff;font-weight:800}
.pvs-landscape-nav{position:absolute;top:88px;z-index:10;width:44px;height:64px;border:0;border-radius:12px;background:rgba(0,0,0,.38);color:#fff;display:flex;align-items:center;justify-content:center;font-size:34px;line-height:1;cursor:pointer;transition:.2s ease}
.pvs-landscape-nav:hover{background:rgba(18,201,87,.72)}
.pvs-landscape-prev{left:0;transform:translateX(-8px)}
.pvs-landscape-next{right:0;transform:translateX(8px)}
@media (max-width:1199px){
    .pvs-landscape-item{flex-basis:clamp(320px,36vw,430px);width:clamp(320px,36vw,430px)}
    .pvs-landscape-wrap{min-height:286px}
}
@media (max-width:767px){
    .pvs-landscape-featured{margin:22px 0 30px}
    .pvs-landscape-head{margin-bottom:14px}
    .pvs-landscape-title{font-size:24px}
    .pvs-landscape-more{width:32px;height:32px;min-width:32px}
    .pvs-landscape-wrap{min-height:250px}
    .pvs-landscape-list{gap:14px;padding-right:16px}
    .pvs-landscape-item{flex:0 0 82vw;width:82vw;max-width:360px}
    .pvs-landscape-cover{aspect-ratio:16/8.5;border-radius:10px}
    .pvs-landscape-watch{right:10px;bottom:10px;padding:8px 11px;font-size:12px}
    .pvs-landscape-watch i{width:20px;height:20px;font-size:9px}
    .pvs-landscape-info{grid-template-columns:58px minmax(0,1fr);gap:10px;margin-left:12px;transform:translateY(-22px);min-height:88px}
    .pvs-landscape-thumb{width:58px;height:84px;border-radius:7px}
    .pvs-landscape-meta{padding-top:27px}
    .pvs-landscape-name{font-size:14px}
    .pvs-landscape-origin,.pvs-landscape-detail{font-size:12px}
    .pvs-landscape-nav{display:none}
}

/* PVS FIX: landscape_featured mobile 1-column full-width swipe. Desktop unchanged. */
@media (max-width:767px){
    .pvs-landscape-featured{margin:22px 0 32px!important;overflow:hidden!important}
    .pvs-landscape-featured .container{padding-left:10px!important;padding-right:10px!important;max-width:100%!important}
    .pvs-landscape-wrap{min-height:305px!important;overflow:visible!important}
    .pvs-landscape-scroller{overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch!important;scroll-snap-type:x mandatory!important;padding:0 0 12px!important;touch-action:pan-x pan-y!important;overscroll-behavior-x:contain!important;user-select:none!important}
    .pvs-landscape-list{display:flex!important;flex-wrap:nowrap!important;gap:12px!important;width:max-content!important;min-width:0!important;padding:0!important;margin:0!important}
    .pvs-landscape-item{flex:0 0 calc(100vw - 20px)!important;width:calc(100vw - 20px)!important;max-width:none!important;scroll-snap-align:start!important}
    .pvs-landscape-card{width:100%!important;display:block!important}
    .pvs-landscape-cover{width:100%!important;aspect-ratio:16/8.2!important;border-radius:12px!important;overflow:hidden!important;background:#151821!important}
    .pvs-landscape-cover img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important}
    .pvs-landscape-quality{right:8px!important;top:8px!important;font-size:10px!important;padding:4px 6px!important}
    .pvs-landscape-watch{right:10px!important;bottom:10px!important;padding:8px 12px!important;font-size:12px!important;z-index:6!important}
    .pvs-landscape-watch i{width:20px!important;height:20px!important;font-size:9px!important}
    .pvs-landscape-info{grid-template-columns:60px minmax(0,1fr)!important;gap:10px!important;margin-left:12px!important;transform:translateY(-20px)!important;min-height:92px!important;max-width:calc(100% - 18px)!important}
    .pvs-landscape-thumb{width:60px!important;height:88px!important;border-radius:8px!important}
    .pvs-landscape-meta{padding-top:29px!important;min-width:0!important}
    .pvs-landscape-name{font-size:14px!important;line-height:1.28!important;margin-bottom:4px!important;-webkit-line-clamp:2!important}
    .pvs-landscape-origin{font-size:12px!important;line-height:1.25!important;margin-bottom:5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
    .pvs-landscape-detail{font-size:12px!important;line-height:1.25!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
}


/* ===== Extracted from landscape_simple.blade.php (1) ===== */
/* PVS landscape_simple: section ngang giống mẫu, chỉ dùng poster_url, không poster phụ */
.pvs-landscape-simple{margin:28px 0 44px;position:relative;overflow:hidden;max-width:100%}
.pvs-landscape-simple .container{max-width:100%;overflow:hidden}
.pvs-landscape-simple-box{position:relative;background:#1d202b;border-radius:16px;padding:26px 48px 28px;overflow:hidden;max-width:100%;box-shadow:0 18px 46px rgba(0,0,0,.22)}
.pvs-landscape-simple-head{display:flex;align-items:center;gap:12px;margin:0 0 18px}
.pvs-landscape-simple-title{margin:0;color:#fff;font-size:clamp(23px,2vw,32px);font-weight:800;line-height:1.2}
.pvs-landscape-simple-more{width:34px;height:34px;min-width:34px;border-radius:50%;border:1px solid rgba(255,255,255,.28);color:#fff!important;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.03);text-decoration:none!important;transition:.22s ease;position:relative;z-index:8}
.pvs-landscape-simple-more:hover{background:#12c957;border-color:#12c957;color:#fff!important;transform:translateX(2px)}
.pvs-landscape-simple-wrap{position:relative;min-height:220px;max-width:100%;overflow:visible}
.pvs-landscape-simple-scroller{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-behavior:smooth;max-width:100%;touch-action:pan-x;padding-bottom:2px}
.pvs-landscape-simple-scroller::-webkit-scrollbar{display:none}
.pvs-landscape-simple-scroller.is-dragging{cursor:grabbing;scroll-behavior:auto}
.pvs-landscape-simple-scroller.is-dragging a{pointer-events:none}
.pvs-landscape-simple-list{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:clamp(18px,1.7vw,28px);width:max-content;min-width:100%;margin:0;padding:0;list-style:none}
.pvs-landscape-simple-item{flex:0 0 clamp(250px,18.3vw,320px);width:clamp(250px,18.3vw,320px);list-style:none;min-width:0}
.pvs-landscape-simple-card{display:block;width:100%;color:#fff!important;text-decoration:none!important;outline:none}
.pvs-landscape-simple-cover{position:relative;display:block;width:100%;aspect-ratio:16/9;border-radius:7px;overflow:hidden;background:#151821;line-height:0;box-shadow:0 12px 28px rgba(0,0,0,.22)}
.pvs-landscape-simple-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;background:#151821;transition:transform .25s ease}
.pvs-landscape-simple-card:hover .pvs-landscape-simple-cover img{transform:scale(1.035)}
.pvs-landscape-simple-badges{position:absolute;left:12px;bottom:10px;z-index:3;display:flex;align-items:center;gap:6px;max-width:calc(100% - 24px);flex-wrap:wrap}
.pvs-landscape-simple-badge{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:4px;background:#4b5163;color:#fff;font-size:12px;font-weight:800;line-height:1;white-space:nowrap;box-shadow:0 6px 14px rgba(0,0,0,.22)}
.pvs-landscape-simple-badge.is-green{background:#15c967;color:#fff}
.pvs-landscape-simple-badge.is-yellow{position:absolute;right:8px;top:8px;left:auto;bottom:auto;background:#ffe58b;color:#111;height:22px;padding:0 7px;font-size:11px;z-index:4}
.pvs-landscape-simple-name{margin:12px 0 6px;color:#fff;font-size:16px;font-weight:800;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:22px}
.pvs-landscape-simple-origin{margin:0;color:rgba(255,255,255,.62);font-size:14px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pvs-landscape-simple-nav{position:absolute;top:58px;z-index:15;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#111;display:flex;align-items:center;justify-content:center;font-size:30px;line-height:1;cursor:pointer;box-shadow:0 10px 26px rgba(0,0,0,.28);transition:.2s ease}
.pvs-landscape-simple-nav:hover{background:#12c957;color:#fff;transform:scale(1.04)}
.pvs-landscape-simple-prev{left:-21px}
.pvs-landscape-simple-next{right:-21px}
@media (max-width:1199px){
    .pvs-landscape-simple-box{padding-left:28px;padding-right:28px}
    .pvs-landscape-simple-item{flex-basis:clamp(230px,28vw,300px);width:clamp(230px,28vw,300px)}
}
@media (max-width:767px){
    /* Mobile riêng cho landscape_simple: 2 cột gọn như ảnh mẫu, không ảnh hưởng desktop */
    .pvs-landscape-simple{margin:20px 0 30px;overflow:hidden}
    .pvs-landscape-simple .container{padding-left:10px!important;padding-right:10px!important;max-width:100%!important}
    .pvs-landscape-simple-box{border-radius:0;background:transparent;box-shadow:none;padding:0;overflow:visible}
    .pvs-landscape-simple-head{gap:9px;margin:0 0 12px;padding:0 2px}
    .pvs-landscape-simple-title{font-size:24px!important;line-height:1.18;font-weight:850;letter-spacing:-.2px}
    .pvs-landscape-simple-more{width:30px;height:30px;min-width:30px;font-size:14px}
    .pvs-landscape-simple-wrap{min-height:0;overflow:hidden}
    .pvs-landscape-simple-scroller{overflow-x:auto!important;overflow-y:hidden!important;max-width:100%;padding:0 0 2px!important;touch-action:pan-x;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
    .pvs-landscape-simple-list{display:flex!important;flex-wrap:nowrap!important;gap:12px;width:max-content!important;min-width:100%!important;padding:0!important;margin:0!important;align-items:start}
    .pvs-landscape-simple-item{flex:0 0 calc((100vw - 34px)/2)!important;width:calc((100vw - 34px)/2)!important;max-width:205px!important;min-width:145px!important;scroll-snap-align:start}
    .pvs-landscape-simple-cover{aspect-ratio:16/9;border-radius:7px;box-shadow:none;background:#151821}
    .pvs-landscape-simple-cover img{object-fit:cover;object-position:center center;transform:none!important}
    .pvs-landscape-simple-card:hover .pvs-landscape-simple-cover img{transform:none!important}
    .pvs-landscape-simple-badges{left:50%;right:auto;bottom:5px;transform:translateX(-50%);justify-content:center;gap:4px;max-width:94%;flex-wrap:nowrap;white-space:nowrap;z-index:5}
    .pvs-landscape-simple-badge{height:20px;padding:0 7px;border-radius:4px;font-size:10.5px;font-weight:800;box-shadow:0 4px 10px rgba(0,0,0,.22)}
    .pvs-landscape-simple-badge.is-yellow{right:6px;top:6px;height:20px;padding:0 6px;font-size:10px;border-radius:4px}
    .pvs-landscape-simple-name{font-size:14px;line-height:1.28;margin:8px 0 3px;text-align:center;min-height:20px;-webkit-line-clamp:2}
    .pvs-landscape-simple-origin{display:block;margin-top:0;font-size:12.5px;line-height:1.25;text-align:center;color:rgba(255,255,255,.55);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .pvs-landscape-simple-nav{display:none!important}
}
@media (max-width:380px){
    .pvs-landscape-simple .container{padding-left:8px!important;padding-right:8px!important}
    .pvs-landscape-simple-list{gap:10px}
    .pvs-landscape-simple-item{flex-basis:calc((100vw - 28px)/2)!important;width:calc((100vw - 28px)/2)!important;min-width:138px!important}
    .pvs-landscape-simple-title{font-size:22px!important}
    .pvs-landscape-simple-name{font-size:13px;min-height:15px;margin-top:7px}
    .pvs-landscape-simple-origin{font-size:12px}
}


/* ===== Extracted from top10_large.blade.php (1) ===== */
/* TOP 10 - poster riêng: dọc, bo góc, chỉ lớn hơn section thường một chút */
    .pvs-top10-section { margin-top: 18px; margin-bottom: 30px; }
    .pvs-top10-section .container { max-width: 100%; }
    .pvs-top10-wrap { position: relative; overflow: visible; }
    .pvs-top10-header { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:16px; }
    .pvs-top10-title-wrap { display:flex; align-items:center; gap:12px; min-width:0; }
    .pvs-top10-title { font-size:clamp(28px,2.25vw,38px); line-height:1.12; font-weight:900; letter-spacing:-.7px; color:#fff; text-transform:none; text-shadow:0 2px 10px rgba(0,0,0,.25); }
    .pvs-top10-more { width:32px; height:32px; min-width:32px; border-radius:50%; border:1px solid rgba(255,255,255,.28); color:#fff!important; background:rgba(255,255,255,.03); text-decoration:none!important; display:inline-flex; align-items:center; justify-content:center; transition:.22s ease; }
    .pvs-top10-more i { font-size:18px; line-height:1; }
    .pvs-top10-more:hover { color:#fff!important; background:#12b94f; border-color:#12b94f; transform:translateX(2px); box-shadow:0 8px 18px rgba(18,185,79,.22); }
    .pvs-top10-tabs { display:flex; align-items:center; gap:8px; flex-shrink:0; }
    .pvs-top10-tab { border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.06); color:#cfd3d8; font-weight:700; font-size:13px; line-height:1; border-radius:999px; padding:8px 13px; cursor:pointer; transition:.2s ease; }
    .pvs-top10-tab:hover, .pvs-top10-tab.active { background:#12b94f; border-color:#12b94f; color:#fff; }
    .pvs-top10-panel { display:none; }
    .pvs-top10-panel.active { display:block; }

    .pvs-top10-slider-wrapper { overflow: visible !important; }
    .pvs-top10-scroller { scrollbar-width:none; cursor: grab; overflow-x:auto!important; overflow-y:hidden!important; }
    .pvs-top10-scroller::-webkit-scrollbar { display:none; }
    .pvs-top10-list { display:flex!important; flex-wrap:nowrap!important; align-items:flex-start!important; gap:clamp(14px,1.1vw,20px)!important; width:max-content!important; min-width:100%!important; margin:0!important; padding:0!important; list-style:none!important; }

    /* Section Hàn/Trung thường max khoảng 180-200px, Top10 chỉ lớn hơn nhẹ và gọn hơn bản trước */
    .pvs-top10-list .pvs-top10-item {
        display:block!important;
        list-style:none!important;
        flex:0 0 clamp(155px,10.8vw,215px)!important;
        width:clamp(155px,10.8vw,215px)!important;
        min-width:155px!important;
        max-width:215px!important;
        position:relative!important;
        overflow:visible!important;
        transform:none!important;
    }
    .pvs-top10-card, .pvs-top10-content { display:block!important; width:100%!important; max-width:100%!important; text-decoration:none!important; color:inherit!important; transform:none!important; }

    /* Điểm chính: poster dọc 2/3 như ảnh mẫu, không dùng kiểu crop rộng 490/654 */
    .pvs-top10-poster {
        position:relative!important;
        display:block!important;
        width:100%!important;
        aspect-ratio:2/3!important;
        height:auto!important;
        overflow:hidden!important;
        border-radius:16px!important;
        background:#151515!important;
        box-shadow:0 8px 22px rgba(0,0,0,.34)!important;
        line-height:0!important;
        transform:none!important;
        clip-path:none!important;
    }
    .pvs-top10-poster img {
        display:block!important;
        width:100%!important;
        height:100%!important;
        max-width:100%!important;
        aspect-ratio:2/3!important;
        object-fit:cover!important;
        object-position:center center!important;
        border:0!important;
        margin:0!important;
        padding:0!important;
        background:#151515!important;
        transform:none!important;
        transition:transform .22s ease, filter .22s ease!important;
    }
    .pvs-top10-card:hover .pvs-top10-poster img { transform:scale(1.025)!important; filter:brightness(1.04); }

    .pvs-top10-episode { position:absolute; left:50%; bottom:0; top:auto; transform:translateX(-50%); z-index:2; background:#12b94f; color:#fff; border-radius:4px 4px 0 0; padding:4px 8px; font-size:11px; line-height:1; font-weight:800; box-shadow:0 -4px 14px rgba(0,0,0,.2); white-space:nowrap; }
    .pvs-top10-info { display:grid; grid-template-columns:auto minmax(0,1fr); gap:8px; align-items:center; margin-top:10px; }
    .pvs-top10-rank { font-size:clamp(38px,3.4vw,58px); line-height:.82; color:#12b94f; font-weight:900; font-style:italic; letter-spacing:-3px; min-width:48px; text-align:center; }
    .pvs-top10-meta { min-width:0; padding-left:8px; border-left:1px solid rgba(255,255,255,.09); }
    .pvs-top10-name { color:#fff; font-size:15px; line-height:1.25; font-weight:800; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
    .pvs-top10-origin { color:rgba(255,255,255,.30); font-size:12px; line-height:1.25; font-weight:700; margin-top:4px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .pvs-top10-slider-wrapper .pvs-slider-arrow { z-index:20; }

    @media (min-width: 1600px) {
        .pvs-top10-list .pvs-top10-item { flex-basis:215px!important; width:215px!important; min-width:215px!important; max-width:215px!important; }
    }
    @media (max-width: 1399px) {
        .pvs-top10-list .pvs-top10-item { flex-basis:195px!important; width:195px!important; min-width:195px!important; max-width:195px!important; }
    }
    @media (max-width: 991px) {
        .pvs-top10-list .pvs-top10-item { flex-basis:155px!important; width:155px!important; min-width:155px!important; max-width:155px!important; }
    }
    @media (max-width: 575px) {
        .pvs-top10-more { width:28px; height:28px; min-width:28px; }
        .pvs-top10-more i { font-size:16px; }
        .pvs-top10-section { margin-top: 14px; margin-bottom: 22px; }
        .pvs-top10-header { align-items:flex-end; }
        .pvs-top10-title { font-size:24px; }
        .pvs-top10-tab { font-size:12px; padding:7px 10px; }
        .pvs-top10-list .pvs-top10-item { flex-basis:122px!important; width:122px!important; min-width:122px!important; max-width:122px!important; }
        .pvs-top10-poster { border-radius:13px!important; }
        .pvs-top10-rank { font-size:36px; min-width:34px; letter-spacing:-2px; }
        .pvs-top10-name { font-size:13px; }
        .pvs-top10-origin { font-size:11px; }
    }


/* ===== Extracted from sections_movies.blade.php (1) ===== */
/* PVS critical section CSS - chống vỡ layout khi trang đang tải.
   Chỉ áp dụng cho section phim thường trên trang chủ, không động slider đầu trang / Top 10 / Hero Collection. */
.firm-by-category .myui-block-header.pvs-section-header-arrow{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:12px!important;
    margin-bottom:18px!important;
    position:relative!important;
    z-index:80!important;
    pointer-events:auto!important;
}
.firm-by-category .pvs-section-header-arrow .title-category{
    margin:0!important;
    color:#fff!important;
    font-size:clamp(28px,2.25vw,38px)!important;
    line-height:1.12!important;
    font-weight:900!important;
    letter-spacing:-.7px!important;
    text-shadow:0 2px 10px rgba(0,0,0,.25)!important;
}
.firm-by-category .pvs-section-more-arrow{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    border-radius:50%!important;
    border:1px solid rgba(255,255,255,.28)!important;
    color:#fff!important;
    background:rgba(255,255,255,.03)!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-decoration:none!important;
    line-height:1!important;
    transition:.22s ease!important;
    position:relative!important;
    z-index:90!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
    cursor:pointer!important;
    -webkit-tap-highlight-color:rgba(18,185,79,.25)!important;
}
.firm-by-category .pvs-section-more-arrow:before{
    content:"";
    position:absolute;
    inset:-10px;
    border-radius:50%;
}
.firm-by-category .pvs-section-more-arrow i{
    font-size:18px!important;
    line-height:1!important;
    pointer-events:none!important;
}
.firm-by-category .pvs-section-more-arrow:hover{
    color:#fff!important;
    background:#12b94f!important;
    border-color:#12b94f!important;
    transform:translateX(2px);
    box-shadow:0 8px 18px rgba(18,185,79,.22);
}

/* Giữ layout ngang ổn định ngay từ lúc HTML bắt đầu render */
.firm-by-category .pvs-slider-wrapper{
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
}
.firm-by-category .pvs-scroll-slider{
    overflow-x:auto!important;
    overflow-y:hidden!important;
    width:100%!important;
    max-width:100%!important;
    -webkit-overflow-scrolling:touch!important;
}
.firm-by-category .pvs-scroll-list{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:flex-start!important;
    gap:clamp(12px,1.35vw,20px)!important;
    width:max-content!important;
    min-width:100%!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
}

/* Kích thước poster section phim thường: nhỏ gọn, ổn định, không áp dụng Top 10 */
.firm-by-category .pvs-scroll-list > .pvs-movie-card:not(.pvs-top10-item),
.firm-by-category .pvs-scroll-list > .pvs-scroll-item:not(.pvs-top10-item){
    display:block!important;
    list-style:none!important;
    flex:0 0 clamp(154px,calc((100vw - 260px)/8.05),210px)!important;
    width:clamp(154px,calc((100vw - 260px)/8.05),210px)!important;
    min-width:154px!important;
    max-width:210px!important;
    position:relative!important;
    overflow:visible!important;
}
.firm-by-category .pvs-movie-link,
.firm-by-category .pvs-movie-content{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
}
.firm-by-category .pvs-movie-poster{
    position:relative!important;
    display:block!important;
    width:100%!important;
    aspect-ratio:490/654!important;
    height:auto!important;
    overflow:hidden!important;
    border-radius:7px!important;
    background:#151515!important;
    line-height:0!important;
}
.firm-by-category .pvs-poster-img,
.firm-by-category .pvs-poster-ratio{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    aspect-ratio:490/654!important;
    object-fit:cover!important;
    object-position:center center!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:#151515!important;
}
@media (max-width:991px){
    .firm-by-category .pvs-scroll-list > .pvs-movie-card:not(.pvs-top10-item),
    .firm-by-category .pvs-scroll-list > .pvs-scroll-item:not(.pvs-top10-item){
        flex-basis:clamp(128px,22.8vw,164px)!important;
        width:clamp(128px,22.8vw,164px)!important;
        min-width:128px!important;
        max-width:164px!important;
    }
}
@media (max-width:575px){
    .firm-by-category .pvs-scroll-list > .pvs-movie-card:not(.pvs-top10-item),
    .firm-by-category .pvs-scroll-list > .pvs-scroll-item:not(.pvs-top10-item){
        flex-basis:32.5vw!important;
        width:32.5vw!important;
        min-width:110px!important;
        max-width:136px!important;
    }
    .firm-by-category .myui-block-header.pvs-section-header-arrow{
        gap:9px!important;
        margin-bottom:12px!important;
    }
    .firm-by-category .pvs-section-more-arrow{
        width:32px!important;
        height:32px!important;
        min-width:32px!important;
    }
    .firm-by-category .pvs-section-more-arrow i{font-size:16px!important}
}

/* pvs-section-title-bigger-mobile */
@media (max-width:575px){
    .firm-by-category .pvs-section-header-arrow .title-category{
        font-size:24px!important;
        line-height:1.15!important;
        letter-spacing:-.35px!important;
    }
}


/* ===== Extracted from hero_collection.blade.php (1) ===== */
/* Critical CSS: giữ khung hero_collection ngay từ lúc tải trang, tránh vỡ layout trước khi JS/CSS cuối trang chạy */
    .pvs-hero-collection-section { margin:22px 0 42px; overflow-anchor:none; }
    .pvs-hero-collection-section .container { max-width:100%; }
    .pvs-hero-collection-card { position:relative; min-height:560px; height:560px; border-radius:12px; overflow:hidden; background:#10131b; overflow-anchor:none; }
    .pvs-hero-slides { position:relative; min-height:560px; height:560px; overflow:hidden; overflow-anchor:none; }
    .pvs-hero-slide { position:absolute; inset:0; opacity:0; pointer-events:none; }
    .pvs-hero-slide.active { opacity:1; pointer-events:auto; visibility:visible; }
    .pvs-hero-bg { position:absolute; inset:0; background-repeat:no-repeat; background-color:#10131b; background-size:auto 120%; background-position:right 9% center; }
    .pvs-hero-content { position:relative; z-index:2; max-width:650px; padding:72px 56px 160px; }
    .pvs-hero-thumb-wrap { position:absolute; left:300px; right:56px; bottom:0; z-index:5; display:flex; align-items:center; gap:10px; padding:0 0 28px; }
    .pvs-hero-thumbs { display:flex; gap:14px; overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; scrollbar-width:none; padding:10px 3px; flex:1; }
    .pvs-hero-thumbs::-webkit-scrollbar { display:none; }
    .pvs-hero-thumb { flex:0 0 76px; width:76px; height:108px; border-radius:10px; overflow:hidden; padding:0; }
    .pvs-hero-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
    @media (max-width:1199px) {
        .pvs-hero-collection-card, .pvs-hero-slides { min-height:500px; height:500px; }
        .pvs-hero-content { padding:54px 38px 145px; max-width:580px; }
        .pvs-hero-thumb-wrap { left:250px; right:36px; }
        .pvs-hero-thumb { flex-basis:66px; width:66px; height:94px; }
    }
    @media (max-width:767px) {
        .pvs-hero-collection-section { margin:18px 0 30px; }
        .pvs-hero-collection-card { min-height:520px; border-radius:16px; }
        .pvs-hero-slides { min-height:520px; }
        .pvs-hero-bg { background-size:auto 74%; background-position:right 50% top 24px; }
        .pvs-hero-content { position:absolute; left:0; right:0; bottom:105px; padding:0 18px; max-width:none; }
        .pvs-hero-thumb-wrap { left:12px; right:12px; bottom:0; padding-bottom:14px; }
        .pvs-hero-thumbs { gap:10px; padding:8px 2px; }
        .pvs-hero-thumb { flex-basis:50px; width:50px; height:72px; border-radius:8px; }
    }


/* ===== Extracted from hero_collection.blade.php (2) ===== */
.pvs-hero-collection-section { margin: 22px 0 42px; }
    .pvs-hero-collection-section .container { max-width: 100%; }
    .pvs-hero-collection-head { display:flex; align-items:center; gap:12px; margin-bottom:18px; }
    .pvs-hero-collection-title { color:#fff; font-size:28px; line-height:1.1; font-weight:800; margin:0; letter-spacing:-.3px; }
    .pvs-hero-collection-more { width:32px; height:32px; border-radius:50%; border:1px solid rgba(255,255,255,.28); color:#fff; display:flex; align-items:center; justify-content:center; text-decoration:none; transition:.2s ease; }
    .pvs-hero-collection-more:hover { color:#fff; background:#12b94f; border-color:#12b94f; }

    .pvs-hero-collection-card { position:relative; min-height:560px; height:560px; border-radius:12px; overflow:hidden; background:#10131b; box-shadow:0 18px 40px rgba(0,0,0,.24); border:1px solid rgba(255,255,255,.06); overflow-anchor:none; contain:layout paint; }
    .pvs-hero-slides { position:relative; min-height:560px; height:560px; overflow:hidden; overflow-anchor:none; }
    .pvs-hero-slide { position:absolute; inset:0; min-height:100%; height:100%; opacity:0; pointer-events:none; transition:opacity .72s ease, visibility .72s ease; visibility:hidden; overflow:hidden; }
    .pvs-hero-slide.active { opacity:1; pointer-events:auto; visibility:visible; }
    .pvs-hero-bg { position:absolute; inset:0; background-size:auto 120%; background-position:right 9% center; background-repeat:no-repeat; background-color:#10131b; transform:scale(1.015); transition:transform 7.2s ease, filter .72s ease; will-change:transform; }

    /* PVS hero_collection autoplay smooth */
    .pvs-hero-slide.active .pvs-hero-bg { transform:scale(1.055); }
    .pvs-hero-slide .pvs-hero-content { opacity:0; transform:translateY(14px); transition:opacity .55s ease .12s, transform .55s ease .12s; }
    .pvs-hero-slide.active .pvs-hero-content { opacity:1; transform:translateY(0); }
    .pvs-hero-autoplay-bar { position:absolute; left:56px; right:56px; bottom:12px; height:3px; border-radius:999px; overflow:hidden; background:rgba(255,255,255,.14); z-index:7; pointer-events:none; }
    .pvs-hero-autoplay-bar span { display:block; height:100%; width:0%; background:linear-gradient(90deg,#15d866,#12b94f); border-radius:999px; }
    .pvs-hero-collection-card.is-autoplaying .pvs-hero-autoplay-bar span { animation:pvsHeroProgress 6s linear forwards; }
    .pvs-hero-collection-card.is-paused .pvs-hero-autoplay-bar span { animation-play-state:paused; }
    @keyframes pvsHeroProgress { from { width:0%; } to { width:100%; } }

    .pvs-hero-bg:before { content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(10,12,16,.98) 0%, rgba(10,12,16,.92) 30%, rgba(10,12,16,.44) 58%, rgba(10,12,16,.06) 86%, rgba(10,12,16,0) 100%); pointer-events:none; }
    .pvs-hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg, rgba(10,12,16,.98) 0%, rgba(10,12,16,.88) 32%, rgba(10,12,16,.32) 62%, rgba(10,12,16,.05) 85%, rgba(10,12,16,0) 100%), linear-gradient(0deg, rgba(10,12,16,.82) 0%, rgba(10,12,16,.32) 34%, rgba(10,12,16,0) 72%); }
    .pvs-hero-content { position:relative; z-index:2; max-width:650px; padding:72px 56px 160px; }
    .pvs-hero-name { margin:0 0 10px; color:#fff; font-weight:900; font-size:clamp(32px,3.4vw,54px); line-height:1.12; letter-spacing:-1.2px; text-shadow:0 3px 18px rgba(0,0,0,.35); }
    .pvs-hero-origin { color:#18d761; font-size:16px; line-height:1.35; font-style:italic; font-weight:700; margin-bottom:14px; }
    .pvs-hero-tags, .pvs-hero-cats { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:14px; }
    .pvs-hero-tag, .pvs-hero-cats span { color:#fff; background:rgba(255,255,255,.11); border:1px solid rgba(255,255,255,.12); border-radius:5px; padding:5px 9px; font-size:12px; line-height:1; font-weight:700; }
    .pvs-hero-rating { background:rgba(246,204,80,.15); border-color:rgba(246,204,80,.65); color:#ffe28a; }
    .pvs-hero-cats span { background:rgba(255,255,255,.08); color:#d9dde3; border-color:transparent; }
    .pvs-hero-desc { color:rgba(255,255,255,.78); font-size:16px; line-height:1.65; max-width:590px; margin:22px 0 28px; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
    .pvs-hero-actions { display:flex; align-items:center; gap:14px; }
    .pvs-hero-play { display:inline-flex; align-items:center; gap:12px; background:#12c956; color:#fff!important; border-radius:999px; padding:13px 24px 13px 16px; font-size:15px; font-weight:900; text-decoration:none!important; box-shadow:0 12px 24px rgba(18,201,86,.22); transition:.2s ease; }
    .pvs-hero-play span { width:32px; height:32px; border-radius:50%; background:#fff; color:#12c956; display:flex; align-items:center; justify-content:center; font-size:13px; }
    .pvs-hero-play:hover { transform:translateY(-2px); filter:brightness(1.05); }
    .pvs-hero-icon { width:46px; height:46px; border-radius:50%; border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.06); color:#fff!important; display:flex; align-items:center; justify-content:center; text-decoration:none!important; transition:.2s ease; }
    .pvs-hero-icon:hover { background:rgba(255,255,255,.14); }

    .pvs-hero-thumb-wrap { position:absolute; left:300px; right:56px; bottom:0; z-index:5; display:flex; align-items:center; gap:10px; padding:0 0 28px; }
    .pvs-hero-thumbs { display:flex; gap:14px; overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; scrollbar-width:none; scroll-behavior:smooth; padding:10px 3px; flex:1; }
    .pvs-hero-thumbs::-webkit-scrollbar { display:none; }
    .pvs-hero-thumb { flex:0 0 76px; width:76px; height:108px; padding:0; border:2px solid transparent; border-radius:10px; overflow:hidden; background:#222; cursor:pointer; opacity:.72; transition:.22s ease; box-shadow:0 8px 20px rgba(0,0,0,.25); }
    .pvs-hero-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
    .pvs-hero-thumb:hover { opacity:1; transform:translateY(-2px); }
    .pvs-hero-thumb.active { opacity:1; border-color:#fff; transform:translateY(-4px); box-shadow:0 10px 24px rgba(0,0,0,.35), 0 0 0 2px rgba(18,201,86,.65); }
    .pvs-hero-nav { flex:0 0 38px; width:38px; height:38px; border-radius:50%; border:1px solid rgba(255,255,255,.18); background:rgba(0,0,0,.28); color:#fff; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:.2s ease; }
    .pvs-hero-nav:hover { background:#12b94f; border-color:#12b94f; }

    @media (max-width: 1199px) {
        .pvs-hero-collection-card, .pvs-hero-slides { min-height:500px; height:500px; }
        .pvs-hero-content { padding:54px 38px 145px; max-width:580px; }
        .pvs-hero-thumb-wrap { left:250px; right:36px; }
        .pvs-hero-thumb { flex-basis:66px; width:66px; height:94px; }
    }

    @media (max-width: 767px) {
        .pvs-hero-collection-section { margin:18px 0 30px; }
        .pvs-hero-collection-title { font-size:24px; }
        .pvs-hero-collection-card { border-radius:16px; min-height:auto; }
        .pvs-hero-slides { min-height:520px; }
        .pvs-hero-bg { inset:0; background-size:auto 74%; background-position:right 50% top 24px; }
        .pvs-hero-overlay { background:linear-gradient(180deg, rgba(17,20,28,.18) 0%, rgba(17,20,28,.74) 42%, rgba(17,20,28,.98) 78%, rgba(17,20,28,1) 100%); }
        .pvs-hero-content { position:absolute; left:0; right:0; bottom:105px; padding:0 18px; max-width:none; }
        .pvs-hero-name { font-size:28px; line-height:1.15; margin-bottom:8px; }
        .pvs-hero-origin { font-size:13px; margin-bottom:10px; }
        .pvs-hero-tags, .pvs-hero-cats { gap:6px; margin-bottom:8px; }
        .pvs-hero-tag, .pvs-hero-cats span { font-size:11px; padding:5px 7px; }
        .pvs-hero-desc { font-size:13px; line-height:1.5; margin:12px 0 16px; -webkit-line-clamp:2; }
        .pvs-hero-play { padding:10px 17px 10px 12px; font-size:13px; }
        .pvs-hero-play span { width:28px; height:28px; }
        .pvs-hero-icon { width:40px; height:40px; }
        .pvs-hero-thumb-wrap { left:12px; right:12px; bottom:0; padding-bottom:14px; }
        .pvs-hero-nav { display:none; }
        .pvs-hero-thumbs { gap:10px; padding:8px 2px; }
        .pvs-hero-thumb { flex-basis:50px; width:50px; height:72px; border-radius:8px; }
    }


    /* PVS FIX: mobile hero_collection card lớn hơn, vừa khung và hỗ trợ vuốt */
    @media (max-width: 767px) {
        .pvs-hero-collection-section {
            margin: 18px 0 30px !important;
            padding: 0 10px !important;
        }
        .pvs-hero-collection-section .container {
            width: 100% !important;
            max-width: 100% !important;
            padding-left: 0 !important;
            padding-right: 0 !important;
        }
        .pvs-hero-collection-head {
            margin-bottom: 10px !important;
        }
        .pvs-hero-collection-title {
            font-size: 24px !important;
            line-height: 1.15 !important;
        }
        .pvs-hero-collection-card {
            width: 100% !important;
            max-width: 430px !important;
            min-height: 470px !important;
            height: 470px !important;
            margin: 0 auto !important;
            border-radius: 15px !important;
            overflow: hidden !important;
            background: #11151d !important;
            box-shadow: 0 14px 34px rgba(0,0,0,.34) !important;
            touch-action: pan-y !important;
        }
        .pvs-hero-slides {
            min-height: 470px !important;
            height: 470px !important;
            overflow: hidden !important;
        }
        .pvs-hero-slide {
            min-height: 470px !important;
            height: 470px !important;
            background: #11151d !important;
        }
        .pvs-hero-bg {
            top: 0 !important;
            left: 0 !important;
            right: 0 !important;
            bottom: auto !important;
            height: 178px !important;
            background-size: cover !important;
            background-position: center top !important;
            background-repeat: no-repeat !important;
            transform: none !important;
        }
        .pvs-hero-bg:before {
            background: linear-gradient(180deg, rgba(17,21,29,0) 0%, rgba(17,21,29,.22) 55%, #11151d 100%) !important;
        }
        .pvs-hero-overlay {
            top: 0 !important;
            left: 0 !important;
            right: 0 !important;
            bottom: auto !important;
            height: 215px !important;
            background: linear-gradient(180deg, rgba(17,21,29,0) 0%, rgba(17,21,29,.28) 54%, #11151d 100%) !important;
            pointer-events: none !important;
        }
        .pvs-hero-content {
            position: absolute !important;
            top: 150px !important;
            left: 0 !important;
            right: 0 !important;
            bottom: auto !important;
            max-width: none !important;
            padding: 0 15px 46px !important;
            z-index: 3 !important;
        }
        .pvs-hero-name {
            font-size: 20px !important;
            line-height: 1.22 !important;
            margin: 0 0 6px !important;
            letter-spacing: -.2px !important;
            display: -webkit-box !important;
            -webkit-line-clamp: 2 !important;
            -webkit-box-orient: vertical !important;
            overflow: hidden !important;
        }
        .pvs-hero-origin {
            font-size: 12px !important;
            line-height: 1.3 !important;
            margin-bottom: 8px !important;
            color: #18d761 !important;
            display: -webkit-box !important;
            -webkit-line-clamp: 1 !important;
            -webkit-box-orient: vertical !important;
            overflow: hidden !important;
        }
        .pvs-hero-tags,
        .pvs-hero-cats {
            gap: 5px !important;
            margin-bottom: 8px !important;
        }
        .pvs-hero-tag,
        .pvs-hero-cats span {
            font-size: 10px !important;
            line-height: 1 !important;
            padding: 4px 7px !important;
            border-radius: 4px !important;
        }
        .pvs-hero-desc {
            font-size: 12px !important;
            line-height: 1.48 !important;
            margin: 8px 0 0 !important;
            color: rgba(255,255,255,.76) !important;
            display: -webkit-box !important;
            -webkit-line-clamp: 3 !important;
            -webkit-box-orient: vertical !important;
            overflow: hidden !important;
        }
        .pvs-hero-actions { display: none !important; }
        .pvs-hero-thumb-wrap {
            left: 0 !important;
            right: 0 !important;
            bottom: 14px !important;
            padding: 0 !important;
            justify-content: center !important;
            z-index: 6 !important;
            pointer-events: none !important;
        }
        .pvs-hero-nav { display: none !important; }
        .pvs-hero-thumbs {
            flex: 0 0 auto !important;
            width: auto !important;
            max-width: calc(100% - 28px) !important;
            gap: 6px !important;
            padding: 0 !important;
            justify-content: center !important;
            overflow: hidden !important;
            pointer-events: auto !important;
        }
        .pvs-hero-thumb {
            flex: 0 0 7px !important;
            width: 7px !important;
            height: 7px !important;
            min-width: 7px !important;
            padding: 0 !important;
            border: 0 !important;
            border-radius: 50% !important;
            background: rgba(255,255,255,.38) !important;
            opacity: 1 !important;
            box-shadow: none !important;
            transform: none !important;
        }
        .pvs-hero-thumb.active {
            width: 20px !important;
            flex-basis: 20px !important;
            border-radius: 999px !important;
            background: #18d761 !important;
            box-shadow: none !important;
            transform: none !important;
        }
        .pvs-hero-thumb img { display: none !important; }

        .pvs-hero-autoplay-bar { left:18px !important; right:18px !important; bottom:6px !important; height:2px !important; opacity:.75; }


        /* PVS FIX: Hiện nút Xem phim trên hero_collection mobile, không làm vỡ khung */
        .pvs-hero-actions {
            display: flex !important;
            align-items: center !important;
            gap: 8px !important;
            margin-top: 12px !important;
            position: relative !important;
            z-index: 8 !important;
        }
        .pvs-hero-icon {
            display: none !important;
        }
        .pvs-hero-play {
            display: inline-flex !important;
            align-items: center !important;
            gap: 8px !important;
            min-height: 38px !important;
            padding: 8px 16px 8px 10px !important;
            border-radius: 999px !important;
            background: #18d761 !important;
            color: #06120b !important;
            font-size: 13px !important;
            font-weight: 800 !important;
            line-height: 1 !important;
            text-decoration: none !important;
            box-shadow: 0 8px 22px rgba(24,215,97,.28) !important;
            max-width: 100% !important;
        }
        .pvs-hero-play span {
            flex: 0 0 24px !important;
            width: 24px !important;
            height: 24px !important;
            border-radius: 50% !important;
            background: #fff !important;
            color: #18d761 !important;
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            font-size: 10px !important;
        }
        .pvs-hero-desc {
            -webkit-line-clamp: 2 !important;
        }
        .pvs-hero-content {
            padding-bottom: 76px !important;
        }
    }

    @media (max-width: 374px) {
        .pvs-hero-collection-card,
        .pvs-hero-slides,
        .pvs-hero-slide {
            min-height: 445px !important;
            height: 445px !important;
        }
        .pvs-hero-bg { height: 160px !important; }
        .pvs-hero-content { top: 134px !important; }
    }

    /* Desktop fix: tiêu đề phim trong hero_collection nhỏ hơn và tự rút gọn để không vỡ khung */
    @media (min-width: 768px) {
        .pvs-hero-collection-section .pvs-hero-name {
            font-size: clamp(24px, 2.15vw, 34px) !important;
            line-height: 1.16 !important;
            max-width: 560px !important;
            display: -webkit-box !important;
            -webkit-line-clamp: 2 !important;
            -webkit-box-orient: vertical !important;
            overflow: hidden !important;
            text-overflow: ellipsis !important;
            letter-spacing: -0.45px !important;
            margin-bottom: 8px !important;
        }
        .pvs-hero-collection-section .pvs-hero-origin {
            max-width: 560px !important;
            display: -webkit-box !important;
            -webkit-line-clamp: 1 !important;
            -webkit-box-orient: vertical !important;
            overflow: hidden !important;
            text-overflow: ellipsis !important;
        }
    }

/* ===== PVS INLINE SECTION CSS EXTRACTED TO HOME-MODERN END ===== */


/* ============================================================
   PVS migrated inline CSS from layout.blade.php
   Date: 2026-06-25
   Reason: keep Blade clean and make section CSS maintainable.
   ============================================================ */

/* --- migrated from <style id="pvs-hover-responsive-poster-only-v140"> in layout.blade.php --- */
/* PVS v1.4.0: Viền xanh chỉ bao quanh poster, tiêu đề đứng yên; khung phim tự co giãn nhiều màn hình */
        .pvs-slider-wrapper,
        .firm-by-category {
            overflow: visible !important;
        }

        .pvs-scroll-slider {
            overflow-x: auto !important;
            overflow-y: hidden !important;
            width: 100% !important;
            max-width: 100% !important;
            scroll-behavior: smooth !important;
            -webkit-overflow-scrolling: touch !important;
            overscroll-behavior-x: contain !important;
            cursor: default !important;
            padding-top: 10px !important;
            padding-bottom: 22px !important;
            margin-top: -10px !important;
            margin-bottom: -22px !important;
        }

        .pvs-scroll-slider.is-dragging {
            cursor: default !important;
            scroll-behavior: auto !important;
        }

        .pvs-scroll-list {
            display: flex !important;
            flex-wrap: nowrap !important;
            gap: clamp(8px, 1.1vw, 16px) !important;
            width: max-content !important;
            min-width: 100% !important;
            align-items: flex-start !important;
        }

        .pvs-scroll-item {
            position: relative !important;
            overflow: visible !important;
            z-index: 1 !important;
            flex: 0 0 clamp(145px, calc((100vw - 260px) / 8), 220px) !important;
            width: clamp(145px, calc((100vw - 260px) / 8), 220px) !important;
            min-width: 145px !important;
            max-width: 220px !important;
        }

        .pvs-scroll-item a {
            display: block !important;
            color: inherit !important;
            text-decoration: none !important;
            -webkit-tap-highlight-color: rgba(28,199,73,.22) !important;
        }

        .pvs-scroll-item .splide__item,
        .item-wrap {
            position: relative !important;
            overflow: visible !important;
            border-radius: 0 !important;
            box-shadow: none !important;
            transition: transform .22s ease !important;
            transform-origin: center center !important;
            z-index: 1 !important;
            background: transparent !important;
        }

        .pvs-scroll-item .splide__img-wrap,
        .item-wrap .item-img {
            position: relative !important;
            overflow: hidden !important;
            border-radius: 8px !important;
            background: #111 !important;
            transition: box-shadow .22s ease, transform .22s ease, filter .22s ease !important;
        }

        .pvs-scroll-item .splide__img {
            width: 100% !important;
            height: 100% !important;
            object-fit: cover !important;
            display: block !important;
            pointer-events: none !important;
            transform: none !important;
            transition: filter .22s ease !important;
        }

        .pvs-scroll-item .episodes,
        .item-wrap .update-info-mask,
        .item-wrap .item-img-layer {
            position: absolute !important;
            z-index: 30 !important;
            pointer-events: none !important;
        }

        .pvs-scroll-item .splide__item-title,
        .item-wrap .item-title {
            position: relative !important;
            z-index: 5 !important;
            margin-top: 8px !important;
            line-height: 1.38 !important;
            color: inherit !important;
            background: transparent !important;
            border: 0 !important;
            outline: 0 !important;
            box-shadow: none !important;
            text-shadow: none !important;
            transition: color .22s ease !important;
        }

        .pvs-scroll-item .splide__img-wrap::before,
        .item-wrap .item-img::before {
            content: "" !important;
            position: absolute !important;
            inset: 0 !important;
            background: rgba(0,0,0,.34) !important;
            opacity: 0 !important;
            z-index: 8 !important;
            pointer-events: none !important;
            transition: opacity .22s ease !important;
        }

        .pvs-scroll-item .splide__img-wrap::after,
        .item-wrap .item-img::after {
            content: "▶" !important;
            position: absolute !important;
            left: 50% !important;
            top: 50% !important;
            width: clamp(46px, 4.2vw, 62px) !important;
            height: clamp(46px, 4.2vw, 62px) !important;
            border-radius: 50% !important;
            background: #1cc749 !important;
            color: #fff !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            font-size: clamp(19px, 1.8vw, 26px) !important;
            line-height: 1 !important;
            text-indent: 4px !important;
            opacity: 0 !important;
            transform: translate(-50%, -50%) scale(.76) !important;
            z-index: 20 !important;
            pointer-events: none !important;
            box-shadow: 0 0 0 4px rgba(255,255,255,.12), 0 10px 30px rgba(28,199,73,.58) !important;
            transition: opacity .22s ease, transform .22s ease !important;
        }

        .item-wrap .play-button-container {
            display: none !important;
        }

        @media (min-width: 1920px) {
            .pvs-scroll-item {
                flex-basis: clamp(170px, calc((100vw - 320px) / 9), 240px) !important;
                width: clamp(170px, calc((100vw - 320px) / 9), 240px) !important;
                max-width: 240px !important;
            }
        }

        @media (max-width: 1399px) {
            .pvs-scroll-item {
                flex-basis: clamp(140px, calc((100vw - 190px) / 6), 205px) !important;
                width: clamp(140px, calc((100vw - 190px) / 6), 205px) !important;
                min-width: 140px !important;
            }
        }

        @media (max-width: 991px) {
            .pvs-scroll-item {
                flex-basis: clamp(118px, calc((100vw - 54px) / 3), 165px) !important;
                width: clamp(118px, calc((100vw - 54px) / 3), 165px) !important;
                min-width: 118px !important;
                max-width: 165px !important;
            }
            .pvs-scroll-list { gap: 8px !important; }
            .pvs-scroll-item .splide__item-title { font-size: 12px !important; }
        }

        @media (max-width: 520px) {
            .pvs-scroll-item {
                flex-basis: 128px !important;
                width: 128px !important;
                min-width: 128px !important;
                max-width: 128px !important;
            }
        }

        @media (max-width: 380px) {
            .pvs-scroll-item {
                flex-basis: 118px !important;
                width: 118px !important;
                min-width: 118px !important;
                max-width: 118px !important;
            }
        }

        @media (hover: hover) and (pointer: fine) {
            .pvs-scroll-item:hover,
            .item-wrap:hover {
                z-index: 80 !important;
            }

            .pvs-scroll-item:hover .splide__item,
            .item-wrap:hover {
                transform: scale(1.035) !important;
                box-shadow: none !important;
            }

            .pvs-scroll-item:hover .splide__img-wrap,
            .item-wrap:hover .item-img {
                box-shadow: 0 0 0 2px rgba(28,199,73,.88), 0 14px 34px rgba(0,0,0,.55), 0 0 28px rgba(28,199,73,.34) !important;
            }

            .pvs-scroll-item:hover .splide__img,
            .item-wrap:hover .desc-img {
                filter: brightness(.78) !important;
                transform: none !important;
            }

            .pvs-scroll-item:hover .splide__img-wrap::before,
            .pvs-scroll-item:hover .splide__img-wrap::after,
            .item-wrap:hover .item-img::before,
            .item-wrap:hover .item-img::after {
                opacity: 1 !important;
            }

            .pvs-scroll-item:hover .splide__img-wrap::after,
            .item-wrap:hover .item-img::after {
                transform: translate(-50%, -50%) scale(1) !important;
            }

            .pvs-scroll-item:hover .splide__item-title,
            .item-wrap:hover .item-title {
                color: #1cc749 !important;
                box-shadow: none !important;
                text-shadow: none !important;
            }
        }

        @media (hover: none), (pointer: coarse), (max-width: 991px) {
            .pvs-scroll-slider {
                cursor: default !important;
                touch-action: pan-x pan-y !important;
            }

            .pvs-scroll-item:hover .splide__item,
            .item-wrap:hover {
                transform: none !important;
                box-shadow: none !important;
            }

            .pvs-touch-active .splide__item,
            .item-wrap.pvs-touch-active,
            .pvs-scroll-item a:active .splide__item,
            .item-wrap .item-link:active {
                transform: scale(1.02) !important;
                box-shadow: none !important;
                z-index: 80 !important;
            }

            .pvs-touch-active .splide__img-wrap,
            .item-wrap.pvs-touch-active .item-img,
            .pvs-scroll-item a:active .splide__img-wrap,
            .item-wrap .item-link:active .item-img {
                box-shadow: 0 0 0 2px rgba(28,199,73,.88), 0 8px 22px rgba(0,0,0,.45) !important;
            }

            .pvs-touch-active .splide__img,
            .item-wrap.pvs-touch-active .desc-img,
            .pvs-scroll-item a:active .splide__img,
            .item-wrap .item-link:active .desc-img {
                filter: brightness(.82) !important;
            }

            .pvs-touch-active .splide__img-wrap::before,
            .pvs-touch-active .splide__img-wrap::after,
            .item-wrap.pvs-touch-active .item-img::before,
            .item-wrap.pvs-touch-active .item-img::after,
            .pvs-scroll-item a:active .splide__img-wrap::before,
            .pvs-scroll-item a:active .splide__img-wrap::after,
            .item-wrap .item-link:active .item-img::before,
            .item-wrap .item-link:active .item-img::after {
                opacity: 1 !important;
            }

            .pvs-touch-active .splide__img-wrap::after,
            .item-wrap.pvs-touch-active .item-img::after,
            .pvs-scroll-item a:active .splide__img-wrap::after,
            .item-wrap .item-link:active .item-img::after {
                transform: translate(-50%, -50%) scale(1) !important;
            }
        }

/* --- migrated from <style id="pvs-final-layout-fix-v160"> in layout.blade.php --- */
/* PVS FINAL v1.6.0: sửa mép phải/trái, bỏ cursor kéo, giữ hover poster-only, responsive desktop/mobile/tablet/TV */
        html, body {
            max-width: 100% !important;
            overflow-x: hidden !important;
        }

        .app, .main, .Main.Container, .Main.Container > .container,
        .app .container, .firm-by-category {
            max-width: 100% !important;
            box-sizing: border-box !important;
        }

        .Main.Container > .container,
        .app .main > .Main.Container > .container {
            width: 100% !important;
            max-width: 100% !important;
            padding-left: clamp(14px, 2.4vw, 46px) !important;
            padding-right: clamp(14px, 2.4vw, 46px) !important;
            margin-left: auto !important;
            margin-right: auto !important;
            overflow: visible !important;
        }

        .firm-by-category {
            width: 100% !important;
            margin-left: 0 !important;
            margin-right: 0 !important;
            overflow: visible !important;
        }

        .firm-by-category .myui-block-header,
        .firm-by-category .title-category {
            margin-left: 0 !important;
            margin-right: 0 !important;
        }

        .pvs-slider-wrapper {
            position: relative !important;
            width: 100% !important;
            max-width: 100% !important;
            box-sizing: border-box !important;
            padding-left: 0 !important;
            padding-right: 0 !important;
            margin-left: 0 !important;
            margin-right: 0 !important;
            overflow: visible !important;
        }

        .pvs-scroll-slider {
            width: 100% !important;
            max-width: 100% !important;
            box-sizing: border-box !important;
            overflow-x: auto !important;
            overflow-y: hidden !important;
            scroll-behavior: smooth !important;
            -webkit-overflow-scrolling: touch !important;
            overscroll-behavior-x: contain !important;
            touch-action: pan-x pan-y !important;
            cursor: default !important;
            padding: 14px clamp(12px, 1.6vw, 30px) 30px !important;
            margin: -14px 0 -30px !important;
            scroll-padding-left: clamp(12px, 1.6vw, 30px) !important;
            scroll-padding-right: clamp(28px, 5vw, 86px) !important;
        }

        .pvs-scroll-slider.is-dragging,
        .pvs-scroll-slider:active {
            cursor: default !important;
            scroll-behavior: auto !important;
        }

        .pvs-scroll-slider::-webkit-scrollbar {
            display: none !important;
        }
        .pvs-scroll-slider {
            scrollbar-width: none !important;
            -ms-overflow-style: none !important;
        }

        .pvs-scroll-list {
            display: flex !important;
            flex-wrap: nowrap !important;
            align-items: flex-start !important;
            gap: clamp(10px, 1vw, 16px) !important;
            width: max-content !important;
            min-width: 100% !important;
            box-sizing: border-box !important;
            padding-left: 0 !important;
            padding-right: clamp(34px, 6vw, 110px) !important;
            margin: 0 !important;
        }

        .pvs-scroll-item {
            position: relative !important;
            overflow: visible !important;
            z-index: 1 !important;
            box-sizing: border-box !important;
            flex: 0 0 clamp(136px, calc((100vw - 190px) / 9), 202px) !important;
            width: clamp(136px, calc((100vw - 190px) / 9), 202px) !important;
            min-width: 136px !important;
            max-width: 202px !important;
        }

        .pvs-scroll-item a,
        .pvs-scroll-item .splide__item {
            display: block !important;
            width: 100% !important;
            overflow: visible !important;
            position: relative !important;
            box-shadow: none !important;
            background: transparent !important;
            border: 0 !important;
            outline: 0 !important;
            text-decoration: none !important;
        }

        .pvs-scroll-item .splide__img-wrap {
            position: relative !important;
            width: 100% !important;
            aspect-ratio: 2 / 3 !important;
            height: auto !important;
            overflow: hidden !important;
            border-radius: 7px !important;
            background: #111 !important;
            box-shadow: none !important;
            transition: box-shadow .2s ease, transform .2s ease, filter .2s ease !important;
        }

        .pvs-scroll-item .splide__img,
        .firm-by-category .pvs-scroll-item .splide__img {
            width: 100% !important;
            height: 100% !important;
            object-fit: cover !important;
            display: block !important;
            transform: none !important;
            opacity: 1 !important;
            visibility: visible !important;
        }

        .pvs-scroll-item .episodes {
            position: absolute !important;
            top: 0 !important;
            left: 0 !important;
            z-index: 30 !important;
            pointer-events: none !important;
            opacity: 1 !important;
        }

        .pvs-scroll-item .splide__item-title {
            display: -webkit-box !important;
            -webkit-box-orient: vertical !important;
            -webkit-line-clamp: 2 !important;
            overflow: hidden !important;
            text-overflow: ellipsis !important;
            min-height: 40px !important;
            line-height: 20px !important;
            margin-top: 8px !important;
            padding: 0 !important;
            color: #fff !important;
            background: transparent !important;
            border: 0 !important;
            outline: 0 !important;
            box-shadow: none !important;
            transition: color .2s ease !important;
        }

        .pvs-scroll-item .splide__img-wrap::before {
            content: "" !important;
            position: absolute !important;
            inset: 0 !important;
            background: rgba(0,0,0,.28) !important;
            opacity: 0 !important;
            z-index: 8 !important;
            pointer-events: none !important;
            transition: opacity .2s ease !important;
        }

        .pvs-scroll-item .splide__img-wrap::after {
            content: "▶" !important;
            position: absolute !important;
            left: 50% !important;
            top: 50% !important;
            width: clamp(48px, 4.1vw, 68px) !important;
            height: clamp(48px, 4.1vw, 68px) !important;
            border-radius: 50% !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            background: #1cc749 !important;
            color: #fff !important;
            font-size: clamp(20px, 1.8vw, 30px) !important;
            line-height: 1 !important;
            text-indent: 4px !important;
            opacity: 0 !important;
            z-index: 12 !important;
            pointer-events: none !important;
            transform: translate(-50%, -50%) scale(.76) !important;
            box-shadow: 0 0 0 4px rgba(255,255,255,.13), 0 10px 30px rgba(28,199,73,.55) !important;
            transition: opacity .2s ease, transform .2s ease !important;
        }

        @media (hover: hover) and (pointer: fine) {
            .pvs-scroll-item:hover { z-index: 90 !important; }
            .pvs-scroll-item:hover .splide__item {
                transform: scale(1.035) !important;
                transform-origin: center top !important;
            }
            .pvs-scroll-item:hover .splide__img-wrap {
                box-shadow: 0 0 0 2px #1cc749, 0 14px 30px rgba(0,0,0,.55), 0 0 22px rgba(28,199,73,.32) !important;
            }
            .pvs-scroll-item:hover .splide__img {
                filter: brightness(.82) !important;
            }
            .pvs-scroll-item:hover .splide__img-wrap::before,
            .pvs-scroll-item:hover .splide__img-wrap::after {
                opacity: 1 !important;
            }
            .pvs-scroll-item:hover .splide__img-wrap::after {
                transform: translate(-50%, -50%) scale(1) !important;
            }
            .pvs-scroll-item:hover .splide__item-title {
                color: #1cc749 !important;
                background: transparent !important;
                box-shadow: none !important;
                border: 0 !important;
                outline: 0 !important;
            }
        }

        @media (hover: none), (pointer: coarse), (max-width: 991px) {
            .pvs-scroll-slider {
                cursor: default !important;
                padding: 10px 10px 22px !important;
                margin: -10px 0 -22px !important;
                overflow-x: auto !important;
                overflow-y: hidden !important;
            }
            .pvs-scroll-list {
                gap: 8px !important;
                padding-right: 24px !important;
            }
            .pvs-scroll-item .splide__img-wrap::after,
            .pvs-touch-active .splide__img-wrap::after,
            .pvs-scroll-item a:active .splide__img-wrap::after {
                content: none !important;
                display: none !important;
                opacity: 0 !important;
            }
            .pvs-scroll-item:hover .splide__item {
                transform: none !important;
            }
            .pvs-touch-active .splide__item,
            .pvs-scroll-item a:active .splide__item {
                transform: scale(1.018) !important;
                transform-origin: center top !important;
            }
            .pvs-touch-active .splide__img-wrap,
            .pvs-scroll-item a:active .splide__img-wrap {
                box-shadow: 0 0 0 2px #1cc749, 0 8px 18px rgba(0,0,0,.42), 0 0 16px rgba(28,199,73,.28) !important;
            }
            .pvs-touch-active .splide__img,
            .pvs-scroll-item a:active .splide__img {
                filter: brightness(.86) !important;
            }
            .pvs-slider-arrow { display: none !important; }
        }

        @media (min-width: 1800px) {
            .pvs-scroll-item {
                flex-basis: clamp(180px, calc((100vw - 260px) / 10), 230px) !important;
                width: clamp(180px, calc((100vw - 260px) / 10), 230px) !important;
                max-width: 230px !important;
            }
        }

        @media (min-width: 1200px) and (max-width: 1500px) {
            .pvs-scroll-item {
                flex-basis: clamp(132px, calc((100vw - 170px) / 8), 178px) !important;
                width: clamp(132px, calc((100vw - 170px) / 8), 178px) !important;
                max-width: 178px !important;
            }
        }

        @media (min-width: 992px) and (max-width: 1199px) {
            .pvs-scroll-item {
                flex-basis: clamp(132px, calc((100vw - 130px) / 6), 168px) !important;
                width: clamp(132px, calc((100vw - 130px) / 6), 168px) !important;
                max-width: 168px !important;
            }
        }

        @media (min-width: 768px) and (max-width: 991px) {
            .Main.Container > .container,
            .app .main > .Main.Container > .container {
                padding-left: 18px !important;
                padding-right: 18px !important;
            }
            .pvs-scroll-item {
                flex-basis: clamp(140px, calc((100vw - 82px) / 5), 172px) !important;
                width: clamp(140px, calc((100vw - 82px) / 5), 172px) !important;
                min-width: 140px !important;
                max-width: 172px !important;
            }
        }

        @media (min-width: 481px) and (max-width: 767px) {
            .Main.Container > .container,
            .app .main > .Main.Container > .container {
                padding-left: 12px !important;
                padding-right: 12px !important;
            }
            .pvs-scroll-item {
                flex-basis: clamp(128px, calc((100vw - 48px) / 3), 158px) !important;
                width: clamp(128px, calc((100vw - 48px) / 3), 158px) !important;
                min-width: 128px !important;
                max-width: 158px !important;
            }
            .pvs-scroll-item .splide__item-title { font-size: 13px !important; line-height: 18px !important; min-height: 36px !important; }
        }

        @media (max-width: 480px) {
            .Main.Container > .container,
            .app .main > .Main.Container > .container {
                padding-left: 8px !important;
                padding-right: 8px !important;
            }
            .pvs-scroll-item {
                flex-basis: 122px !important;
                width: 122px !important;
                min-width: 122px !important;
                max-width: 122px !important;
            }
            .pvs-scroll-item .splide__item-title { font-size: 12px !important; line-height: 17px !important; min-height: 34px !important; }
            .pvs-scroll-item .episodes { font-size: 11px !important; }
        }

        @media (max-width: 385px) {
            .pvs-scroll-item {
                flex-basis: 112px !important;
                width: 112px !important;
                min-width: 112px !important;
                max-width: 112px !important;
            }
        }

        @media (min-width: 992px) {
            .pvs-slider-arrow {
                display: flex !important;
                opacity: .96 !important;
                visibility: visible !important;
                pointer-events: auto !important;
                position: absolute !important;
                top: 42% !important;
                transform: translateY(-50%) !important;
                z-index: 999 !important;
                width: 48px !important;
                height: 64px !important;
                border-radius: 12px !important;
                align-items: center !important;
                justify-content: center !important;
                background: rgba(0,0,0,.58) !important;
                color: #fff !important;
                box-shadow: 0 8px 24px rgba(0,0,0,.35) !important;
            }
            .pvs-slider-prev { left: 4px !important; }
            .pvs-slider-next { right: 4px !important; }
            .pvs-slider-arrow i { font-size: 34px !important; line-height: 1 !important; }
            .pvs-slider-arrow:disabled {
                opacity: .26 !important;
                visibility: visible !important;
                pointer-events: none !important;
            }
            .pvs-slider-wrapper.pvs-no-overflow .pvs-slider-arrow {
                display: none !important;
            }
        }

        /* Catalog page fallback: poster-only green border, no mobile play */
        .item-wrap { overflow: visible !important; }
        .item-wrap .item-img { overflow: hidden !important; border-radius: 7px !important; }
        @media (hover: hover) and (pointer: fine) {
            .item-wrap:hover { transform: scale(1.025) !important; box-shadow: none !important; }
            .item-wrap:hover .item-img { box-shadow: 0 0 0 2px #1cc749, 0 12px 26px rgba(0,0,0,.5), 0 0 18px rgba(28,199,73,.28) !important; }
            .item-wrap:hover .item-title { color: #1cc749 !important; box-shadow: none !important; background: transparent !important; }
        }
        @media (hover: none), (pointer: coarse), (max-width: 991px) {
            .item-wrap .item-img::after,
            .item-wrap.pvs-touch-active .item-img::after,
            .item-wrap .item-link:active .item-img::after,
            .item-wrap .play-button-container { display: none !important; content: none !important; opacity: 0 !important; }
            .item-wrap.pvs-touch-active .item-img,
            .item-wrap .item-link:active .item-img { box-shadow: 0 0 0 2px #1cc749, 0 8px 18px rgba(0,0,0,.42) !important; }
        }

/* --- migrated from <style id="pvs-cursor-pointer-v167"> in layout.blade.php --- */
/* PVS v1.6.7 - FINAL cursor pointer fix
   Chỉ đổi sang bàn tay khi rê chuột vào ô phim/poster/link phim.
   Ra ngoài ô phim sẽ trở lại con trỏ mặc định. */
@media (hover: hover) and (pointer: fine) {
    .pvs-scroll-item,
    .pvs-scroll-item > a,
    .pvs-scroll-item > a > .splide__item,
    .pvs-scroll-item .splide__img-wrap,
    .pvs-scroll-item .splide__item-title,
    .item-wrap,
    .item-wrap > .item-link,
    .item-wrap .item-img,
    .item-wrap .text-box,
    .item-wrap .item-title {
        cursor: pointer !important;
    }

    .pvs-scroll-slider:not(.pvs-hovering-card):not(.is-dragging) {
        cursor: default !important;
    }

    .pvs-scroll-slider.pvs-hovering-card,
    .pvs-scroll-slider.pvs-hovering-card * {
        cursor: pointer !important;
    }

    .pvs-scroll-slider.is-dragging,
    .pvs-scroll-slider.is-dragging * {
        cursor: default !important;
    }
}

/* --- migrated from <style id="layout-inline-style"> in layout.blade.php --- */
@media screen and (max-width: 1679px) {
            .dznphQ {
                width: 44px;
                height: 44px;
            }
        }

        .dznphQ {
            right: 10px;
            position: fixed;
            bottom: 80px;
            width: 40px;
            height: 40px;
            background: rgb(49, 52, 57);
            display: flex;
            -webkit-box-align: center;
            align-items: center;
            -webkit-box-pack: center;
            justify-content: center;
            border-radius: 50%;
            z-index: 9999;
        }

        #footer .backTop-wrapper {
            display: block;
        }

        .backTop-wrapper {
            display: none;
        }

        @media (min-width: 768px) {
            .footer__list {
                padding: 5px
            }
        }

/* --- migrated from <style id="pvs-native-scroll-slider-css"> in layout.blade.php --- */
.pvs-slider-wrapper {
            position: relative;
            width: 100%;
        }

        .pvs-scroll-slider {
            overflow-x: auto;
            overflow-y: hidden;
            cursor: default;
            scroll-behavior: smooth;
            scrollbar-width: none;
            -ms-overflow-style: none;
            -webkit-overflow-scrolling: touch;
            overscroll-behavior-x: contain;
            touch-action: pan-x pan-y;
            width: 100%;
        }

        .pvs-scroll-slider::-webkit-scrollbar {
            display: none;
        }

        .pvs-scroll-slider.is-dragging,
        .pvs-scroll-slider:active {
            cursor: default;
        }
.pvs-scroll-list {
            display: flex;
            flex-wrap: nowrap;
            gap: 14px;
            padding: 0;
            margin: 0;
            list-style: none;
            width: max-content;
            min-width: 100%;
        }

        .pvs-scroll-item {
            flex: 0 0 calc((100vw - 260px) / 8);
            max-width: 210px;
            min-width: 145px;
        }

        .pvs-scroll-item a,
        .pvs-scroll-item .splide__item,
        .pvs-scroll-item .splide__img {
            -webkit-user-select: none;
            user-select: none;
            -webkit-user-drag: none;
        }

        .pvs-scroll-item .splide__img-wrap {
            width: 100%;
            aspect-ratio: 490 / 654;
            overflow: hidden;
            border-radius: 6px;
            background: #111;
            position: relative;
        }

        .pvs-scroll-item .splide__img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
            pointer-events: none;
        }

        .pvs-scroll-item .splide__item-title {
            line-height: 1.45;
            margin-top: 8px;
            word-break: break-word;
        }

        .pvs-slider-arrow {
            position: absolute;
            top: 42%;
            transform: translateY(-50%);
            width: 44px;
            height: 60px;
            border: 0;
            border-radius: 12px;
            background: linear-gradient(90deg, rgba(0,0,0,.86), rgba(0,0,0,.52));
            color: #fff;
            z-index: 30;
            cursor: pointer;
            opacity: 0;
            visibility: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: opacity .18s ease, visibility .18s ease, background .18s ease, transform .18s ease;
            box-shadow: 0 8px 22px rgba(0,0,0,.35);
        }

        .pvs-slider-arrow i {
            font-size: 30px;
            line-height: 1;
        }

        .pvs-slider-prev {
            left: -10px;
        }

        .pvs-slider-next {
            right: -10px;
            background: linear-gradient(270deg, rgba(0,0,0,.86), rgba(0,0,0,.52));
        }

        .pvs-slider-wrapper:hover .pvs-slider-arrow {
            opacity: 1;
            visibility: visible;
        }

        .pvs-slider-arrow:hover {
            background: #22c55e;
            transform: translateY(-50%) scale(1.04);
        }

        .pvs-slider-arrow:disabled,
        .pvs-slider-wrapper.pvs-no-overflow .pvs-slider-arrow {
            opacity: 0 !important;
            visibility: hidden !important;
            pointer-events: none;
        }

        @media (max-width: 1680px) {
            .pvs-scroll-item { flex-basis: calc((100vw - 220px) / 7); max-width: 200px; }
        }

        @media (max-width: 1399px) {
            .pvs-scroll-item { flex-basis: calc((100vw - 170px) / 6); max-width: 190px; }
        }

        @media (max-width: 1199px) {
            .pvs-scroll-item { flex-basis: calc((100vw - 130px) / 5); max-width: 180px; }
        }

        @media (max-width: 991px) {
            .pvs-scroll-list { gap: 10px; }
            .pvs-scroll-item { flex-basis: calc((100vw - 70px) / 4); max-width: 170px; }
            .pvs-slider-arrow { display: none; }
        }

        @media (max-width: 800px) {
            .pvs-scroll-list { gap: 8px; }
            .pvs-scroll-item { flex-basis: calc((100vw - 54px) / 3); max-width: 160px; min-width: 118px; }
        }

        @media (max-width: 585px) {
            .pvs-scroll-list { gap: 8px; }
            .pvs-scroll-item { flex-basis: 128px; width: 128px; max-width: 128px; min-width: 128px; }
            .pvs-scroll-item .splide__item-title { font-size: 12px; }
        }

        @media (max-width: 390px) {
            .pvs-scroll-item { flex-basis: 118px; width: 118px; max-width: 118px; min-width: 118px; }
        }
    
        @media (hover: none), (pointer: coarse) {
            .pvs-scroll-slider {
                touch-action: auto !important;
                cursor: default !important;
            }

            .pvs-scroll-slider.is-dragging {
                cursor: default !important;
            }

            .pvs-slider-arrow {
                display: none !important;
            }
        }

/* --- migrated from <style id="pvs-hover-play-effect-css"> in layout.blade.php --- */
/* PVS FIX 2026-06-04: hiệu ứng nổi + play xanh chỉ chạy trên desktop có chuột.
           Mobile chỉ dùng :active rất ngắn để vẫn vào trang phim chỉ với 1 lần chạm. */
        .pvs-scroll-item a,
        .item-wrap .item-link {
            -webkit-tap-highlight-color: rgba(34, 197, 94, .25);
        }

        .pvs-scroll-item .splide__item,
        .pvs-scroll-item .splide__img-wrap,
        .pvs-scroll-item .splide__img,
        .pvs-scroll-item .splide__item-title,
        .item-wrap,
        .item-wrap .item-img,
        .item-wrap .desc-img,
        .item-wrap .item-title {
            transition: transform .25s ease, filter .25s ease, color .25s ease, box-shadow .25s ease, opacity .25s ease;
        }

        .pvs-scroll-item .splide__img-wrap,
        .item-wrap .item-img {
            position: relative;
            overflow: hidden;
            border-radius: 6px;
            background: #111;
        }

        .pvs-scroll-item .splide__img-wrap::before,
        .item-wrap .item-img::before {
            content: "";
            position: absolute;
            inset: 0;
            background: rgba(0, 0, 0, .38);
            opacity: 0;
            transition: opacity .25s ease;
            z-index: 5;
            pointer-events: none;
        }

        .pvs-scroll-item .splide__img-wrap::after,
        .item-wrap .item-img::after {
            content: "▶";
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%) scale(.72);
            width: 58px;
            height: 58px;
            border-radius: 50%;
            background: #1cc749;
            color: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 24px;
            line-height: 1;
            text-indent: 4px;
            opacity: 0;
            z-index: 6;
            pointer-events: none;
            box-shadow: 0 0 0 4px rgba(255,255,255,.12), 0 10px 28px rgba(28,199,73,.55);
            transition: opacity .25s ease, transform .25s ease, box-shadow .25s ease;
        }

        .pvs-scroll-item .episodes,
        .item-wrap .update-info-mask {
            z-index: 8 !important;
        }

        @media (hover: hover) and (pointer: fine) {
            .pvs-scroll-slider {
                overflow-x: auto !important;
                overflow-y: hidden !important;
                padding-top: 10px;
                padding-bottom: 18px;
                margin-top: -10px;
                margin-bottom: -18px;
            }

            .pvs-slider-wrapper,
            .firm-by-category,
            .pvs-scroll-list,
            .pvs-scroll-item {
                overflow: visible !important;
            }

            .pvs-scroll-item:hover {
                z-index: 50;
            }

            .pvs-scroll-item:hover .splide__item,
            .item-wrap:hover {
                transform: translateY(-7px) scale(1.045);
                z-index: 50;
            }

            .pvs-scroll-item:hover .splide__img-wrap,
            .item-wrap:hover .item-img {
                box-shadow: 0 0 0 2px rgba(28,199,73,.75), 0 16px 34px rgba(0,0,0,.55), 0 0 28px rgba(28,199,73,.35);
            }

            .pvs-scroll-item:hover .splide__img,
            .item-wrap:hover .desc-img {
                transform: scale(1.055);
                filter: brightness(.78);
            }

            .pvs-scroll-item:hover .splide__img-wrap::before,
            .item-wrap:hover .item-img::before,
            .pvs-scroll-item:hover .splide__img-wrap::after,
            .item-wrap:hover .item-img::after {
                opacity: 1;
            }

            .pvs-scroll-item:hover .splide__img-wrap::after,
            .item-wrap:hover .item-img::after {
                transform: translate(-50%, -50%) scale(1);
            }

            .pvs-scroll-item:hover .splide__item-title,
            .item-wrap:hover .item-title {
                color: #1cc749 !important;
            }
        }

        @media (hover: none), (pointer: coarse), (max-width: 991px) {
            .pvs-scroll-slider {
                overflow-x: auto !important;
                overflow-y: hidden !important;
                touch-action: pan-x pan-y !important;
            }

            .pvs-scroll-item:hover .splide__item,
            .item-wrap:hover,
            .splide__item:hover,
            .item-img:hover {
                transform: none !important;
            }

            .pvs-scroll-item:hover .splide__img-wrap::before,
            .pvs-scroll-item:hover .splide__img-wrap::after,
            .item-img:hover::before,
            .item-img:hover::after,
            .item-img:hover .play-button-container {
                opacity: 0 !important;
                display: none !important;
            }

            .pvs-scroll-item a:active .splide__img-wrap,
            .item-wrap .item-link:active .item-img {
                box-shadow: 0 0 0 2px rgba(28,199,73,.8), 0 8px 22px rgba(0,0,0,.45);
            }

            .pvs-scroll-item a:active .splide__img,
            .item-wrap .item-link:active .desc-img {
                filter: brightness(.86);
            }
        }

/* --- migrated from <style id="pvs-poster-load-stable-css"> in layout.blade.php --- */
.firm-by-category .splide__img-wrap,
        .pvs-scroll-item .splide__img-wrap,
        .splide__slide .splide__img-wrap {
            background-color: #151515 !important;
            background-image: linear-gradient(110deg, #151515 8%, #202020 18%, #151515 33%);
            background-size: 200% 100%;
            min-height: 120px;
            position: relative;
            overflow: hidden;
        }

        .firm-by-category img.splide__img,
        .pvs-scroll-item img.splide__img,
        .splide__slide img.splide__img,
        img.pvs-poster-img {
            opacity: 1 !important;
            visibility: visible !important;
            display: block !important;
            width: 100% !important;
            height: 100% !important;
            object-fit: cover !important;
            background: #151515 !important;
            transition: transform .32s ease, filter .32s ease !important;
            content-visibility: visible !important;
        }

        .firm-by-category .pvs-scroll-item {
            content-visibility: visible !important;
        }

        .pvs-scroll-slider {
            content-visibility: visible !important;
            contain-intrinsic-size: auto !important;
        }

/* --- migrated from <style id="pvs-watch-recommend-css"> in layout.blade.php --- */
/* Tách riêng Đề xuất cho bạn trong trang xem phim, không dùng chung Splide/trang chủ */
        .watch-recommend {
            margin-top: 28px;
            width: 100%;
            overflow: visible;
        }

        .watch-recommend-title {
            font-size: 20px;
            line-height: 1.35;
            font-weight: 800;
            margin: 0 0 14px;
            color: #fff;
        }

        .watch-recommend-grid {
            display: grid;
            grid-template-columns: repeat(6, minmax(0, 1fr));
            gap: 16px 14px;
            width: 100%;
        }

        .watch-recommend-item {
            min-width: 0;
        }

        .watch-recommend-link {
            display: block;
            color: #fff;
            text-decoration: none;
        }

        .watch-recommend-thumb {
            position: relative;
            width: 100%;
            aspect-ratio: 490 / 654;
            overflow: hidden;
            border-radius: 8px;
            background: #151515;
        }

        .watch-recommend-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
            opacity: 1;
            visibility: visible;
            transition: transform .28s ease, filter .28s ease;
        }

        .watch-recommend-episode {
            position: absolute;
            top: 0;
            right: 0;
            z-index: 4;
            padding: 4px 7px;
            border-radius: 0 8px 0 8px;
            background: #22c55e;
            color: #fff;
            font-size: 12px;
            font-weight: 800;
            line-height: 1.25;
        }

        .watch-recommend-play {
            position: absolute;
            inset: 0;
            z-index: 3;
            display: flex;
            align-items: center;
            justify-content: center;
            background: rgba(0, 0, 0, .34);
            opacity: 0;
            transition: opacity .25s ease;
            pointer-events: none;
        }

        .watch-recommend-play i {
            width: 48px;
            height: 48px;
            border-radius: 999px;
            display: flex;
            align-items: center;
            justify-content: center;
            background: #22c55e;
            color: #fff;
            font-size: 18px;
            box-shadow: 0 8px 28px rgba(34, 197, 94, .36);
            text-indent: 3px;
        }

        .watch-recommend-name {
            margin: 8px 0 0;
            font-size: 14px;
            line-height: 1.45;
            font-weight: 700;
            color: #f3f4f6;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
            min-height: 40px;
        }

        @media (hover: hover) and (pointer: fine) {
            .watch-recommend-link:hover .watch-recommend-img {
                transform: scale(1.06);
                filter: brightness(.78);
            }

            .watch-recommend-link:hover .watch-recommend-play {
                opacity: 1;
            }

            .watch-recommend-link:hover .watch-recommend-name {
                color: #22c55e;
            }
        }

        @media (max-width: 1399px) {
            .watch-recommend-grid {
                grid-template-columns: repeat(5, minmax(0, 1fr));
            }
        }

        @media (max-width: 1199px) {
            .watch-recommend-grid {
                grid-template-columns: repeat(4, minmax(0, 1fr));
                gap: 14px 12px;
            }
        }

        @media (max-width: 767px) {
            .watch-recommend {
                margin-top: 22px;
            }

            .watch-recommend-grid {
                grid-template-columns: repeat(3, minmax(0, 1fr));
                gap: 12px 8px;
            }

            .watch-recommend-title {
                font-size: 18px;
            }

            .watch-recommend-name {
                font-size: 12px;
                min-height: 34px;
            }

            .watch-recommend-episode {
                font-size: 11px;
                padding: 3px 6px;
            }

            .watch-recommend-play {
                display: none;
            }
        }

        @media (max-width: 390px) {
            .watch-recommend-grid {
                grid-template-columns: repeat(3, minmax(0, 1fr));
                gap: 10px 7px;
            }
        }

/* --- migrated from <style id="pvs-hover-drag-final-v130"> in layout.blade.php --- */
/* PVS FINAL v1.3.0: hover nổi cả card, giữ nguyên số tập + tiêu đề, kéo ngang desktop, mobile chạm 1 lần vẫn mở phim */
        .pvs-slider-wrapper,
        .firm-by-category {
            overflow: visible !important;
        }

        .pvs-scroll-slider {
            overflow-x: auto !important;
            overflow-y: hidden !important;
            scroll-behavior: smooth !important;
            cursor: default !important;
            padding-top: 8px !important;
            padding-bottom: 18px !important;
            margin-top: -8px !important;
            margin-bottom: -18px !important;
            -webkit-overflow-scrolling: touch !important;
        }

        .pvs-scroll-slider.is-dragging {
            cursor: default !important;
            scroll-behavior: auto !important;
        }

        .pvs-scroll-list {
            display: flex !important;
            flex-wrap: nowrap !important;
            width: max-content !important;
            min-width: 100% !important;
        }

        .pvs-scroll-item {
            position: relative !important;
            overflow: visible !important;
            z-index: 1 !important;
        }

        .pvs-scroll-item a {
            display: block !important;
            color: inherit !important;
            text-decoration: none !important;
            -webkit-tap-highlight-color: rgba(28, 199, 73, .22) !important;
        }

        .pvs-scroll-item .splide__item,
        .item-wrap {
            position: relative !important;
            overflow: visible !important;
            border-radius: 8px !important;
            transition: transform .22s ease, box-shadow .22s ease, filter .22s ease !important;
            transform-origin: center center !important;
            z-index: 1 !important;
        }

        .pvs-scroll-item .splide__img-wrap,
        .item-wrap .item-img {
            position: relative !important;
            overflow: hidden !important;
            border-radius: 8px !important;
            background: #111 !important;
        }

        .pvs-scroll-item .splide__img,
        .item-wrap .desc-img {
            transform: none !important;
            transition: filter .22s ease !important;
        }

        .pvs-scroll-item .episodes,
        .item-wrap .update-info-mask,
        .item-wrap .item-img-layer {
            position: absolute !important;
            z-index: 20 !important;
            pointer-events: none !important;
        }

        .pvs-scroll-item .splide__item-title,
        .item-wrap .item-title {
            position: relative !important;
            z-index: 15 !important;
            transition: color .22s ease, text-shadow .22s ease !important;
        }

        .pvs-scroll-item .splide__img-wrap::before,
        .item-wrap .item-img::before {
            content: "" !important;
            position: absolute !important;
            inset: 0 !important;
            background: rgba(0,0,0,.34) !important;
            opacity: 0 !important;
            z-index: 8 !important;
            pointer-events: none !important;
            transition: opacity .22s ease !important;
        }

        .pvs-scroll-item .splide__img-wrap::after,
        .item-wrap .item-img::after {
            content: "▶" !important;
            position: absolute !important;
            left: 50% !important;
            top: 50% !important;
            width: 58px !important;
            height: 58px !important;
            border-radius: 50% !important;
            background: #1cc749 !important;
            color: #fff !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            font-size: 24px !important;
            line-height: 1 !important;
            text-indent: 4px !important;
            opacity: 0 !important;
            transform: translate(-50%, -50%) scale(.76) !important;
            z-index: 12 !important;
            pointer-events: none !important;
            box-shadow: 0 0 0 4px rgba(255,255,255,.12), 0 10px 30px rgba(28,199,73,.58) !important;
            transition: opacity .22s ease, transform .22s ease !important;
        }

        .item-wrap .play-button-container {
            display: none !important;
        }

        @media (hover: hover) and (pointer: fine) {
            .pvs-scroll-item:hover,
            .item-wrap:hover {
                z-index: 80 !important;
            }

            .pvs-scroll-item:hover .splide__item,
            .item-wrap:hover {
                transform: scale(1.045) !important;
                box-shadow: 0 0 0 2px rgba(28,199,73,.78), 0 16px 36px rgba(0,0,0,.58), 0 0 28px rgba(28,199,73,.34) !important;
            }

            .pvs-scroll-item:hover .splide__img,
            .item-wrap:hover .desc-img {
                filter: brightness(.78) !important;
                transform: none !important;
            }

            .pvs-scroll-item:hover .splide__img-wrap::before,
            .pvs-scroll-item:hover .splide__img-wrap::after,
            .item-wrap:hover .item-img::before,
            .item-wrap:hover .item-img::after {
                opacity: 1 !important;
            }

            .pvs-scroll-item:hover .splide__img-wrap::after,
            .item-wrap:hover .item-img::after {
                transform: translate(-50%, -50%) scale(1) !important;
            }

            .pvs-scroll-item:hover .splide__item-title,
            .item-wrap:hover .item-title {
                color: #1cc749 !important;
                text-shadow: 0 0 10px rgba(28,199,73,.25) !important;
            }
        }

        @media (hover: none), (pointer: coarse), (max-width: 991px) {
            .pvs-scroll-slider {
                cursor: default !important;
                touch-action: pan-x pan-y !important;
            }

            .pvs-scroll-item:hover .splide__item,
            .item-wrap:hover {
                transform: none !important;
                box-shadow: none !important;
            }

            .pvs-touch-active .splide__item,
            .item-wrap.pvs-touch-active {
                transform: scale(1.035) !important;
                box-shadow: 0 0 0 2px rgba(28,199,73,.78), 0 10px 26px rgba(0,0,0,.5), 0 0 22px rgba(28,199,73,.3) !important;
                z-index: 80 !important;
            }

            .pvs-touch-active .splide__img,
            .item-wrap.pvs-touch-active .desc-img {
                filter: brightness(.78) !important;
            }

            .pvs-touch-active .splide__img-wrap::before,
            .pvs-touch-active .splide__img-wrap::after,
            .item-wrap.pvs-touch-active .item-img::before,
            .item-wrap.pvs-touch-active .item-img::after {
                opacity: 1 !important;
            }

            .pvs-touch-active .splide__img-wrap::after,
            .item-wrap.pvs-touch-active .item-img::after {
                transform: translate(-50%, -50%) scale(1) !important;
            }

            .pvs-touch-active .splide__item-title,
            .item-wrap.pvs-touch-active .item-title {
                color: #1cc749 !important;
            }
        }

/* --- migrated from <style id="pvs-hover-responsive-poster-only-v140"> in layout.blade.php --- */
/* PVS v1.4.0: Viền xanh chỉ bao quanh poster, tiêu đề đứng yên; khung phim tự co giãn nhiều màn hình */
        .pvs-slider-wrapper,
        .firm-by-category {
            overflow: visible !important;
        }

        .pvs-scroll-slider {
            overflow-x: auto !important;
            overflow-y: hidden !important;
            width: 100% !important;
            max-width: 100% !important;
            scroll-behavior: smooth !important;
            -webkit-overflow-scrolling: touch !important;
            overscroll-behavior-x: contain !important;
            cursor: default !important;
            padding-top: 10px !important;
            padding-bottom: 22px !important;
            margin-top: -10px !important;
            margin-bottom: -22px !important;
        }

        .pvs-scroll-slider.is-dragging {
            cursor: default !important;
            scroll-behavior: auto !important;
        }

        .pvs-scroll-list {
            display: flex !important;
            flex-wrap: nowrap !important;
            gap: clamp(8px, 1.1vw, 16px) !important;
            width: max-content !important;
            min-width: 100% !important;
            align-items: flex-start !important;
        }

        .pvs-scroll-item {
            position: relative !important;
            overflow: visible !important;
            z-index: 1 !important;
            flex: 0 0 clamp(145px, calc((100vw - 260px) / 8), 220px) !important;
            width: clamp(145px, calc((100vw - 260px) / 8), 220px) !important;
            min-width: 145px !important;
            max-width: 220px !important;
        }

        .pvs-scroll-item a {
            display: block !important;
            color: inherit !important;
            text-decoration: none !important;
            -webkit-tap-highlight-color: rgba(28,199,73,.22) !important;
        }

        .pvs-scroll-item .splide__item,
        .item-wrap {
            position: relative !important;
            overflow: visible !important;
            border-radius: 0 !important;
            box-shadow: none !important;
            transition: transform .22s ease !important;
            transform-origin: center center !important;
            z-index: 1 !important;
            background: transparent !important;
        }

        .pvs-scroll-item .splide__img-wrap,
        .item-wrap .item-img {
            position: relative !important;
            overflow: hidden !important;
            border-radius: 8px !important;
            background: #111 !important;
            transition: box-shadow .22s ease, transform .22s ease, filter .22s ease !important;
        }

        .pvs-scroll-item .splide__img {
            width: 100% !important;
            height: 100% !important;
            object-fit: cover !important;
            display: block !important;
            pointer-events: none !important;
            transform: none !important;
            transition: filter .22s ease !important;
        }

        .pvs-scroll-item .episodes,
        .item-wrap .update-info-mask,
        .item-wrap .item-img-layer {
            position: absolute !important;
            z-index: 30 !important;
            pointer-events: none !important;
        }

        .pvs-scroll-item .splide__item-title,
        .item-wrap .item-title {
            position: relative !important;
            z-index: 5 !important;
            margin-top: 8px !important;
            line-height: 1.38 !important;
            color: inherit !important;
            background: transparent !important;
            border: 0 !important;
            outline: 0 !important;
            box-shadow: none !important;
            text-shadow: none !important;
            transition: color .22s ease !important;
        }

        .pvs-scroll-item .splide__img-wrap::before,
        .item-wrap .item-img::before {
            content: "" !important;
            position: absolute !important;
            inset: 0 !important;
            background: rgba(0,0,0,.34) !important;
            opacity: 0 !important;
            z-index: 8 !important;
            pointer-events: none !important;
            transition: opacity .22s ease !important;
        }

        .pvs-scroll-item .splide__img-wrap::after,
        .item-wrap .item-img::after {
            content: "▶" !important;
            position: absolute !important;
            left: 50% !important;
            top: 50% !important;
            width: clamp(46px, 4.2vw, 62px) !important;
            height: clamp(46px, 4.2vw, 62px) !important;
            border-radius: 50% !important;
            background: #1cc749 !important;
            color: #fff !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            font-size: clamp(19px, 1.8vw, 26px) !important;
            line-height: 1 !important;
            text-indent: 4px !important;
            opacity: 0 !important;
            transform: translate(-50%, -50%) scale(.76) !important;
            z-index: 20 !important;
            pointer-events: none !important;
            box-shadow: 0 0 0 4px rgba(255,255,255,.12), 0 10px 30px rgba(28,199,73,.58) !important;
            transition: opacity .22s ease, transform .22s ease !important;
        }

        .item-wrap .play-button-container {
            display: none !important;
        }

        @media (min-width: 1920px) {
            .pvs-scroll-item {
                flex-basis: clamp(170px, calc((100vw - 320px) / 9), 240px) !important;
                width: clamp(170px, calc((100vw - 320px) / 9), 240px) !important;
                max-width: 240px !important;
            }
        }

        @media (max-width: 1399px) {
            .pvs-scroll-item {
                flex-basis: clamp(140px, calc((100vw - 190px) / 6), 205px) !important;
                width: clamp(140px, calc((100vw - 190px) / 6), 205px) !important;
                min-width: 140px !important;
            }
        }

        @media (max-width: 991px) {
            .pvs-scroll-item {
                flex-basis: clamp(118px, calc((100vw - 54px) / 3), 165px) !important;
                width: clamp(118px, calc((100vw - 54px) / 3), 165px) !important;
                min-width: 118px !important;
                max-width: 165px !important;
            }
            .pvs-scroll-list { gap: 8px !important; }
            .pvs-scroll-item .splide__item-title { font-size: 12px !important; }
        }

        @media (max-width: 520px) {
            .pvs-scroll-item {
                flex-basis: 128px !important;
                width: 128px !important;
                min-width: 128px !important;
                max-width: 128px !important;
            }
        }

        @media (max-width: 380px) {
            .pvs-scroll-item {
                flex-basis: 118px !important;
                width: 118px !important;
                min-width: 118px !important;
                max-width: 118px !important;
            }
        }

        @media (hover: hover) and (pointer: fine) {
            .pvs-scroll-item:hover,
            .item-wrap:hover {
                z-index: 80 !important;
            }

            .pvs-scroll-item:hover .splide__item,
            .item-wrap:hover {
                transform: scale(1.035) !important;
                box-shadow: none !important;
            }

            .pvs-scroll-item:hover .splide__img-wrap,
            .item-wrap:hover .item-img {
                box-shadow: 0 0 0 2px rgba(28,199,73,.88), 0 14px 34px rgba(0,0,0,.55), 0 0 28px rgba(28,199,73,.34) !important;
            }

            .pvs-scroll-item:hover .splide__img,
            .item-wrap:hover .desc-img {
                filter: brightness(.78) !important;
                transform: none !important;
            }

            .pvs-scroll-item:hover .splide__img-wrap::before,
            .pvs-scroll-item:hover .splide__img-wrap::after,
            .item-wrap:hover .item-img::before,
            .item-wrap:hover .item-img::after {
                opacity: 1 !important;
            }

            .pvs-scroll-item:hover .splide__img-wrap::after,
            .item-wrap:hover .item-img::after {
                transform: translate(-50%, -50%) scale(1) !important;
            }

            .pvs-scroll-item:hover .splide__item-title,
            .item-wrap:hover .item-title {
                color: #1cc749 !important;
                box-shadow: none !important;
                text-shadow: none !important;
            }
        }

        @media (hover: none), (pointer: coarse), (max-width: 991px) {
            .pvs-scroll-slider {
                cursor: default !important;
                touch-action: pan-x pan-y !important;
            }

            .pvs-scroll-item:hover .splide__item,
            .item-wrap:hover {
                transform: none !important;
                box-shadow: none !important;
            }

            .pvs-touch-active .splide__item,
            .item-wrap.pvs-touch-active,
            .pvs-scroll-item a:active .splide__item,
            .item-wrap .item-link:active {
                transform: scale(1.02) !important;
                box-shadow: none !important;
                z-index: 80 !important;
            }

            .pvs-touch-active .splide__img-wrap,
            .item-wrap.pvs-touch-active .item-img,
            .pvs-scroll-item a:active .splide__img-wrap,
            .item-wrap .item-link:active .item-img {
                box-shadow: 0 0 0 2px rgba(28,199,73,.88), 0 8px 22px rgba(0,0,0,.45) !important;
            }

            .pvs-touch-active .splide__img,
            .item-wrap.pvs-touch-active .desc-img,
            .pvs-scroll-item a:active .splide__img,
            .item-wrap .item-link:active .desc-img {
                filter: brightness(.82) !important;
            }

            .pvs-touch-active .splide__img-wrap::before,
            .pvs-touch-active .splide__img-wrap::after,
            .item-wrap.pvs-touch-active .item-img::before,
            .item-wrap.pvs-touch-active .item-img::after,
            .pvs-scroll-item a:active .splide__img-wrap::before,
            .pvs-scroll-item a:active .splide__img-wrap::after,
            .item-wrap .item-link:active .item-img::before,
            .item-wrap .item-link:active .item-img::after {
                opacity: 1 !important;
            }

            .pvs-touch-active .splide__img-wrap::after,
            .item-wrap.pvs-touch-active .item-img::after,
            .pvs-scroll-item a:active .splide__img-wrap::after,
            .item-wrap .item-link:active .item-img::after {
                transform: translate(-50%, -50%) scale(1) !important;
            }
        }
    

        /* PVS FINAL v1.5.0: mobile bỏ nút play, desktop hiện mũi tên, chống cắt mép khi hover */
        .pvs-slider-wrapper {
            padding-left: clamp(12px, 1.8vw, 34px) !important;
            padding-right: clamp(12px, 1.8vw, 34px) !important;
            margin-left: calc(clamp(12px, 1.8vw, 34px) * -1) !important;
            margin-right: calc(clamp(12px, 1.8vw, 34px) * -1) !important;
            overflow: visible !important;
        }

        .pvs-scroll-slider {
            padding: 14px clamp(12px, 1.8vw, 34px) 26px !important;
            margin: -14px calc(clamp(12px, 1.8vw, 34px) * -1) -26px !important;
            overflow-x: auto !important;
            overflow-y: visible !important;
            scroll-padding-left: clamp(12px, 1.8vw, 34px) !important;
            scroll-padding-right: clamp(12px, 1.8vw, 34px) !important;
        }

        .pvs-scroll-list {
            padding-left: 2px !important;
            padding-right: 2px !important;
        }

        @media (hover: hover) and (pointer: fine) {
            .pvs-scroll-item:hover .splide__item,
            .item-wrap:hover {
                transform: scale(1.032) !important;
                transform-origin: center top !important;
            }

            .pvs-scroll-item:hover .splide__img-wrap,
            .item-wrap:hover .item-img {
                box-shadow: 0 0 0 2px #1cc749, 0 14px 30px rgba(0,0,0,.55), 0 0 22px rgba(28,199,73,.32) !important;
            }

            .pvs-scroll-item:hover .splide__item-title,
            .item-wrap:hover .item-title {
                color: #1cc749 !important;
                background: transparent !important;
                outline: none !important;
                border: 0 !important;
                box-shadow: none !important;
            }
        }

        @media (hover: none), (pointer: coarse), (max-width: 991px) {
            .pvs-scroll-item .splide__img-wrap::after,
            .item-wrap .item-img::after,
            .pvs-touch-active .splide__img-wrap::after,
            .item-wrap.pvs-touch-active .item-img::after,
            .pvs-scroll-item a:active .splide__img-wrap::after,
            .item-wrap .item-link:active .item-img::after {
                content: none !important;
                display: none !important;
                opacity: 0 !important;
            }

            .pvs-touch-active .splide__img-wrap,
            .item-wrap.pvs-touch-active .item-img,
            .pvs-scroll-item a:active .splide__img-wrap,
            .item-wrap .item-link:active .item-img {
                box-shadow: 0 0 0 2px #1cc749, 0 8px 18px rgba(0,0,0,.42), 0 0 16px rgba(28,199,73,.28) !important;
            }

            .pvs-touch-active .splide__item,
            .item-wrap.pvs-touch-active,
            .pvs-scroll-item a:active .splide__item,
            .item-wrap .item-link:active {
                transform: scale(1.018) !important;
                transform-origin: center top !important;
            }
        }

        @media (min-width: 992px) {
            .pvs-slider-arrow {
                display: flex !important;
                opacity: .96 !important;
                visibility: visible !important;
                pointer-events: auto !important;
                z-index: 999 !important;
            }
            .pvs-slider-prev { left: 2px !important; }
            .pvs-slider-next { right: 2px !important; }
            .pvs-slider-arrow:disabled {
                opacity: .32 !important;
                visibility: visible !important;
                pointer-events: none !important;
            }
            .pvs-slider-wrapper.pvs-no-overflow .pvs-slider-arrow {
                display: none !important;
            }
        }

        @media (max-width: 991px) {
            .pvs-slider-wrapper {
                padding-left: 0 !important;
                padding-right: 0 !important;
                margin-left: 0 !important;
                margin-right: 0 !important;
            }
            .pvs-scroll-slider {
                padding: 8px 8px 18px !important;
                margin: -8px -8px -18px !important;
            }
            .pvs-slider-arrow { display: none !important; }
        }

/* --- migrated from <style id="pvs-final-layout-fix-v160"> in layout.blade.php --- */
/* PVS FINAL v1.6.0: sửa mép phải/trái, bỏ cursor kéo, giữ hover poster-only, responsive desktop/mobile/tablet/TV */
        html, body {
            max-width: 100% !important;
            overflow-x: hidden !important;
        }

        .app, .main, .Main.Container, .Main.Container > .container,
        .app .container, .firm-by-category {
            max-width: 100% !important;
            box-sizing: border-box !important;
        }

        .Main.Container > .container,
        .app .main > .Main.Container > .container {
            width: 100% !important;
            max-width: 100% !important;
            padding-left: clamp(14px, 2.4vw, 46px) !important;
            padding-right: clamp(14px, 2.4vw, 46px) !important;
            margin-left: auto !important;
            margin-right: auto !important;
            overflow: visible !important;
        }

        .firm-by-category {
            width: 100% !important;
            margin-left: 0 !important;
            margin-right: 0 !important;
            overflow: visible !important;
        }

        .firm-by-category .myui-block-header,
        .firm-by-category .title-category {
            margin-left: 0 !important;
            margin-right: 0 !important;
        }

        .pvs-slider-wrapper {
            position: relative !important;
            width: 100% !important;
            max-width: 100% !important;
            box-sizing: border-box !important;
            padding-left: 0 !important;
            padding-right: 0 !important;
            margin-left: 0 !important;
            margin-right: 0 !important;
            overflow: visible !important;
        }

        .pvs-scroll-slider {
            width: 100% !important;
            max-width: 100% !important;
            box-sizing: border-box !important;
            overflow-x: auto !important;
            overflow-y: hidden !important;
            scroll-behavior: smooth !important;
            -webkit-overflow-scrolling: touch !important;
            overscroll-behavior-x: contain !important;
            touch-action: pan-x pan-y !important;
            cursor: default !important;
            padding: 14px clamp(12px, 1.6vw, 30px) 30px !important;
            margin: -14px 0 -30px !important;
            scroll-padding-left: clamp(12px, 1.6vw, 30px) !important;
            scroll-padding-right: clamp(28px, 5vw, 86px) !important;
        }

        .pvs-scroll-slider.is-dragging,
        .pvs-scroll-slider:active {
            cursor: default !important;
            scroll-behavior: auto !important;
        }

        .pvs-scroll-slider::-webkit-scrollbar {
            display: none !important;
        }
        .pvs-scroll-slider {
            scrollbar-width: none !important;
            -ms-overflow-style: none !important;
        }

        .pvs-scroll-list {
            display: flex !important;
            flex-wrap: nowrap !important;
            align-items: flex-start !important;
            gap: clamp(10px, 1vw, 16px) !important;
            width: max-content !important;
            min-width: 100% !important;
            box-sizing: border-box !important;
            padding-left: 0 !important;
            padding-right: clamp(34px, 6vw, 110px) !important;
            margin: 0 !important;
        }

        .pvs-scroll-item {
            position: relative !important;
            overflow: visible !important;
            z-index: 1 !important;
            box-sizing: border-box !important;
            flex: 0 0 clamp(136px, calc((100vw - 190px) / 9), 202px) !important;
            width: clamp(136px, calc((100vw - 190px) / 9), 202px) !important;
            min-width: 136px !important;
            max-width: 202px !important;
        }

        .pvs-scroll-item a,
        .pvs-scroll-item .splide__item {
            display: block !important;
            width: 100% !important;
            overflow: visible !important;
            position: relative !important;
            box-shadow: none !important;
            background: transparent !important;
            border: 0 !important;
            outline: 0 !important;
            text-decoration: none !important;
        }

        .pvs-scroll-item .splide__img-wrap {
            position: relative !important;
            width: 100% !important;
            aspect-ratio: 2 / 3 !important;
            height: auto !important;
            overflow: hidden !important;
            border-radius: 7px !important;
            background: #111 !important;
            box-shadow: none !important;
            transition: box-shadow .2s ease, transform .2s ease, filter .2s ease !important;
        }

        .pvs-scroll-item .splide__img,
        .firm-by-category .pvs-scroll-item .splide__img {
            width: 100% !important;
            height: 100% !important;
            object-fit: cover !important;
            display: block !important;
            transform: none !important;
            opacity: 1 !important;
            visibility: visible !important;
        }

        .pvs-scroll-item .episodes {
            position: absolute !important;
            top: 0 !important;
            left: 0 !important;
            z-index: 30 !important;
            pointer-events: none !important;
            opacity: 1 !important;
        }

        .pvs-scroll-item .splide__item-title {
            display: -webkit-box !important;
            -webkit-box-orient: vertical !important;
            -webkit-line-clamp: 2 !important;
            overflow: hidden !important;
            text-overflow: ellipsis !important;
            min-height: 40px !important;
            line-height: 20px !important;
            margin-top: 8px !important;
            padding: 0 !important;
            color: #fff !important;
            background: transparent !important;
            border: 0 !important;
            outline: 0 !important;
            box-shadow: none !important;
            transition: color .2s ease !important;
        }

        .pvs-scroll-item .splide__img-wrap::before {
            content: "" !important;
            position: absolute !important;
            inset: 0 !important;
            background: rgba(0,0,0,.28) !important;
            opacity: 0 !important;
            z-index: 8 !important;
            pointer-events: none !important;
            transition: opacity .2s ease !important;
        }

        .pvs-scroll-item .splide__img-wrap::after {
            content: "▶" !important;
            position: absolute !important;
            left: 50% !important;
            top: 50% !important;
            width: clamp(48px, 4.1vw, 68px) !important;
            height: clamp(48px, 4.1vw, 68px) !important;
            border-radius: 50% !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            background: #1cc749 !important;
            color: #fff !important;
            font-size: clamp(20px, 1.8vw, 30px) !important;
            line-height: 1 !important;
            text-indent: 4px !important;
            opacity: 0 !important;
            z-index: 12 !important;
            pointer-events: none !important;
            transform: translate(-50%, -50%) scale(.76) !important;
            box-shadow: 0 0 0 4px rgba(255,255,255,.13), 0 10px 30px rgba(28,199,73,.55) !important;
            transition: opacity .2s ease, transform .2s ease !important;
        }

        @media (hover: hover) and (pointer: fine) {
            .pvs-scroll-item:hover { z-index: 90 !important; }
            .pvs-scroll-item:hover .splide__item {
                transform: scale(1.035) !important;
                transform-origin: center top !important;
            }
            .pvs-scroll-item:hover .splide__img-wrap {
                box-shadow: 0 0 0 2px #1cc749, 0 14px 30px rgba(0,0,0,.55), 0 0 22px rgba(28,199,73,.32) !important;
            }
            .pvs-scroll-item:hover .splide__img {
                filter: brightness(.82) !important;
            }
            .pvs-scroll-item:hover .splide__img-wrap::before,
            .pvs-scroll-item:hover .splide__img-wrap::after {
                opacity: 1 !important;
            }
            .pvs-scroll-item:hover .splide__img-wrap::after {
                transform: translate(-50%, -50%) scale(1) !important;
            }
            .pvs-scroll-item:hover .splide__item-title {
                color: #1cc749 !important;
                background: transparent !important;
                box-shadow: none !important;
                border: 0 !important;
                outline: 0 !important;
            }
        }

        @media (hover: none), (pointer: coarse), (max-width: 991px) {
            .pvs-scroll-slider {
                cursor: default !important;
                padding: 10px 10px 22px !important;
                margin: -10px 0 -22px !important;
                overflow-x: auto !important;
                overflow-y: hidden !important;
            }
            .pvs-scroll-list {
                gap: 8px !important;
                padding-right: 24px !important;
            }
            .pvs-scroll-item .splide__img-wrap::after,
            .pvs-touch-active .splide__img-wrap::after,
            .pvs-scroll-item a:active .splide__img-wrap::after {
                content: none !important;
                display: none !important;
                opacity: 0 !important;
            }
            .pvs-scroll-item:hover .splide__item {
                transform: none !important;
            }
            .pvs-touch-active .splide__item,
            .pvs-scroll-item a:active .splide__item {
                transform: scale(1.018) !important;
                transform-origin: center top !important;
            }
            .pvs-touch-active .splide__img-wrap,
            .pvs-scroll-item a:active .splide__img-wrap {
                box-shadow: 0 0 0 2px #1cc749, 0 8px 18px rgba(0,0,0,.42), 0 0 16px rgba(28,199,73,.28) !important;
            }
            .pvs-touch-active .splide__img,
            .pvs-scroll-item a:active .splide__img {
                filter: brightness(.86) !important;
            }
            .pvs-slider-arrow { display: none !important; }
        }

        @media (min-width: 1800px) {
            .pvs-scroll-item {
                flex-basis: clamp(180px, calc((100vw - 260px) / 10), 230px) !important;
                width: clamp(180px, calc((100vw - 260px) / 10), 230px) !important;
                max-width: 230px !important;
            }
        }

        @media (min-width: 1200px) and (max-width: 1500px) {
            .pvs-scroll-item {
                flex-basis: clamp(132px, calc((100vw - 170px) / 8), 178px) !important;
                width: clamp(132px, calc((100vw - 170px) / 8), 178px) !important;
                max-width: 178px !important;
            }
        }

        @media (min-width: 992px) and (max-width: 1199px) {
            .pvs-scroll-item {
                flex-basis: clamp(132px, calc((100vw - 130px) / 6), 168px) !important;
                width: clamp(132px, calc((100vw - 130px) / 6), 168px) !important;
                max-width: 168px !important;
            }
        }

        @media (min-width: 768px) and (max-width: 991px) {
            .Main.Container > .container,
            .app .main > .Main.Container > .container {
                padding-left: 18px !important;
                padding-right: 18px !important;
            }
            .pvs-scroll-item {
                flex-basis: clamp(140px, calc((100vw - 82px) / 5), 172px) !important;
                width: clamp(140px, calc((100vw - 82px) / 5), 172px) !important;
                min-width: 140px !important;
                max-width: 172px !important;
            }
        }

        @media (min-width: 481px) and (max-width: 767px) {
            .Main.Container > .container,
            .app .main > .Main.Container > .container {
                padding-left: 12px !important;
                padding-right: 12px !important;
            }
            .pvs-scroll-item {
                flex-basis: clamp(128px, calc((100vw - 48px) / 3), 158px) !important;
                width: clamp(128px, calc((100vw - 48px) / 3), 158px) !important;
                min-width: 128px !important;
                max-width: 158px !important;
            }
            .pvs-scroll-item .splide__item-title { font-size: 13px !important; line-height: 18px !important; min-height: 36px !important; }
        }

        @media (max-width: 480px) {
            .Main.Container > .container,
            .app .main > .Main.Container > .container {
                padding-left: 8px !important;
                padding-right: 8px !important;
            }
            .pvs-scroll-item {
                flex-basis: 122px !important;
                width: 122px !important;
                min-width: 122px !important;
                max-width: 122px !important;
            }
            .pvs-scroll-item .splide__item-title { font-size: 12px !important; line-height: 17px !important; min-height: 34px !important; }
            .pvs-scroll-item .episodes { font-size: 11px !important; }
        }

        @media (max-width: 385px) {
            .pvs-scroll-item {
                flex-basis: 112px !important;
                width: 112px !important;
                min-width: 112px !important;
                max-width: 112px !important;
            }
        }

        @media (min-width: 992px) {
            .pvs-slider-arrow {
                display: flex !important;
                opacity: .96 !important;
                visibility: visible !important;
                pointer-events: auto !important;
                position: absolute !important;
                top: 42% !important;
                transform: translateY(-50%) !important;
                z-index: 999 !important;
                width: 48px !important;
                height: 64px !important;
                border-radius: 12px !important;
                align-items: center !important;
                justify-content: center !important;
                background: rgba(0,0,0,.58) !important;
                color: #fff !important;
                box-shadow: 0 8px 24px rgba(0,0,0,.35) !important;
            }
            .pvs-slider-prev { left: 4px !important; }
            .pvs-slider-next { right: 4px !important; }
            .pvs-slider-arrow i { font-size: 34px !important; line-height: 1 !important; }
            .pvs-slider-arrow:disabled {
                opacity: .26 !important;
                visibility: visible !important;
                pointer-events: none !important;
            }
            .pvs-slider-wrapper.pvs-no-overflow .pvs-slider-arrow {
                display: none !important;
            }
        }

        /* Catalog page fallback: poster-only green border, no mobile play */
        .item-wrap { overflow: visible !important; }
        .item-wrap .item-img { overflow: hidden !important; border-radius: 7px !important; }
        @media (hover: hover) and (pointer: fine) {
            .item-wrap:hover { transform: scale(1.025) !important; box-shadow: none !important; }
            .item-wrap:hover .item-img { box-shadow: 0 0 0 2px #1cc749, 0 12px 26px rgba(0,0,0,.5), 0 0 18px rgba(28,199,73,.28) !important; }
            .item-wrap:hover .item-title { color: #1cc749 !important; box-shadow: none !important; background: transparent !important; }
        }
        @media (hover: none), (pointer: coarse), (max-width: 991px) {
            .item-wrap .item-img::after,
            .item-wrap.pvs-touch-active .item-img::after,
            .item-wrap .item-link:active .item-img::after,
            .item-wrap .play-button-container { display: none !important; content: none !important; opacity: 0 !important; }
            .item-wrap.pvs-touch-active .item-img,
            .item-wrap .item-link:active .item-img { box-shadow: 0 0 0 2px #1cc749, 0 8px 18px rgba(0,0,0,.42) !important; }
        }
    

        /* PVS FINAL v1.6.2: bỏ cursor kéo/grab và bỏ cuộn ngang bằng chuột giữa */
        .pvs-scroll-slider,
        .pvs-scroll-slider:hover,
        .pvs-scroll-slider:active,
        .pvs-scroll-slider.is-dragging,
        .pvs-scroll-slider * {
            cursor: default !important;
        }
        .pvs-scroll-slider {
            overscroll-behavior-x: contain !important;
        }


/* PVS v178 - Chuẩn hóa poster link trực tiếp 490x654
   Khi dán link ảnh ngoài (TikTok/CDN...) vào poster, giao diện tự ép đúng khung 490x654, không méo ảnh.
   Lưu ý: CSS resize kích thước hiển thị; muốn giảm dung lượng thật cần ảnh/CDN resize phía server. */
.firm-by-category .pvs-scroll-item .splide__img-wrap,
.pvs-scroll-item .splide__img-wrap,
.item-wrap .item-img {
    width: 100% !important;
    aspect-ratio: 490 / 654 !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    background: #151515 !important;
    border-radius: 7px !important;
}

.firm-by-category .pvs-scroll-item img.splide__img,
.pvs-scroll-item img.splide__img,
img.pvs-poster-img,
img.pvs-poster-ratio,
.item-wrap .item-img img.desc-img {
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: 490 / 654 !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
    max-width: 100% !important;
    background: #151515 !important;
}

.firm-by-category .pvs-scroll-item img.splide__img,
.pvs-scroll-item img.splide__img,
.item-wrap .item-img img.desc-img {
    contain: layout paint !important;
}


/* PVS HOME ALIGN FIX: chỉ chỉnh căn lề cho section phim thường và Top 10 ngoài trang chủ.
   Không đụng slider đầu trang, hero_collection, landscape_simple/featured. */
.Main.Container.pvs-normal-home-section > .container,
.Main.Container.pvs-top10-section > .container {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: clamp(10px, 1.15vw, 22px) !important;
    padding-right: clamp(10px, 1.15vw, 22px) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.Main.Container.pvs-normal-home-section .firm-by-category {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.Main.Container.pvs-normal-home-section .pvs-scroll-slider,
.Main.Container.pvs-top10-section .pvs-scroll-slider {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
@media (max-width: 767px) {
    .Main.Container.pvs-normal-home-section > .container,
    .Main.Container.pvs-top10-section > .container {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }
}

/* --- migrated from <style id="pvs-hover-left-crop-safe-fix"> in layout.blade.php --- */
/* PVS: sửa lỗi hover bị cắt/mất góc trái ở item đầu tiên.
   Không phóng to toàn bộ card/slide nữa; chỉ tạo viền và zoom nhẹ ảnh bên trong khung. */
@media (hover: hover) and (pointer: fine) {
    .Main.Container.pvs-normal-home-section .pvs-scroll-item:hover,
    .Main.Container.pvs-top10-section .pvs-scroll-item:hover,
    .firm-by-category .item-wrap:hover {
        transform: none !important;
        z-index: 80 !important;
    }

    .Main.Container.pvs-normal-home-section .pvs-scroll-item:hover .splide__item,
    .Main.Container.pvs-top10-section .pvs-scroll-item:hover .splide__item,
    .firm-by-category .item-wrap:hover,
    .item-wrap:hover {
        transform: none !important;
        box-shadow: none !important;
    }

    .Main.Container.pvs-normal-home-section .pvs-scroll-item:hover .splide__img-wrap,
    .Main.Container.pvs-top10-section .pvs-scroll-item:hover .splide__img-wrap,
    .firm-by-category .item-wrap:hover .item-img,
    .item-wrap:hover .item-img {
        overflow: hidden !important;
        box-shadow: 0 0 0 2px rgba(28,199,73,.88), 0 14px 34px rgba(0,0,0,.55), 0 0 28px rgba(28,199,73,.34) !important;
    }

    .Main.Container.pvs-normal-home-section .pvs-scroll-item:hover .splide__img,
    .Main.Container.pvs-top10-section .pvs-scroll-item:hover .splide__img,
    .firm-by-category .item-wrap:hover .desc-img,
    .item-wrap:hover .desc-img {
        transform: scale(1.035) !important;
        transform-origin: center center !important;
        filter: brightness(.78) !important;
    }

    /* Giữ container có thể kéo ngang. Không dùng overflow: visible ở đây vì sẽ làm mất scrollLeft/drag. */
    .Main.Container.pvs-normal-home-section .pvs-scroll-slider,
    .Main.Container.pvs-top10-section .pvs-scroll-slider {
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
    }
    .Main.Container.pvs-normal-home-section .pvs-scroll-slider::-webkit-scrollbar,
    .Main.Container.pvs-top10-section .pvs-scroll-slider::-webkit-scrollbar {
        display: none !important;
    }

    .Main.Container.pvs-normal-home-section .splide__track,
    .Main.Container.pvs-top10-section .splide__track {
        overflow: hidden !important;
        padding-top: 4px !important;
        padding-bottom: 10px !important;
    }

    .Main.Container.pvs-normal-home-section .pvs-scroll-item:first-child,
    .Main.Container.pvs-top10-section .pvs-scroll-item:first-child {
        margin-left: 0 !important;
    }
}

/* ========================================================================== 
   PVS FINAL RESPONSIVE + IMAGE VISIBILITY PATCH
   Chỉ sửa trong home-modern.css, không chèn CSS vào section Blade.
   Mục tiêu:
   - Điện thoại ngang/iPad dọc: card không bị phóng quá to.
   - iPad ngang/desktop/TV: giữ desktop, card không tự phóng quá mức.
   - Ảnh section luôn hiện khi đã có src, không bị opacity/lazy overlay che.
   ========================================================================== */

.pvs-home-sections .pvs-ranking-img,
.pvs-home-sections .pvs-thumb-img,
.pvs-home-sections .splide__img,
.pvs-home-sections .desc-img,
.pvs-home-sections img[data-src],
.pvs-home-sections img[data-original],
.pvs-home-sections img.lazy,
.pvs-home-sections img.lazyload,
.pvs-home-sections img.lazyloaded{
    opacity:1 !important;
    visibility:visible !important;
    display:block !important;
    filter:none;
}

.pvs-home-sections .pvs-ranking-track,
.pvs-home-sections .pvs-thumb-track,
.pvs-home-sections .pvs-interest-track{
    max-width:100% !important;
    -webkit-overflow-scrolling:touch !important;
    overscroll-behavior-x:contain !important;
}

/* Mobile dọc: giữ layout gọn hiện tại */
@media (max-width:575.98px){
    .pvs-home-sections .pvs-interest-card{
        flex:0 0 calc((100vw - 34px)/2) !important;
        width:calc((100vw - 34px)/2) !important;
        min-width:calc((100vw - 34px)/2) !important;
        max-width:calc((100vw - 34px)/2) !important;
    }
    .pvs-home-sections .pvs-ranking-item{
        flex:0 0 calc((100vw - 44px)/2) !important;
        width:calc((100vw - 44px)/2) !important;
        min-width:calc((100vw - 44px)/2) !important;
        max-width:calc((100vw - 44px)/2) !important;
    }
    .pvs-home-sections .pvs-thumb-item{
        flex:0 0 calc((100vw - 32px)/3) !important;
        width:calc((100vw - 32px)/3) !important;
        min-width:calc((100vw - 32px)/3) !important;
        max-width:calc((100vw - 32px)/3) !important;
    }
}

/* Điện thoại quay ngang: không cho thumb/card phóng to như desktop */
@media (min-width:576px) and (max-width:767.98px) and (orientation:landscape){
    .pvs-home-sections{
        padding-left:14px !important;
        padding-right:14px !important;
    }
    .pvs-home-sections .pvs-interest-track,
    .pvs-home-sections .pvs-ranking-track,
    .pvs-home-sections .pvs-thumb-track{
        gap:12px !important;
        padding-left:2px !important;
        padding-right:2px !important;
    }
    .pvs-home-sections .pvs-interest-card{
        flex:0 0 calc((100vw - 78px)/3) !important;
        width:calc((100vw - 78px)/3) !important;
        min-width:calc((100vw - 78px)/3) !important;
        max-width:calc((100vw - 78px)/3) !important;
    }
    .pvs-home-sections .pvs-interest-link{
        min-height:92px !important;
        padding:14px 16px !important;
        border-radius:18px !important;
    }
    .pvs-home-sections .pvs-interest-name{font-size:18px !important;line-height:1.15 !important;}

    .pvs-home-sections .pvs-ranking-item{
        flex:0 0 calc((100vw - 82px)/3) !important;
        width:calc((100vw - 82px)/3) !important;
        min-width:calc((100vw - 82px)/3) !important;
        max-width:calc((100vw - 82px)/3) !important;
    }
    .pvs-home-sections .pvs-ranking-rank{font-size:34px !important;bottom:-8px !important;letter-spacing:-2px !important;}
    .pvs-home-sections .pvs-ranking-info{margin-top:14px !important;}
    .pvs-home-sections .pvs-ranking-name{font-size:12px !important;line-height:1.22 !important;}
    .pvs-home-sections .pvs-ranking-origin{font-size:10.5px !important;margin-top:2px !important;}

    .pvs-home-sections .pvs-thumb-item{
        flex:0 0 calc((100vw - 90px)/4) !important;
        width:calc((100vw - 90px)/4) !important;
        min-width:calc((100vw - 90px)/4) !important;
        max-width:calc((100vw - 90px)/4) !important;
    }
    .pvs-home-sections .pvs-thumb-name{font-size:11.5px !important;line-height:1.22 !important;}
    .pvs-home-sections .pvs-thumb-origin{font-size:10.5px !important;margin-top:2px !important;}
}

/* iPad/tablet dọc: layout riêng, nhỏ gọn hơn; iPad ngang giữ desktop */
@media (min-width:768px) and (max-width:991.98px) and (orientation:portrait){
    .pvs-home-sections{
        padding-left:18px !important;
        padding-right:18px !important;
    }
    .pvs-home-sections .pvs-interest-track,
    .pvs-home-sections .pvs-ranking-track,
    .pvs-home-sections .pvs-thumb-track{
        gap:14px !important;
        padding-left:2px !important;
        padding-right:2px !important;
    }
    .pvs-home-sections .pvs-interest-card{
        flex:0 0 calc((100vw - 88px)/3) !important;
        width:calc((100vw - 88px)/3) !important;
        min-width:calc((100vw - 88px)/3) !important;
        max-width:calc((100vw - 88px)/3) !important;
    }
    .pvs-home-sections .pvs-interest-link{
        min-height:108px !important;
        padding:16px 18px !important;
        border-radius:22px !important;
    }
    .pvs-home-sections .pvs-interest-name{font-size:20px !important;line-height:1.16 !important;}

    .pvs-home-sections .pvs-ranking-item{
        flex:0 0 calc((100vw - 102px)/3) !important;
        width:calc((100vw - 102px)/3) !important;
        min-width:calc((100vw - 102px)/3) !important;
        max-width:calc((100vw - 102px)/3) !important;
    }
    .pvs-home-sections .pvs-ranking-rank{font-size:38px !important;bottom:-9px !important;letter-spacing:-2.5px !important;}
    .pvs-home-sections .pvs-ranking-info{margin-top:15px !important;}
    .pvs-home-sections .pvs-ranking-name{font-size:12.5px !important;line-height:1.22 !important;}
    .pvs-home-sections .pvs-ranking-origin{font-size:10.8px !important;margin-top:2px !important;}

    .pvs-home-sections .pvs-thumb-item{
        flex:0 0 calc((100vw - 116px)/4) !important;
        width:calc((100vw - 116px)/4) !important;
        min-width:calc((100vw - 116px)/4) !important;
        max-width:calc((100vw - 116px)/4) !important;
    }
    .pvs-home-sections .pvs-thumb-name{font-size:12px !important;line-height:1.24 !important;}
    .pvs-home-sections .pvs-thumb-origin{font-size:10.8px !important;margin-top:2px !important;}
}

/* Desktop nhỏ / iPad ngang: giữ desktop nhưng giới hạn card */
@media (min-width:992px) and (max-width:1199.98px){
    .pvs-home-sections .pvs-ranking-item{flex:0 0 170px !important;width:170px !important;min-width:170px !important;max-width:170px !important;}
    .pvs-home-sections .pvs-thumb-item{flex:0 0 165px !important;width:165px !important;min-width:165px !important;max-width:165px !important;}
    .pvs-home-sections .pvs-interest-card{flex:0 0 210px !important;width:210px !important;min-width:210px !important;max-width:210px !important;}
}

/* TV / màn hình lớn: tăng số lượng card hiển thị, không tăng kích thước quá mức */
@media (min-width:1920px){
    .pvs-home-sections{padding-left:44px !important;padding-right:44px !important;}
    .pvs-home-sections .pvs-ranking-item{flex:0 0 185px !important;width:185px !important;min-width:185px !important;max-width:185px !important;}
    .pvs-home-sections .pvs-thumb-item{flex:0 0 180px !important;width:180px !important;min-width:180px !important;max-width:180px !important;}
    .pvs-home-sections .pvs-interest-card{flex:0 0 235px !important;width:235px !important;min-width:235px !important;max-width:235px !important;}
}
@media (min-width:2560px){
    .pvs-home-sections{padding-left:56px !important;padding-right:56px !important;}
    .pvs-home-sections .pvs-ranking-item{flex:0 0 190px !important;width:190px !important;min-width:190px !important;max-width:190px !important;}
    .pvs-home-sections .pvs-thumb-item{flex:0 0 185px !important;width:185px !important;min-width:185px !important;max-width:185px !important;}
}

/* Giảm giật khi kéo bằng chuột trên desktop */
@media (hover:hover) and (pointer:fine) and (min-width:992px){
    .pvs-home-sections .pvs-ranking-track.is-dragging *,
    .pvs-home-sections .pvs-thumb-track.is-dragging *,
    .pvs-home-sections .pvs-interest-track.is-dragging *{
        transition:none !important;
        animation:none !important;
    }
    .pvs-home-sections .pvs-ranking-track.is-dragging .pvs-ranking-img,
    .pvs-home-sections .pvs-thumb-track.is-dragging .pvs-thumb-img{
        transform:none !important;
        filter:none !important;
    }
}



/* ==========================================================================
   PVS FINAL RESPONSIVE + IMAGE OVERRIDES (applied last)
   - Đặt cuối file để không bị các block Extracted ghi đè.
   - Không chèn CSS vào Blade section.
   ========================================================================== */

/* Ảnh trong các section phải hiện ngay, không bị lazy CSS/opacity cũ che */
.pvs-home-sections .pvs-ranking-img,
.pvs-home-sections .pvs-thumb-img,
.pvs-home-sections .pvs-categories-img,
.pvs-home-sections .pvs-landscape-featured img,
.pvs-home-sections .pvs-landscape-simple img,
.pvs-home-sections .pvs-hero-collection-section img,
.pvs-home-sections .FilmList .TPostBg,
.pvs-home-sections img.pvs-force-visible{
    opacity:1 !important;
    visibility:visible !important;
    filter:none;
}

/* Container chính: giữ full width, chỉ tạo khoảng thở hai bên */
.pvs-home-sections{
    width:100% !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
}

/* Desktop thường */
@media (min-width:992px) and (max-width:1919.98px){
    .pvs-home-sections{
        padding-left:28px !important;
        padding-right:28px !important;
    }
}

/* Desktop nhỏ / iPad ngang: giữ layout desktop nhưng card không phóng quá */
@media (min-width:992px) and (max-width:1199.98px){
    .pvs-home-sections .pvs-interest-card{
        flex:0 0 210px !important;
        width:210px !important;
        min-width:210px !important;
        max-width:210px !important;
    }
    .pvs-home-sections .pvs-ranking-item{
        flex:0 0 168px !important;
        width:168px !important;
        min-width:168px !important;
        max-width:168px !important;
    }
    .pvs-home-sections .pvs-thumb-item{
        flex:0 0 164px !important;
        width:164px !important;
        min-width:164px !important;
        max-width:164px !important;
    }
}

/* Mobile dọc: giữ thiết kế hiện tại, chỉ khóa kích thước để không phóng */
@media (max-width:575.98px){
    .pvs-home-sections{
        padding-left:10px !important;
        padding-right:10px !important;
    }

    .pvs-home-sections .pvs-interest-track{
        gap:10px !important;
        padding-left:2px !important;
        padding-right:2px !important;
    }
    .pvs-home-sections .pvs-interest-card{
        flex:0 0 calc((100vw - 34px)/2) !important;
        width:calc((100vw - 34px)/2) !important;
        min-width:calc((100vw - 34px)/2) !important;
        max-width:calc((100vw - 34px)/2) !important;
    }

    .pvs-home-sections .pvs-ranking-track{
        gap:10px !important;
        padding-left:4px !important;
        padding-right:4px !important;
    }
    .pvs-home-sections .pvs-ranking-item{
        flex:0 0 calc((100vw - 44px)/2) !important;
        width:calc((100vw - 44px)/2) !important;
        min-width:calc((100vw - 44px)/2) !important;
        max-width:calc((100vw - 44px)/2) !important;
    }
    .pvs-home-sections .pvs-ranking-rank{
        font-size:36px !important;
        bottom:-8px !important;
    }

    .pvs-home-sections .pvs-thumb-track{
        gap:10px !important;
        padding-left:2px !important;
        padding-right:2px !important;
    }
    .pvs-home-sections .pvs-thumb-item{
        flex:0 0 calc((100vw - 32px)/3) !important;
        width:calc((100vw - 32px)/3) !important;
        min-width:calc((100vw - 32px)/3) !important;
        max-width:calc((100vw - 32px)/3) !important;
    }
}

/* Điện thoại quay ngang: không dùng card desktop to */
@media (min-width:576px) and (max-width:991.98px) and (orientation:landscape){
    .pvs-home-sections{
        padding-left:14px !important;
        padding-right:14px !important;
    }

    .pvs-home-sections .pvs-interest-track{
        gap:12px !important;
        padding-left:2px !important;
        padding-right:2px !important;
    }
    .pvs-home-sections .pvs-interest-card{
        flex:0 0 calc((100vw - 78px)/3) !important;
        width:calc((100vw - 78px)/3) !important;
        min-width:calc((100vw - 78px)/3) !important;
        max-width:calc((100vw - 78px)/3) !important;
    }
    .pvs-home-sections .pvs-interest-link{
        min-height:112px !important;
        padding:18px !important;
        border-radius:24px !important;
    }
    .pvs-home-sections .pvs-interest-name{
        font-size:18px !important;
        line-height:1.15 !important;
    }

    .pvs-home-sections .pvs-ranking-track{
        gap:12px !important;
        padding-left:4px !important;
        padding-right:4px !important;
    }
    .pvs-home-sections .pvs-ranking-item{
        flex:0 0 calc((100vw - 82px)/3) !important;
        width:calc((100vw - 82px)/3) !important;
        min-width:calc((100vw - 82px)/3) !important;
        max-width:calc((100vw - 82px)/3) !important;
    }
    .pvs-home-sections .pvs-ranking-rank{
        font-size:38px !important;
        bottom:-9px !important;
    }
    .pvs-home-sections .pvs-ranking-name{
        font-size:12.5px !important;
    }
    .pvs-home-sections .pvs-ranking-origin{
        font-size:10.5px !important;
        margin-top:2px !important;
    }

    .pvs-home-sections .pvs-thumb-track{
        gap:12px !important;
        padding-left:4px !important;
        padding-right:4px !important;
    }
    .pvs-home-sections .pvs-thumb-item{
        flex:0 0 calc((100vw - 90px)/4) !important;
        width:calc((100vw - 90px)/4) !important;
        min-width:calc((100vw - 90px)/4) !important;
        max-width:calc((100vw - 90px)/4) !important;
    }
    .pvs-home-sections .pvs-thumb-name{
        font-size:12px !important;
        line-height:1.24 !important;
    }
    .pvs-home-sections .pvs-thumb-origin{
        font-size:10.5px !important;
        margin-top:2px !important;
    }
}

/* iPad/tablet dọc: layout riêng, không để thumb/card phóng như desktop */
@media (min-width:768px) and (max-width:991.98px) and (orientation:portrait){
    .pvs-home-sections{
        padding-left:18px !important;
        padding-right:18px !important;
    }

    .pvs-home-sections .pvs-interest-track{
        gap:14px !important;
        padding-left:2px !important;
        padding-right:2px !important;
    }
    .pvs-home-sections .pvs-interest-card{
        flex:0 0 calc((100vw - 92px)/3) !important;
        width:calc((100vw - 92px)/3) !important;
        min-width:calc((100vw - 92px)/3) !important;
        max-width:calc((100vw - 92px)/3) !important;
    }
    .pvs-home-sections .pvs-interest-link{
        min-height:122px !important;
        padding:20px !important;
        border-radius:26px !important;
    }
    .pvs-home-sections .pvs-interest-name{
        font-size:20px !important;
        line-height:1.16 !important;
    }

    .pvs-home-sections .pvs-ranking-track{
        gap:14px !important;
        padding-left:4px !important;
        padding-right:4px !important;
    }
    .pvs-home-sections .pvs-ranking-item{
        flex:0 0 calc((100vw - 106px)/3) !important;
        width:calc((100vw - 106px)/3) !important;
        min-width:calc((100vw - 106px)/3) !important;
        max-width:calc((100vw - 106px)/3) !important;
    }
    .pvs-home-sections .pvs-ranking-rank{
        font-size:40px !important;
        bottom:-9px !important;
    }
    .pvs-home-sections .pvs-ranking-name{
        font-size:13px !important;
    }
    .pvs-home-sections .pvs-ranking-origin{
        font-size:11px !important;
        margin-top:2px !important;
    }

    .pvs-home-sections .pvs-thumb-track{
        gap:14px !important;
        padding-left:4px !important;
        padding-right:4px !important;
    }
    .pvs-home-sections .pvs-thumb-item{
        flex:0 0 calc((100vw - 118px)/4) !important;
        width:calc((100vw - 118px)/4) !important;
        min-width:calc((100vw - 118px)/4) !important;
        max-width:calc((100vw - 118px)/4) !important;
    }
    .pvs-home-sections .pvs-thumb-name{
        font-size:12.5px !important;
    }
    .pvs-home-sections .pvs-thumb-origin{
        font-size:11px !important;
        margin-top:2px !important;
    }
}

/* TV / màn hình lớn: giống desktop nhưng card giữ kích thước đẹp, tăng số lượng card hiển thị */
@media (min-width:1920px){
    .pvs-home-sections{
        padding-left:44px !important;
        padding-right:44px !important;
    }
    .pvs-home-sections .pvs-interest-card{
        flex:0 0 235px !important;
        width:235px !important;
        min-width:235px !important;
        max-width:235px !important;
    }
    .pvs-home-sections .pvs-ranking-item{
        flex:0 0 185px !important;
        width:185px !important;
        min-width:185px !important;
        max-width:185px !important;
    }
    .pvs-home-sections .pvs-thumb-item{
        flex:0 0 180px !important;
        width:180px !important;
        min-width:180px !important;
        max-width:180px !important;
    }
}
@media (min-width:2560px){
    .pvs-home-sections{
        padding-left:56px !important;
        padding-right:56px !important;
    }
    .pvs-home-sections .pvs-ranking-item{
        flex:0 0 190px !important;
        width:190px !important;
        min-width:190px !important;
        max-width:190px !important;
    }
    .pvs-home-sections .pvs-thumb-item{
        flex:0 0 185px !important;
        width:185px !important;
        min-width:185px !important;
        max-width:185px !important;
    }
}

/* Khi đang kéo desktop: tắt hover/transition nặng để không giật */
@media (hover:hover) and (pointer:fine) and (min-width:992px){
    .pvs-home-sections .pvs-ranking-track.is-dragging *,
    .pvs-home-sections .pvs-thumb-track.is-dragging *,
    .pvs-home-sections .pvs-interest-track.is-dragging *{
        transition:none !important;
        animation:none !important;
    }
    .pvs-home-sections .pvs-ranking-track.is-dragging .pvs-ranking-img,
    .pvs-home-sections .pvs-thumb-track.is-dragging .pvs-thumb-img{
        transform:none !important;
        filter:none !important;
    }
}

/* ========================================================================== 
   PVS FINAL CLEAN RESPONSIVE OVERRIDES v2.5.0
   Mục tiêu:
   - Không sửa Blade, không chèn CSS inline vào section.
   - Mobile ngang/iPad dọc: card/thumb không phóng quá to.
   - iPad ngang/desktop/TV: giữ cảm giác desktop, card không phóng quá mức.
   - Override đặt cuối file để thắng các block Extracted cũ.
   ========================================================================== */

/* Container chung dưới slider: full width nhưng có khoảng thở hai bên */
.pvs-home-sections{
  width:100% !important;
  max-width:100% !important;
  margin-left:auto !important;
  margin-right:auto !important;
  box-sizing:border-box !important;
  padding-left:clamp(12px, 1.65vw, 36px) !important;
  padding-right:clamp(12px, 1.65vw, 36px) !important;
}
.pvs-home-sections .container{
  max-width:100% !important;
  width:100% !important;
}
.pvs-home-sections .pvs-interest-wrap,
.pvs-home-sections .pvs-ranking-wrap,
.pvs-home-sections .pvs-thumb-wrap{
  max-width:100% !important;
  overflow:visible !important;
}
.pvs-home-sections .pvs-interest-track,
.pvs-home-sections .pvs-ranking-track,
.pvs-home-sections .pvs-thumb-track{
  display:flex !important;
  flex-wrap:nowrap !important;
  max-width:100% !important;
  overflow-x:auto !important;
  overflow-y:visible !important;
  -webkit-overflow-scrolling:touch !important;
  scroll-behavior:smooth !important;
  scrollbar-width:none !important;
  overscroll-behavior-x:contain !important;
}
.pvs-home-sections .pvs-interest-track::-webkit-scrollbar,
.pvs-home-sections .pvs-ranking-track::-webkit-scrollbar,
.pvs-home-sections .pvs-thumb-track::-webkit-scrollbar{display:none !important;}

/* Ảnh trong section luôn hiện rõ, không để trạng thái lazy/opacity ẩn kéo dài */
.pvs-home-sections .pvs-ranking-img,
.pvs-home-sections .pvs-thumb-img,
.pvs-home-sections .pvs-landscape-img,
.pvs-home-sections .pvs-categories-showcase img,
.pvs-home-sections img.pvs-force-visible{
  opacity:1 !important;
  visibility:visible !important;
  filter:none;
}
.pvs-home-sections .pvs-ranking-img,
.pvs-home-sections .pvs-thumb-img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  image-rendering:auto !important;
  backface-visibility:hidden !important;
  transform:translateZ(0) !important;
}

/* Mobile dọc: giữ 2 cột dễ nhìn */
@media (max-width:575.98px){
  .pvs-home-sections{padding-left:10px !important;padding-right:10px !important;}

  .pvs-home-sections .pvs-interest-section{margin:24px 0 30px !important;}
  .pvs-home-sections .pvs-interest-track{gap:10px !important;padding:4px 2px 8px !important;scroll-snap-type:x mandatory !important;}
  .pvs-home-sections .pvs-interest-card{
    flex:0 0 calc((100vw - 34px)/2) !important;
    width:calc((100vw - 34px)/2) !important;
    min-width:calc((100vw - 34px)/2) !important;
    max-width:calc((100vw - 34px)/2) !important;
    scroll-snap-align:start !important;
  }
  .pvs-home-sections .pvs-interest-link{min-height:94px !important;padding:14px 15px !important;border-radius:20px !important;}
  .pvs-home-sections .pvs-interest-name{font-size:17px !important;line-height:1.15 !important;}
  .pvs-home-sections .pvs-interest-more{font-size:11px !important;margin-top:9px !important;}

  .pvs-home-sections .pvs-ranking-section{margin:24px 0 32px !important;}
  .pvs-home-sections .pvs-ranking-track{gap:12px !important;padding:4px 2px 8px !important;scroll-snap-type:x mandatory !important;}
  .pvs-home-sections .pvs-ranking-item{
    flex:0 0 calc((100vw - 40px)/2) !important;
    width:calc((100vw - 40px)/2) !important;
    min-width:calc((100vw - 40px)/2) !important;
    max-width:calc((100vw - 40px)/2) !important;
    scroll-snap-align:start !important;
  }
  .pvs-home-sections .pvs-ranking-rank{font-size:38px !important;bottom:-9px !important;letter-spacing:-2px !important;}
  .pvs-home-sections .pvs-ranking-info{margin-top:15px !important;}
  .pvs-home-sections .pvs-ranking-name{font-size:12.5px !important;line-height:1.22 !important;-webkit-line-clamp:2 !important;}
  .pvs-home-sections .pvs-ranking-origin{font-size:10.5px !important;line-height:1.2 !important;margin-top:2px !important;-webkit-line-clamp:1 !important;}
  .pvs-home-sections .pvs-ranking-badge{height:18px !important;font-size:9px !important;padding:0 5px !important;}
  .pvs-home-sections .pvs-ranking-arrow{display:none !important;}

  .pvs-home-sections .pvs-thumb-section{margin:24px 0 32px !important;}
  .pvs-home-sections .pvs-thumb-track{gap:12px !important;padding:4px 2px 8px !important;scroll-snap-type:x mandatory !important;}
  .pvs-home-sections .pvs-thumb-item{
    flex:0 0 calc((100vw - 40px)/2) !important;
    width:calc((100vw - 40px)/2) !important;
    min-width:calc((100vw - 40px)/2) !important;
    max-width:calc((100vw - 40px)/2) !important;
    scroll-snap-align:start !important;
  }
  .pvs-home-sections .pvs-thumb-name{font-size:12.5px !important;line-height:1.24 !important;-webkit-line-clamp:2 !important;}
  .pvs-home-sections .pvs-thumb-origin{font-size:10.5px !important;line-height:1.2 !important;margin-top:2px !important;-webkit-line-clamp:1 !important;}
  .pvs-home-sections .pvs-thumb-badge{height:18px !important;font-size:9px !important;padding:0 5px !important;}
  .pvs-home-sections .pvs-thumb-arrow{display:none !important;}
}

/* Điện thoại quay ngang: vẫn mobile, nhưng card nhỏ hơn và hiện nhiều hơn */
@media (min-width:576px) and (max-width:767.98px){
  .pvs-home-sections{padding-left:14px !important;padding-right:14px !important;}

  .pvs-home-sections .pvs-interest-track{gap:12px !important;padding:4px 2px 8px !important;scroll-snap-type:x mandatory !important;}
  .pvs-home-sections .pvs-interest-card{
    flex:0 0 168px !important;width:168px !important;min-width:168px !important;max-width:168px !important;
    scroll-snap-align:start !important;
  }
  .pvs-home-sections .pvs-interest-link{min-height:88px !important;padding:13px 15px !important;border-radius:18px !important;}
  .pvs-home-sections .pvs-interest-name{font-size:16px !important;line-height:1.15 !important;}

  .pvs-home-sections .pvs-ranking-track{gap:13px !important;padding:4px 2px 8px !important;scroll-snap-type:x mandatory !important;}
  .pvs-home-sections .pvs-ranking-item{
    flex:0 0 150px !important;width:150px !important;min-width:150px !important;max-width:150px !important;
    scroll-snap-align:start !important;
  }
  .pvs-home-sections .pvs-ranking-rank{font-size:34px !important;bottom:-8px !important;}
  .pvs-home-sections .pvs-ranking-info{margin-top:13px !important;}
  .pvs-home-sections .pvs-ranking-name{font-size:12px !important;line-height:1.2 !important;}
  .pvs-home-sections .pvs-ranking-origin{font-size:10px !important;margin-top:2px !important;}
  .pvs-home-sections .pvs-ranking-arrow{display:none !important;}

  .pvs-home-sections .pvs-thumb-track{gap:13px !important;padding:4px 2px 8px !important;scroll-snap-type:x mandatory !important;}
  .pvs-home-sections .pvs-thumb-item{
    flex:0 0 146px !important;width:146px !important;min-width:146px !important;max-width:146px !important;
    scroll-snap-align:start !important;
  }
  .pvs-home-sections .pvs-thumb-name{font-size:12px !important;line-height:1.22 !important;}
  .pvs-home-sections .pvs-thumb-origin{font-size:10px !important;margin-top:2px !important;}
  .pvs-home-sections .pvs-thumb-arrow{display:none !important;}
}

/* iPad/tablet dọc: không dùng layout desktop quá to */
@media (min-width:768px) and (max-width:1180px) and (orientation:portrait){
  .pvs-home-sections{padding-left:18px !important;padding-right:18px !important;}

  .pvs-home-sections .pvs-interest-track{gap:14px !important;padding:5px 2px 10px !important;scroll-snap-type:x mandatory !important;}
  .pvs-home-sections .pvs-interest-card{
    flex:0 0 210px !important;width:210px !important;min-width:210px !important;max-width:210px !important;
    scroll-snap-align:start !important;
  }
  .pvs-home-sections .pvs-interest-link{min-height:108px !important;padding:17px 18px !important;border-radius:22px !important;}
  .pvs-home-sections .pvs-interest-name{font-size:19px !important;line-height:1.15 !important;}

  .pvs-home-sections .pvs-ranking-track{gap:16px !important;padding:5px 2px 10px !important;scroll-snap-type:x mandatory !important;}
  .pvs-home-sections .pvs-ranking-item{
    flex:0 0 172px !important;width:172px !important;min-width:172px !important;max-width:172px !important;
    scroll-snap-align:start !important;
  }
  .pvs-home-sections .pvs-ranking-rank{font-size:38px !important;bottom:-9px !important;}
  .pvs-home-sections .pvs-ranking-info{margin-top:14px !important;}
  .pvs-home-sections .pvs-ranking-name{font-size:12.5px !important;line-height:1.22 !important;}
  .pvs-home-sections .pvs-ranking-origin{font-size:10.5px !important;margin-top:2px !important;}
  .pvs-home-sections .pvs-ranking-arrow{display:none !important;}

  .pvs-home-sections .pvs-thumb-track{gap:16px !important;padding:5px 2px 10px !important;scroll-snap-type:x mandatory !important;}
  .pvs-home-sections .pvs-thumb-item{
    flex:0 0 164px !important;width:164px !important;min-width:164px !important;max-width:164px !important;
    scroll-snap-align:start !important;
  }
  .pvs-home-sections .pvs-thumb-name{font-size:12.5px !important;line-height:1.22 !important;}
  .pvs-home-sections .pvs-thumb-origin{font-size:10.5px !important;margin-top:2px !important;}
  .pvs-home-sections .pvs-thumb-arrow{display:none !important;}
}

/* iPad ngang + desktop: giữ desktop, nhưng không để section tràn sát mép */
@media (min-width:992px){
  .pvs-home-sections{padding-left:clamp(22px, 1.7vw, 38px) !important;padding-right:clamp(22px, 1.7vw, 38px) !important;}
  .pvs-home-sections .pvs-ranking-section,
  .pvs-home-sections .pvs-thumb-section,
  .pvs-home-sections .pvs-interest-section{overflow:visible !important;}
  .pvs-home-sections .pvs-ranking-arrow,
  .pvs-home-sections .pvs-thumb-arrow{z-index:80 !important;}
}

/* TV/màn hình lớn: giống desktop, tăng số lượng item bằng không gian, không phóng card quá to */
@media (min-width:1920px){
  .pvs-home-sections{padding-left:44px !important;padding-right:44px !important;}
  .pvs-home-sections .pvs-interest-card{flex:0 0 235px !important;width:235px !important;min-width:235px !important;max-width:235px !important;}
  .pvs-home-sections .pvs-ranking-item{flex:0 0 185px !important;width:185px !important;min-width:185px !important;max-width:185px !important;}
  .pvs-home-sections .pvs-thumb-item{flex:0 0 180px !important;width:180px !important;min-width:180px !important;max-width:180px !important;}
}
@media (min-width:2560px){
  .pvs-home-sections{padding-left:56px !important;padding-right:56px !important;}
  .pvs-home-sections .pvs-ranking-item{flex:0 0 190px !important;width:190px !important;min-width:190px !important;max-width:190px !important;}
  .pvs-home-sections .pvs-thumb-item{flex:0 0 185px !important;width:185px !important;min-width:185px !important;max-width:185px !important;}
}
