/* Container chính */.gp-gallery-wrapper {    position: relative;    width: 100%;    --gp-gap: 20px;}/* --- ITEM & MEDIA --- */.gp-gallery-item {    position: relative;    overflow: hidden;    border-radius: 0px;    box-sizing: border-box;    transform: translate3d(0,0,0);}/* 1. Thiết lập biến chiều cao mặc định (Desktop) */.gp-gallery-wrapper {    /* Khởi tạo biến hiện tại bằng giá trị Desktop */    --gp-h-current: var(--gp-h-d); }/* 2. Cập nhật biến theo màn hình (Media Queries) */@media (max-width: 1024px) {    .gp-gallery-wrapper {        --gp-h-current: var(--gp-h-t); /* Tablet: đổi sang giá trị Tablet */    }}@media (max-width: 767px) {    .gp-gallery-wrapper {        --gp-h-current: var(--gp-h-m); /* Mobile: đổi sang giá trị Mobile */    }}/* 3. Áp dụng biến "current" vào phần tử */.gp-media {    width: 100%;    display: block;        /* QUAN TRỌNG: Dùng biến trung gian này */    height: var(--gp-h-current) !important;         transition: transform 0.3s ease;}/* Video Wrapper cũng cần chiều cao này */.gp-video-wrap {     width: 100%;     height: var(--gp-h-current) !important; }.gp-video-wrap iframe { width: 100%; height: 100%; border: none; }.gp-fit-cover .gp-media { object-fit: cover; }.gp-fit-contain .gp-media { object-fit: contain; }/* --- GRID LAYOUT --- */.gp-layout-grid .gp-inner {    display: grid;    gap: var(--gp-gap);    grid-template-columns: repeat(var(--gp-col-d), 1fr);}@media (max-width: 1024px) { .gp-layout-grid .gp-inner { grid-template-columns: repeat(var(--gp-col-t), 1fr); } }@media (max-width: 767px) { .gp-layout-grid .gp-inner { grid-template-columns: repeat(var(--gp-col-m), 1fr); } }/* --- CAROUSEL ARROW FIX (FINAL) --- */.gp-swiper {    position: relative;    padding-bottom: 0;}/* Tuy nhiên, swiper-wrapper cần hidden để mask các slide */.gp-swiper .swiper-wrapper {    z-index: 1; /* Thấp hơn arrow */}/* Style chung cho nút */.gp-swiper-button-next, .gp-swiper-button-prev {    background-image: none !important;    margin-top: 0 !important;    width: 45px !important;    height: 45px !important;    background-color: #fff !important;    border-radius: 50% !important;    color: #333 !important;    box-shadow: 0 4px 15px rgba(0,0,0,0.15) !important; /* Bóng đổ đậm hơn chút cho đẹp */        position: absolute !important;    top: 50% !important;    /* Z-index cực cao để đè lên hình */    z-index: 999 !important;         display: flex !important;    align-items: center;    justify-content: center;    cursor: pointer;        /* Transition mượt mà cho Transform và Opacity */    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);}/* Icon mũi tên */.gp-swiper-button-next::after, .gp-swiper-button-prev::after {    font-family: sans-serif !important;    font-size: 24px !important;    font-weight: 300 !important;    line-height: 1 !important;    color: #333 !important;    position: relative;    top: -2px;}.gp-swiper-button-next::after { content: '›'; padding-left: 2px; }.gp-swiper-button-prev::after { content: '‹'; padding-right: 2px; }/* === LOGIC HIỂN THỊ MỚI (Dùng Transform thay vì Right/Left) === *//* 1. Vị trí CỐ ĐỊNH (Không dùng right âm nữa để tránh mất click) */.gp-swiper-button-next {     right: 15px !important;     transform: translateX(20px) translateY(-50%) !important; /* Đẩy sang phải 20px */    opacity: 0;    visibility: hidden;}.gp-swiper-button-prev {     left: 15px !important;     transform: translateX(-20px) translateY(-50%) !important; /* Đẩy sang trái 20px */    opacity: 0;    visibility: hidden;}/* 2. KHI HOVER VÀO KHUNG TO */.gp-gallery-wrapper:hover .gp-swiper-button-next {    opacity: 1;    visibility: visible;    /* Trả về vị trí gốc -> Tạo hiệu ứng trượt vào */    transform: translateX(0) translateY(-50%) !important;}.gp-gallery-wrapper:hover .gp-swiper-button-prev {    opacity: 1;    visibility: visible;    /* Trả về vị trí gốc */    transform: translateX(0) translateY(-50%) !important;}/* Disabled state */.gp-swiper-button-disabled {    opacity: 0 !important;    pointer-events: none;}/* Khi Swiper phát hiện không đủ ảnh, nó thêm class swiper-button-lock *//* Ta cần ẩn triệt để nó, kể cả khi hover */.gp-swiper-button-next.swiper-button-lock,.gp-swiper-button-prev.swiper-button-lock {    display: none !important;    opacity: 0 !important;    visibility: hidden !important;    pointer-events: none !important;}/* Tắt icon bàn tay nắm (grab) khi slider bị khóa */.gp-swiper.swiper-lock {    cursor: default !important;}/* Đảm bảo khi bị lock, wrapper không hiện mũi tên khi hover */.gp-gallery-wrapper:hover .gp-swiper-button-next.swiper-button-lock,.gp-gallery-wrapper:hover .gp-swiper-button-prev.swiper-button-lock {    display: none !important;    opacity: 0 !important;    visibility: hidden !important;    transform: none !important;}/* Đảm bảo thẻ A bao trọn ảnh và giữ đúng chiều cao */.gp-link-wrap {    display: block;    width: 100%;    height: 100%; /* Kế thừa chiều cao từ cha */    text-decoration: none;}/* Fix lỗi padding/margin mặc định của thẻ a trong một số theme */.gp-link-wrap:hover {    opacity: 0.9; /* Hiệu ứng nhẹ khi hover vào ảnh có link */}/* Nút Play Overlay */.gp-play-icon {    position: absolute;    top: 50%;    left: 50%;    transform: translate(-50%, -50%);    width: 60px;    height: 60px;    background: rgba(0,0,0,0.6);    border-radius: 50%;    pointer-events: none; /* Để click xuyên qua vào thẻ A */    display: flex;    align-items: center;    justify-content: center;    transition: all 0.3s ease;    border: 2px solid #fff;}.gp-play-icon::before {    content: '';    display: block;    width: 0;     height: 0;     border-top: 10px solid transparent;    border-bottom: 10px solid transparent;    border-left: 16px solid #fff;    margin-left: 4px; /* Căn chỉnh tam giác */}.gp-gallery-item:hover .gp-play-icon {    background: rgba(255, 0, 0, 0.8); /* Youtube Red hover */    transform: translate(-50%, -50%) scale(1.1);}