﻿
.container .ps-section__content {
    min-height: 340px;
}

.ps-site-features {
    margin-top: 10px;
}

.col-md-3 {
    margin-bottom: 10px;
}

.suggestion-card {
    border: 1px solid #dee2e6 !important;
    margin-bottom: 1.5rem !important;
    text-align: center !important;
    border: 1px solid #dee2e6 !important;
    height: 48%;
}

img.suggestion-img {
    max-width: 182px;
}

.ps-deal-of-day {
    margin-top: 20px;
}

/* Thêm style cho voucher nếu cần */
.voucher-item {
    display: inline-flex;
    align-items: center;
    margin-bottom: 15px;
    margin-right: 15px;
    padding: 12px;
    border-radius: 8px;
    background-color: #fff4eb;
    border: 2px solid #ff9933;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.voucher-image {
    flex-shrink: 0;
    margin-right: 15px; /* Khoảng cách sau ảnh */
}

    .voucher-image img {
        width: 50px; /* size ảnh */
        height: 50px;
        border-radius: 4px;
    }

/* === THAY ĐỔI LAYOUT === */
.voucher-content {
    flex-grow: 0;
    margin-right: 15px;
}

    .voucher-content p {
        margin: 0;
        line-height: 1.4;
    }

    .voucher-content .voucher-code {
        font-size: 1.1em;
        font-weight: 700;
        color: #d9534f; /* Màu ĐỎ CAM cho mã */
    }

    .voucher-content .voucher-desc {
        font-size: 0.9em;
        color: #555; /* Chữ xám đậm */
    }

.voucher-action {
    margin-left: 0;
}

/* Đổi màu nút "Đã lưu" cho phù hợp */
.btn-save-voucher.btn-success {
    background-color: #28a745;
    border-color: #28a745;
}

.btn-save-voucher.btn-secondary {
    background-color: #6c757d;
    border-color: #6c757d;
}

.video-review-list .ps-product {
    border: none;
    background: none; /* Bỏ nền xám để card video tự xử lý */
}

.video-review-card {
    position: relative;
    cursor: pointer;
    border-radius: 8px;
    overflow: hidden;
    /* Kích thước giống TikTok/Shorts (tỷ lệ 9:16) */
    height: 320px;
    width: 180px; /* Cố định chiều rộng */
    margin: 0 auto; /* Căn giữa trong carousel item */
    background-color: #222; /* Màu nền khi ảnh chưa tải */
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

    .video-review-card .video-thumbnail {
        width: 100%;
        height: 100%;
        object-fit: cover; /* Đảm bảo ảnh lấp đầy khung */
        transition: transform 0.3s ease;
    }

    .video-review-card:hover .video-thumbnail {
        transform: scale(1.05); /* Hiệu ứng zoom nhẹ */
    }

    .video-review-card .play-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        font-size: 50px;
        color: rgba(255, 255, 255, 0.8);
        text-shadow: 0 0 10px rgba(0,0,0,0.5);
        transition: all 0.3s ease;
        pointer-events: none; /* Tránh icon cản click */
    }

    .video-review-card:hover .play-icon {
        color: rgba(255, 255, 255, 1);
        transform: translate(-50%, -50%) scale(1.1);
    }

.video-product-info {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 10px;
    /* Lớp phủ mờ ở dưới để đọc chữ rõ hơn */
    background: linear-gradient(0deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0) 100%);
    color: #fff;
}

    .video-product-info .video-title {
        font-size: 0.9em;
        font-weight: 600;
        margin-bottom: 5px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis; /* Dấu ... nếu tên video quá dài */
    }

    .video-product-info .product-link {
        font-size: 0.85em;
        color: #f0f0f0;
        text-decoration: none;
        display: block;
        padding: 4px 0;
        border-radius: 4px;
        transition: background-color 0.2s;
        font-weight: 500;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis; /* Dấu ... nếu tên SP quá dài */
    }

        .video-product-info .product-link:hover {
            color: #fff;
            text-decoration: underline;
        }


/* =================================== */
/*  CSS MỚI CHO VIDEO MODAL */
/* =================================== */
#videoReviewModal .modal-lg {
    max-width: 400px; /* Chiều rộng giống điện thoại */
    margin: 1.75rem auto;
}

#videoReviewModal .modal-content {
    background-color: #000;
    border: none;
    border-radius: 10px;
    overflow: hidden; /* Đảm bảo video bo góc theo modal */
}

#videoReviewModal .modal-body {
    padding: 0;
    /* Giữ tỷ lệ khung hình video */
    position: relative;
    /* Tỷ lệ 16:9 (9 / 16 * 100 = 56.25%) */
    /* Nếu video của bạn là dọc (9:16) thì dùng padding-bottom: 177.77% */
    padding-bottom: 177.77%;
    height: 0;
    overflow: hidden;
}

#videoReviewModal #videoPlayer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
    background-color: #000;
}

#videoReviewModal .modal-header {
    border-bottom: none;
    position: absolute;
    top: 5px;
    right: 5px;
    z-index: 1056; /* Phải cao hơn video */
}

#videoReviewModal .btn-close {
    background-color: rgba(255,255,255,0.7);
    border-radius: 50%;
    padding: 0.5em;
    opacity: 0.8;
}

    #videoReviewModal .btn-close:hover {
        opacity: 1;
    }

/* CSS for video modal navigation */
.modal-video-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: rgba(0, 0, 0, 0.3);
    color: white;
    border: none;
    font-size: 2rem;
    padding: 5px;
    cursor: pointer;
    z-index: 1057;
    border-radius: 50%;
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    transition: background-color 0.2s ease;
}

    .modal-video-nav.prev {
        left: 15px;
    }

    .modal-video-nav.next {
        right: 15px;
    }

    .modal-video-nav:hover {
        background-color: rgba(0, 0, 0, 0.6);
    }
/* =================================== */
/* CSS MỚI CHO VIDEO MODAL (SWIPER)  */
/* =================================== */
#videoReviewModal .modal-lg {
    max-width: 400px; /* Chiều rộng giống điện thoại */
    margin: 1.75rem auto;
    height: 85vh; /* Chiều cao tối đa */
}

#videoReviewModal .modal-content {
    background-color: #000;
    border: none;
    border-radius: 10px;
    overflow: hidden;
    height: 100%; /* Cho phép nội dung bên trong chiếm full chiều cao */
}

#videoReviewModal .modal-body {
    padding: 0;
    height: 100%;
    position: relative;
}

/* CSS cho Swiper */
#videoSwiper {
    width: 100%;
    height: 100%;
}

.swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #000;
}

    .swiper-slide .video-player-slide {
        width: 100%;
        height: 100%;
        object-fit: contain; /* 'contain' để video không bị cắt, 'cover' nếu muốn lấp đầy */
    }



p.video-caption {
    color: revert;
}
h4.video-author-title {
    color: revert;
}
.video-slide-info .product-link {
    display: inline-block;
    background-color: #FBC02D; /* Màu vàng */
    color: #212121; /* Chữ đen */
    padding: 6px 10px;
    border-radius: 4px;
    font-size: 13px;
    font-weight: bold;
    text-decoration: none;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
    text-shadow: none; /* Bỏ bóng mờ cho riêng tag vàng */
    margin-bottom: 10px; /* Khoảng cách với tiêu đề bên dưới */
}


/* CSS cho thông tin trên video */
.video-slide-info {
    position: absolute;
    bottom: 100px;
    left: 15px;
    right: 15px;
    z-index: 10;
    color: #fff;
    text-shadow: 0 1px 3px rgba(0,0,0,0.5);


    border-radius: 5px;
}

    .video-slide-info h4 {
        font-size: 1.1em;
        font-weight: 600;
        margin-bottom: 5px;
    }

    .video-slide-info .product-link {
        color: #f0f0f0;
        text-decoration: none;
        font-size: 0.9em;
    }

        .video-slide-info .product-link:hover {
            color: #fff;
            text-decoration: underline;
        }


/* Nút đóng modal */
#videoReviewModal .modal-header {
    border-bottom: none;
    position: absolute;
    top: 5px;
    right: 5px;
    z-index: 1056; /* Phải cao hơn video */
}

#videoReviewModal .btn-close {
    background-color: rgba(255,255,255,0.7);
    border-radius: 50%;
    padding: 0.5em;
    opacity: 0.8;
}

/* Xóa CSS cho nút .modal-video-nav cũ nếu có */
.modal-video-nav {
    display: none !important;
}
/* End of CSS for video modal navigation */

/* =================================== */
/* CSS NÂNG CẤP CHO CARD CHI TIẾT     */
/* =================================== */



/* --- CSS CHO SIDEBAR TƯƠNG TÁC (BÊN PHẢI) --- */

.interaction-sidebar {
    position: absolute;
    right: 15px;
    bottom: 120px; /* Căn bottom, bên trên khối info-overlay. Bạn có thể cần điều chỉnh giá trị này */
    z-index: 10;
    color: white;
    display: flex;
    flex-direction: column;
    align-items: center; /* Căn giữa các mục con */
    gap: 25px; /* Khoảng cách giữa các mục (profile, like, comment, cart) */

    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.7);
}

/* 1. Khối Profile/Avatar */
.user-profile {
    position: relative; /* Rất quan trọng để căn .follow-icon */
}

.avatar-small {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border: 2px solid white;
    background-color: #ccc; /* Màu nền mờ cho avatar */
    /* Tùy chọn: Thêm ảnh avatar từ model của bạn */
    /*
    background-image: url('@video.AuthorAvatarUrl'); 
    background-size: cover;
    background-position: center;
    */
}
/* 1. CSS cho khung 'avatar-small' */
.avatar-smakk {
    width: 50px;
    height: 50px;
    border-radius: 50%; /* Bo tròn khung */
    border: 2px solid white;
    background-color: #333; /* Màu nền mờ phòng khi ảnh lỗi */
    /* QUAN TRỌNG: Cắt bỏ phần ảnh bị thừa ra ngoài khung tròn */
    overflow: hidden;
    position: relative; /* (Cần thiết cho icon 'follow-icon' ở sau) */
}

    /* 2. CSS cho thẻ 'img' NẰM TRONG 'avatar-small' */
    .avatar-smakk img {
        width: 100%;
        height: 100%;
        /* QUAN TRỌNG: Đảm bảo ảnh lấp đầy khung 
      mà không bị bóp méo (nó sẽ tự cắt phần thừa) 
    */
        object-fit: cover;
    }
.follow-icon {
    position: absolute;
    bottom: -10px; /* Đẩy xuống dưới avatar */
    left: 50%;
    transform: translateX(-50%); /* Căn giữa theo chiều ngang */

    width: 24px;
    height: 24px;
    border-radius: 50%;
    background-color: #ff3b5c; /* Màu đỏ */
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: bold;
    line-height: 1; /* Đảm bảo căn giữa */
    cursor: pointer;
    border: 2px solid white; /* Thêm viền trắng cho icon + */
}

/* 2. Các nút (Like, Comment, Cart) */
.action-item {
    display: flex;
    flex-direction: column;
    align-items: center; /* Căn giữa icon và text */
    cursor: pointer;
}

    .action-item i {
        font-size: 30px; /* Kích thước icon */
    }

    .action-item span {
        font-size: 14px;
        font-weight: 600;
        margin-top: 5px; /* Khoảng cách từ icon xuống text */
    }

  



    .details-inner-scroll::-webkit-scrollbar {
        display: none; /* Chrome, Safari, Opera */
    }



    .btn-close-details:hover {
        background: rgba(255,255,255,0.4);
    }









.btn-add-to-cart {
    background-color: #e74c3c;
    color: #fff;
}

.btn-full-details {
    background-color: rgba(255, 255, 255, 0.2);
    color: #fff;
}

    .btn-full-details .fa {
        margin-left: 8px;
        transition: transform 0.3s;
    }

/* MỚI: CSS cho nội dung mở rộng */
.details-content-expanded {
    /* Ẩn ban đầu, chỉ hiện khi 'is-expanded' */
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease-in-out, margin-top 0.4s;
    margin-top: 0;
    border-top: 1px solid rgba(255,255,255,0.1);
}



    /* Style cho nội dung HTML (nếu có) */
    .product-description p {
        margin-bottom: 10px;
    }

    .product-description img {
        max-width: 100%;
        height: auto;
        border-radius: 4px;
        margin-top: 5px;
    }


/* Xoay icon mũi tên khi mở rộng */
.video-product-details.is-expanded .btn-full-details .fa-chevron-down {
    transform: rotate(180deg);
    max-height: 75vh; /* Chiều cao khi mở rộng tối đa */
}

/* =================================== */
/* CSS BỔ SUNG CHO THÔNG TIN MỚI   */
/* =================================== */

/* CSS cho giá gốc (nếu có) */
.product-info-price .original-price {
    font-size: 0.85em;
    color: #aaa;
    text-decoration: line-through;
    margin-left: 8px;
}

/* MỚI: CSS cho thông số kỹ thuật */
.details-specs-title {
    font-size: 1em;
    font-weight: 700;
    color: #ffc107; /* Màu vàng */
    padding: 15px 0 5px 0;
    margin-top: 10px;
    border-top: 1px solid rgba(255,255,255,0.1);
}





 


        /*=============================================================================================================================*/
/*=============================================================================================================================*/
/*=============================================================================================================================*/
/*=============================================================================================================================*/

/* --- CSS CHO CARD SẢN PHẨM (2 TRẠNG THÁI: CƠ BẢN VÀ MỞ RỘNG) --- */

/* 1. Khung card chi tiết sản phẩm */
.video-product-details {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 20;
    background-color: #ffffff;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    color: #333;
    max-height: 0; /* Ẩn ban đầu */
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    display: flex;
    flex-direction: column;
}

    /* 2. Trạng thái hiển thị (CƠ BẢN) */
    .video-product-details.show {
        max-height: 70vh; /* Mặc định cho mobile */
    }

    /* 3. Trạng thái MỞ RỘNG (ĐẦY ĐỦ) */
    .video-product-details.is-expanded {
        max-height: 90vh; /* Mặc định cho mobile */
        max-block-size: fit-content;
       
    }

/* 4. Nút đóng card chi tiết */
.btn-close-details {
    position: absolute;
    top: 10px;
    right: 15px;
    background: #f0f0f0;
    border: none;
    color: #555;
    font-size: 1.5rem;
    line-height: 1;
    padding: 0 8px 3px 8px;
    border-radius: 50%;
    cursor: pointer;
    z-index: 22;
}

/* 5. Vùng nội dung cuộn (Bên trên) */
.details-inner-scroll {
    flex-grow: 1;
    padding: 15px;
    padding-top: 50px;
    overflow-y: auto; /* Cho phép cuộn DỌC khi nội dung dài */
    -ms-overflow-style: none;
    scrollbar-width: none;
    padding-bottom: 30px;
}

    .details-inner-scroll::-webkit-scrollbar {
        display: none;
    }

/* 6. Vùng nút bấm (Cố định bên dưới) */
.details-footer-action {
    padding: 10px 15px;
    border-top: 1px solid #f0f0f0;
    background-color: #fff;
    flex-shrink: 0; /* Không co lại */
    z-index: 5; /* Nằm trên nội dung cuộn */
}


/* --- CSS CHO CÁC MỤC BÊN TRONG VÙNG CUỘN --- */

/* Khung bọc cuộn ngang cho ảnh */
.product-image-wrapper {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    margin-bottom: 12px;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

    .product-image-wrapper::-webkit-scrollbar {
        display: none;
    }
/* Ảnh sản phẩm (Kích thước cố định) */
.product-details-img {
    width: 400px;
    height: 250px;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid #eee;
}

/* (CSS cho Giá, Tiêu đề, Tags...) */
.product-price-block {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.discount-tag {
    background-color: #EE4D2D;
    color: white;
    padding: 2px 6px;
    border-radius: 4px;
    font-weight: bold;
    font-size: 12px;
}

.price {
    color: #EE4D2D;
    font-size: 20px;
    font-weight: bold;
}

.original-price {
    color: #999;
    text-decoration: line-through;
    font-size: 14px;
}

.product-title-block {
    margin-top: 10px;
}

.info-tag {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 10px;
    font-weight: bold;
    margin-right: 5px;
    border: 1px solid #ddd;
    text-transform: uppercase;
}

    .info-tag.mall {
        background-color: #D0011B;
        color: white;
        border-color: #D0011B;
    }

    .info-tag.trend {
        color: #EE4D2D;
        border-color: #EE4D2D;
        background-color: #FFF0EB;
    }

.product-details-name {
    font-size: 16px;
    font-weight: 500;
    color: #222;
    margin-top: 8px;
    margin-bottom: 0;
}

/* 7. NỘI DUNG MỞ RỘNG (Bị ẩn ban đầu) */
.details-content-expanded {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease-out, margin-top 0.4s ease-out, opacity 0.3s ease-out;
    opacity: 0;
}
/* Khi card .is-expanded, hiện nội dung này ra */
.video-product-details.is-expanded .details-content-expanded {
    max-height: max-content; /* Số đủ lớn */
    margin-top: 3px;
    opacity: 1;
}

/* (CSS cho Mô tả, Thông số...) */
.details-section-title {
    font-size: 1.1em;
    font-weight: 700;
    color: #333;
    padding-bottom: 5px;
    border-bottom: 1px solid #eee;
    margin-top: 10px;
    margin-bottom: 10px;
}

.product-description {
    font-size: 0.95em;
    line-height: 1.6;
    color: #555;
}

.product-specs-list {
    list-style-type: none;
    padding: 0;
    margin: 0;
    font-size: 0.95em;
    color: #555;
}

    .product-specs-list li {
        padding: 10px 0;
        border-bottom: 1px solid #eee;
        display: flex;
        line-height: 1.5;
    }

        .product-specs-list li:last-child {
            border-bottom: none;
        }

        .product-specs-list li strong {
            color: #222;
            min-width: 100px;
            flex-shrink: 0;
            margin-right: 10px;
        }


/* 8. NÚT BẤM (TRONG FOOTER) */
.btn-add-to-cart, .btn-full-details {
    display: block;
    width: 100%;
    padding: 12px;
    border-radius: 8px;
    text-align: center;
    font-weight: 600;
    font-size: 15px;
    text-decoration: none;
    border: none;
    cursor: pointer;
}
/* Nút "Xem chi tiết" (Nút mũi tên) */
.btn-full-details {
    background-color: #f5f5f5;
    color: #333;
    border: 1px solid #ddd;
    margin-bottom: 10px; /* Nằm trên nút giỏ hàng */
}
    /* Mũi tên bên trong nút */
    .btn-full-details .fa-chevron-down {
        margin-left: 8px;
        transition: transform 0.3s ease;
    }
/* Khi mở rộng, xoay mũi tên lên */
.video-product-details.is-expanded .btn-full-details .fa-chevron-down {
    transform: rotate(180deg);
}

/* Nút "Thêm vào giỏ hàng" */
.btn-add-to-cart {
    background-color: #EE4D2D;
    color: #fff;
}

    .btn-add-to-cart:hover {
        background-color: #d73a1a;
    }

/* * ★★★ PHẦN BỔ SUNG: TƯƠNG ỨNG VỚI MÀN HÌNH LỚN ★★★ 
 * (Áp dụng cho màn hình rộng từ 768px trở lên) 
 */
