/* Layout Core CSS - moved from resources/views/themeiq/layout_core.blade.php
   This file contains PVS layout/thumb/cursor/hover fixes. */

/* PVS v1.8.2 - Fix vỡ layout thumb khi reload.
   Chỉ áp dụng cho các thumb phim bên dưới, không tác động slide đầu #slider. */
.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;scrollbar-width:none!important}
.firm-by-category .pvs-scroll-slider::-webkit-scrollbar{display:none!important}
.firm-by-category .pvs-scroll-list{display:flex!important;flex-wrap:nowrap!important;align-items:flex-start!important;gap:clamp(8px,1.1vw,16px)!important;width:max-content!important;min-width:100%!important;margin:0!important;padding:0!important;list-style:none!important}
.firm-by-category .pvs-scroll-item{display:block!important;list-style:none!important;flex:0 0 clamp(138px,calc((100vw - 260px)/8.4),210px)!important;width:clamp(138px,calc((100vw - 260px)/8.4),210px)!important;min-width:138px!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;text-decoration:none!important;color:inherit!important}
.firm-by-category .pvs-movie-poster,.firm-by-category .pvs-scroll-item .splide__img-wrap{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-scroll-item img.splide__img{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;background:#151515!important;border:0!important;margin:0!important;padding:0!important}
.firm-by-category .pvs-scroll-item .episodes{position:absolute!important;top:0!important;left:0!important;z-index:30!important;line-height:20px!important}
@media (min-width:1920px){.firm-by-category .pvs-scroll-item{flex-basis:clamp(162px,calc((100vw - 320px)/9.4),228px)!important;width:clamp(162px,calc((100vw - 320px)/9.4),228px)!important;max-width:228px!important}}
@media (max-width:1399px){.firm-by-category .pvs-scroll-item{flex-basis:clamp(134px,calc((100vw - 190px)/6.4),196px)!important;width:clamp(134px,calc((100vw - 190px)/6.4),196px)!important;min-width:134px!important}}
@media (max-width:991px){.firm-by-category .pvs-scroll-item{flex-basis:clamp(122px,calc((100vw - 46px)/4.2),170px)!important;width:clamp(122px,calc((100vw - 46px)/4.2),170px)!important;min-width:122px!important}}
@media (max-width:575px){.firm-by-category .pvs-scroll-item{flex-basis:clamp(108px,calc((100vw - 34px)/3.15),148px)!important;width:clamp(108px,calc((100vw - 34px)/3.15),148px)!important;min-width:108px!important}}

/* PVS normal section size balance - smaller than previous oversized version, Top 10 unaffected */
.firm-by-category .pvs-scroll-list > .pvs-movie-card:not(.pvs-top10-item){
  flex:0 0 clamp(158px,calc((100vw - 260px)/7.8),218px)!important;
  width:clamp(158px,calc((100vw - 260px)/7.8),218px)!important;
  min-width:158px!important;
  max-width:218px!important;
}
@media (max-width:991px){
  .firm-by-category .pvs-scroll-list > .pvs-movie-card:not(.pvs-top10-item){
    flex-basis:clamp(132px,23.5vw,170px)!important;
    width:clamp(132px,23.5vw,170px)!important;
    min-width:132px!important;
    max-width:170px!important;
  }
}
@media (max-width:575px){
  .firm-by-category .pvs-scroll-list > .pvs-movie-card:not(.pvs-top10-item){
    flex-basis:34vw!important;
    width:34vw!important;
    min-width:116px!important;
    max-width:142px!important;
  }
}

/* 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;
    }
}



/* 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;
    }
}

/* 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;
    }
}
