/*
 * LALUZ UI Patch — MODULE SEARCH-HIT
 * Sửa lỗi: BẤM / CHẠM VÀO KẾT QUẢ TÌM KIẾM KHÔNG VÀO ĐƯỢC TRANG SẢN PHẨM.
 *
 * ============================ NGUYÊN NHÂN ============================
 * Đã đo trực tiếp trên laluz.vn (Chrome, viewport 1426px) ngày 17/08:
 *
 *   Một dòng kết quả .cart-it  =  839 × 81 px
 *   Nhưng thứ DUY NHẤT bấm được trong đó là <a class="cart-name">
 *                              =  259 × 22 px
 *
 * Tức là chỉ đúng dòng chữ tên sản phẩm là link. Ảnh, giá, và toàn bộ phần
 * đệm xung quanh — chiếm khoảng 92% diện tích dòng — là VÙNG CHẾT.
 *
 * Bằng chứng ghi lại được trên live:
 *   - bấm tại (616, 313) → event target = DIV.cart-it   → không có gì xảy ra
 *   - bấm tại (686, 349) → event target = A.cart-name   → vào đúng sản phẩm
 * Hai điểm cách nhau 36px, cùng nằm trong một dòng, trông y hệt nhau.
 *
 * Vì sao trước đây không ai để ý, và vì sao nó tệ hơn từ bản 1.1.0:
 * module search làm cả dòng SÁNG LÊN khi rê chuột. Cả dòng phản hồi như một
 * nút bấm nhưng chỉ 8% diện tích thật sự bấm được — phản hồi hover đang nói dối.
 * Trên điện thoại đầu ngón tay khoảng 44px, gần như luôn rơi vào vùng chết,
 * nên trên mobile nó biểu hiện thành "bấm mãi không vào".
 *
 * KHÔNG phải lỗi JavaScript. Đã loại trừ bằng đo đạc:
 *   - không có rule pointer-events:none nào trong toàn bộ media query mobile
 *   - nền mờ .lz-sf-scrim nằm z-index 9, panel nằm trong .header (position:fixed,
 *     z-index:10 ở MỌI breakpoint) nên scrim không bao giờ che được panel
 *   - click vào đúng link cho defaultPrevented = false, link còn nguyên trong DOM,
 *     panel không bị đóng → không có handler nào chặn sự kiện
 *
 * ============================== CÁCH SỬA ==============================
 * Trải chính thẻ <a> đã có sẵn ra phủ kín dòng bằng pseudo-element.
 * KHÔNG tạo link mới, KHÔNG đổi href, KHÔNG thêm JavaScript, KHÔNG đụng
 * logic tìm kiếm. Áp dụng cho MỌI kích thước màn hình vì lỗi có ở cả hai.
 *
 * Đã kiểm trên live bằng preview injection trước khi đóng gói: điểm (1270, 389)
 * — góc phải dưới của dòng, trước đó là vùng chết — sau khi chèn CSS thì
 * elementFromPoint trả về A.cart-name và cú bấm thật dẫn tới đúng URL sản phẩm.
 */

/* Mọi dòng kết quả tìm kiếm — cả panel desktop lẫn mobile.
   Giới hạn trong .box-result / #search-product-mobile nên KHÔNG chạm mini-cart. */
html body .box-result .cart-it,
html body #search-product-mobile .cart-it {
	position: relative !important;
}

/* Lớp phủ vô hình của chính thẻ <a> tên sản phẩm, trải kín dòng. */
html body .box-result .cart-it a.cart-name::after,
html body #search-product-mobile .cart-it a.cart-name::after {
	content: '' !important;
	position: absolute !important;
	inset: 0 !important;
	z-index: 2 !important;
}

/* Ảnh nằm dưới lớp phủ. Cùng một đích đến nên không đổi hành vi, nhưng vẫn
   bấm được nếu vì lý do nào đó pseudo-element không dựng. */
html body .box-result .cart-it .cart-img,
html body #search-product-mobile .cart-it .cart-img {
	position: relative !important;
	z-index: 1 !important;
}

/* Con trỏ phải nói đúng sự thật: cả dòng bấm được. */
html body .box-result .cart-it,
html body #search-product-mobile .cart-it {
	cursor: pointer !important;
}

/* Thiết bị cảm ứng: đủ cao cho đầu ngón tay + có phản hồi khi chạm.
   Trước đây không có phản hồi nào nên người dùng không biết đã chạm trúng. */
@media ( hover: none ) and ( pointer: coarse ) {
	html body .box-result .cart-it,
	html body #search-product-mobile .cart-it {
		min-height: 76px !important;
	}

	html body .box-result .cart-it:active,
	html body #search-product-mobile .cart-it:active {
		background: rgba( 20, 19, 16, .06 ) !important;
	}

	html body .box-result .inner,
	html body #search-product-mobile {
		touch-action: pan-y !important;
	}

	html body .search-fixed .lz-sf-close {
		min-width: 48px !important;
		min-height: 48px !important;
	}
}
