refactor: Cache Item Reviews and other review feedback

- `get_doc` -> `get_values` and `db.sql` -> `db.delete` in Wishlist Item deletion
- cache first page of Item Reviews and burst cache on addition and deletion of reviews
- Update redisearch docs link in E Commerce Settings
- Removed unused cint import
- Broke setting attribute context into smaller functions and code cleanup
- Minor recommended items padding tweak
- Item reviews form dict now uses website item as key
- Customer reviews rendered from UI style consistency
- Stock status consistency in listing and full page
- Handle no price in variant dialog for matched item
diff --git a/erpnext/templates/pages/customer_reviews.js b/erpnext/templates/pages/customer_reviews.js
index 9be12c7..e13ded6 100644
--- a/erpnext/templates/pages/customer_reviews.js
+++ b/erpnext/templates/pages/customer_reviews.js
@@ -96,23 +96,25 @@
 			reviews.forEach((review) => {
 				$content.append(`
 					<div class="mb-3 review">
-						<div style="display: flex;">
+						<div class="d-flex">
+							<p class="mr-4 user-review-title">
+								<span>${__(review.review_title)}</span>
+							</p>
 							<div class="rating">
 								${me.get_review_stars(review.rating)}
 							</div>
-							<p class="ml-4 user-review-title">
-								<span>${__(review.review_title)}</span>
-							</p>
 						</div>
-						<div class="review-signature">
-							<span class="reviewer">${__(review.customer)}</span>
-							<span>${__(review.published_on)}</span>
-						</div>
-						<div class="product-description mb-4 mt-4">
+
+						<div class="product-description mb-4">
 							<p>
 								${__(review.comment)}
 							</p>
 						</div>
+						<div class="review-signature mb-2">
+							<span class="reviewer">${__(review.customer)}</span>
+							<span class="indicator grey" style="--text-on-gray: var(--gray-300);"></span>
+							<span class="reviewer">${__(review.published_on)}</span>
+						</div>
 					</div>
 				`);
 			});
@@ -122,9 +124,11 @@
 			let stars = ``;
 			for (let i = 1; i < 6; i++) {
 				let fill_class = i <= rating ? 'star-click' : '';
-				stars += `<svg class="icon icon-md ${fill_class}">
+				stars += `
+					<svg class="icon icon-sm ${fill_class}">
 						<use href="#icon-star"></use>
-					</svg>`;
+					</svg>
+				`;
 			}
 			return stars;
 		}
diff --git a/erpnext/templates/pages/customer_reviews.py b/erpnext/templates/pages/customer_reviews.py
index 696ecea..02c03d3 100644
--- a/erpnext/templates/pages/customer_reviews.py
+++ b/erpnext/templates/pages/customer_reviews.py
@@ -10,10 +10,10 @@
 	context.full_page = True
 	context.reviews = None
 
-	if frappe.form_dict and frappe.form_dict.get("item_code"):
-		context.item_code = frappe.form_dict.get("item_code")
-		context.web_item = frappe.db.get_value("Website Item", {"item_code": context.item_code}, "name")
+	if frappe.form_dict and frappe.form_dict.get("web_item"):
+		context.web_item = frappe.form_dict.get("web_item")
 		context.user_is_customer = check_if_user_is_customer()
 		context.enable_reviews = get_shopping_cart_settings().enable_reviews
 		if context.enable_reviews:
-			get_item_reviews(context.web_item, 0, 10, context)
+			reviews_data = get_item_reviews(context.web_item)
+			context.update(reviews_data)