{"title":"AGO Ưu đãi chào đón trở lại","description":"\u003cp\u003eNăm món được yêu thích hằng ngày đáng để quay lại mua. Mua các món này tại Asian Grocer Online, do UMall vận hành.\u003c\/p\u003e","products":[{"product_id":"fresh-bean-sprouts-approximately-400g","title":"Giá đỗ xanh (Bean Sprouts) 400 g – giá tươi giòn, giàu vitamin","description":"\u003cdiv id=\"umall-desc\" style=\"--brand:#DB3A35;max-width:860px;margin:0 auto;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#0f172a;line-height:1.6;\"\u003e\n\u003cstyle\u003e#umall-desc a{ text-decoration:none !important; border-bottom:1px solid var(--brand) !important; } #umall-desc a:hover{ opacity:.85; }\u003c\/style\u003e\n\n\n\n\n\n\n\u003cstyle\u003e\n\/* DESC ENHANCER v1 *\/\n#umall-desc .um-slider{ display:grid; grid-auto-flow:column; grid-auto-columns:180px; gap:12px; overflow-x:auto; padding:2px 2px 8px; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; margin-top:12px; }\n#umall-desc .um-slider::-webkit-scrollbar{ height:8px; }\n#umall-desc .um-slider::-webkit-scrollbar-thumb{ background:#e5e7eb; border-radius:999px; }\n#umall-desc .um-card{ scroll-snap-align:start; border:1px solid #e5e7eb; border-radius:12px; overflow:hidden; background:#fff; display:flex; flex-direction:column; text-decoration:none; color:inherit; }\n#umall-desc a.um-card{ border-bottom:1px solid #e5e7eb !important; text-decoration:none !important; }\n#umall-desc a[style*=\"border-radius:999\"]{ border-bottom:1px solid #e2e8f0 !important; text-decoration:none !important; }\n#umall-desc .um-imgbox{ background:#fff; display:flex; align-items:center; justify-content:center; width:100%; aspect-ratio:1\/1; height:auto; position:relative; }\n#umall-desc .um-imgbox img{ max-width:100%; max-height:100%; object-fit:contain; }\n#umall-desc .um-badge{ position:absolute; top:8px; left:8px; background:rgba(219,58,53,.92); color:#fff; font-weight:700; font-size:12px; padding:2px 6px; border-radius:6px; display:none; }\n#umall-desc .um-meta{ padding:10px 10px 12px; display:flex; flex-direction:column; gap:6px; }\n#umall-desc .um-title{ font-size:14px; font-weight:600; color:#0f172a; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:38px; }\n#umall-desc .um-price{ font-size:14px; font-weight:700; color:var(--brand); display:flex; align-items:center; gap:8px; }\n#umall-desc .um-price s{ color:#94a3b8; font-weight:500; }\n#umall-desc .um-recipes{ display:grid; grid-template-columns:repeat(1,minmax(0,1fr)); gap:12px; margin-top:12px; }\n@media (min-width:640px){ #umall-desc .um-recipes{ grid-template-columns:repeat(2,minmax(0,1fr)); } }\n@media (min-width:1024px){ #umall-desc .um-recipes{ grid-template-columns:repeat(3,minmax(0,1fr)); } }\n#umall-desc .um-rcard{ border:1px solid #e2e8f0; border-radius:12px; background:#fff; padding:16px; }\n#umall-desc .um-rcard h4{ margin:0 0 6px; font-size:16px; font-weight:700; color:#0f172a; }\n#umall-desc .um-rcard p, #umall-desc .um-rcard div{ margin:0; font-size:14px; color:#334155; }\n#umall-desc .um-section-title{ margin:16px 0 10px; font-size:16px; font-weight:800; }\n\u003c\/style\u003e\n\n\n\n\n\n\n\n\u003csection style=\"border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:22px;margin-top:16px;\"\u003e\n  \u003ch1 style=\"margin:0 0 6px;font-size:26px;font-weight:800;color:#0f172a;\"\u003eGiá đậu xanh 400g\u003c\/h1\u003e\n  \u003cp style=\"margin:0;color:#475569;font-size:14px;\"\u003eCòn gọi là giá đậu xanh\u003c\/p\u003e\n\u003c\/section\u003e\n\n\u003csection style=\"border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:20px;margin-top:16px;\"\u003e\n  \u003ch3 style=\"margin:0 0 10px;font-size:18px;font-weight:700;\"\u003eĐặc điểm sản phẩm\u003c\/h3\u003e\n  \u003cul style=\"margin:0 0 0 18px;color:#334155;font-size:14px;\"\u003e\n    \u003cli\u003eGiá tươi, giòn; xào nhanh vẫn giữ được độ giòn.\u003c\/li\u003e\n    \u003cli\u003eVị thanh nhẹ, dễ thấm nước sốt và gia vị.\u003c\/li\u003e\n    \u003cli\u003eDùng để xào, ăn cùng mì hoặc cơm, nấu canh hay trộn salad giòn mát.\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/section\u003e\n\n\u003csection style=\"border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:20px;margin-top:16px;\"\u003e\n  \u003ch3 style=\"margin:0 0 14px;font-size:18px;font-weight:700;\"\u003eGợi ý chế biến\u003c\/h3\u003e\n  \u003cdiv style=\"display:grid;grid-template-columns:1fr;gap:14px;\"\u003e\n    \u003cdiv style=\"border:1px solid #e2e8f0;border-radius:12px;padding:14px;background:#fff;\"\u003e\n      \u003ch4 style=\"margin:0 0 6px;font-size:16px;font-weight:700;\"\u003eGiá xào tỏi\u003c\/h4\u003e\n      \u003cp style=\"margin:0;color:#334155;font-size:14px;\"\u003eLàm nóng chảo đến khi bốc khói, cho ít dầu rồi thêm \u003ca href=\"\/vi\/products\/peeled-garlic-cloves-250g\" style=\"color:var(--brand);\"\u003etỏi\u003c\/a\u003ethái lát. Cho giá vào đảo cùng một ít \u003ca href=\"\/vi\/products\/haday-golden-label-light-soy-sauce-1-28l\" style=\"color:var(--brand);\"\u003enước tương nhạt\u003c\/a\u003e; thêm vài giọt \u003ca href=\"\/vi\/products\/lee-kum-kee-pure-sesame-oil-207ml\" style=\"color:var(--brand);\"\u003edầu mè\u003c\/a\u003eở cuối. Xào nhanh 1–2 phút để giá còn giòn.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv style=\"border:1px solid #e2e8f0;border-radius:12px;padding:14px;background:#fff;\"\u003e\n      \u003ch4 style=\"margin:0 0 6px;font-size:16px;font-weight:700;\"\u003eCanh nấm kim châm \u0026amp; đậu hũ \u003cspan style=\"display:inline-flex;align-items:center;border:1px solid rgba(219,58,53,.2);color:var(--brand);background:rgba(219,58,53,.08);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;margin-left:8px\"\u003eMón nước\u003c\/span\u003e\n\u003c\/h4\u003e\n      \u003cp style=\"margin:0;color:#334155;font-size:14px;\"\u003eĐun liu riu \u003ca href=\"\/vi\/products\/bull-head-clear-chicken-broth-411ml-canned-chicken-stock\" style=\"color:var(--brand);\"\u003enước dùng gà trong\u003c\/a\u003e, cho \u003ca href=\"\/vi\/products\/chois-enoki-mushrooms-300g\" style=\"color:var(--brand);\"\u003enấm kim châm\u003c\/a\u003e và \u003ca href=\"\/vi\/products\/fresh-ever-green-smooth-tofu-approximately-300g\" style=\"color:var(--brand);\"\u003eđậu hũ non\u003c\/a\u003ecắt khối vào. Cho giá vào trong 30–60 giây cuối, nêm nhẹ vừa ăn.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv style=\"border:1px solid #e2e8f0;border-radius:12px;padding:14px;background:#fff;\"\u003e\n      \u003ch4 style=\"margin:0 0 6px;font-size:16px;font-weight:700;\"\u003eSalad giá trộn giấm mè\u003c\/h4\u003e\n      \u003cp style=\"margin:0;color:#334155;font-size:14px;\"\u003eRửa giá rồi để thật ráo. Trộn với cà rốt\/dưa leo cắt sợi, một ít \u003ca href=\"\/vi\/products\/hengshun-white-rice-vinegar-500ml\" style=\"color:var(--brand);\"\u003egiấm gạo trắng\u003c\/a\u003e, vài giọt dầu mè và \u003ca href=\"\/vi\/products\/fresh-bundle-of-spring-onions\" style=\"color:var(--brand);\"\u003ehành lá\u003c\/a\u003ethái nhỏ. Làm lạnh một lúc rồi dùng.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv style=\"border:1px solid #e2e8f0;border-radius:12px;padding:14px;background:#fff;\"\u003e\n      \u003ch4 style=\"margin:0 0 6px;font-size:16px;font-weight:700;\"\u003eBún xào kiểu hàng quán\u003c\/h4\u003e\n      \u003cp style=\"margin:0;color:#334155;font-size:14px;\"\u003eXào \u003ca href=\"\/vi\/products\/cha-kou-rice-noodles-1kg\" style=\"color:var(--brand);\"\u003ebún gạo\u003c\/a\u003e đã ngâm với \u003ca href=\"\/vi\/products\/canobolas-free-range-eggs-18-pieces-1kg\" style=\"color:var(--brand);\"\u003etrứng\u003c\/a\u003eđánh tan, tỏi và hẹ. Cho giá vào sau cùng cùng một muỗng \u003ca href=\"\/vi\/products\/haitian-premium-oyster-sauce-700g\" style=\"color:var(--brand);\"\u003edầu hào\u003c\/a\u003e để món xào bóng và thơm mùi chảo.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/section\u003e\n\n\u003csection style=\"border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:20px;margin-top:16px;\"\u003e\n  \u003ch3 style=\"margin:0 0 10px;font-size:18px;font-weight:700;\"\u003eMẹo sơ chế và nấu\u003c\/h3\u003e\n  \u003cul style=\"margin:0 0 0 18px;color:#334155;font-size:14px;\"\u003e\n    \u003cli\u003eRửa bằng nước lạnh rồi để thật ráo; nước còn đọng dễ làm loãng sốt xào.\u003c\/li\u003e\n    \u003cli\u003eCó thể ngắt bỏ phần rễ dài để món ăn gọn hơn.\u003c\/li\u003e\n    \u003cli\u003eXào nhanh trên lửa lớn trong 1–2 phút, hoặc cho giá vào cuối để giữ độ giòn.\u003c\/li\u003e\n    \u003cli\u003eMuốn vị dịu hơn, trụng nhanh (20–30 giây) rồi ngâm nước lạnh trước khi chế biến.\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/section\u003e\n\n\u003csection style=\"border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:20px;margin-top:16px;\"\u003e\n  \u003ch3 style=\"margin:0 0 10px;font-size:18px;font-weight:700;\"\u003eNguyên liệu dùng kèm\u003c\/h3\u003e\n  \u003cp style=\"margin:0;color:#334155;font-size:14px;display:flex;flex-wrap:wrap;gap:8px;\"\u003e\n    \u003ca href=\"\/vi\/products\/haday-golden-label-light-soy-sauce-1-28l\" style=\"color:var(--brand);\"\u003eNước tương nhạt\u003c\/a\u003e\n    \u003cspan style=\"color:#94a3b8;\"\u003e•\u003c\/span\u003e\n    \u003ca href=\"\/vi\/products\/lee-kum-kee-pure-sesame-oil-207ml\" style=\"color:var(--brand);\"\u003eDầu mè\u003c\/a\u003e\n    \u003cspan style=\"color:#94a3b8;\"\u003e•\u003c\/span\u003e\n    \u003ca href=\"\/vi\/products\/chois-enoki-mushrooms-300g\" style=\"color:var(--brand);\"\u003eNấm kim châm\u003c\/a\u003e\n    \u003cspan style=\"color:#94a3b8;\"\u003e•\u003c\/span\u003e\n    \u003ca href=\"\/vi\/products\/fresh-ever-green-chinese-style-tofu-approximately-500g\" style=\"color:var(--brand);\"\u003eĐậu hũ truyền thống (loại cứng)\u003c\/a\u003e\n    \u003cspan style=\"color:#94a3b8;\"\u003e•\u003c\/span\u003e\n    \u003ca href=\"\/vi\/products\/chunsi-jiangxi-rice-noodles-300g\" style=\"color:var(--brand);\"\u003eBún gạo\u003c\/a\u003e\n    \u003cspan style=\"color:#94a3b8;\"\u003e•\u003c\/span\u003e\n    \u003ca href=\"\/vi\/products\/hengshun-white-rice-vinegar-500ml\" style=\"color:var(--brand);\"\u003eGiấm gạo trắng\u003c\/a\u003e\n    \u003cspan style=\"color:#94a3b8;\"\u003e•\u003c\/span\u003e\n    \u003ca href=\"\/vi\/products\/fresh-bundle-of-spring-onions\" style=\"color:var(--brand);\"\u003eHành lá\u003c\/a\u003e\n  \u003c\/p\u003e\n\u003c\/section\u003e\n\n\u003csection style=\"border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:20px;margin-top:16px;text-align:center;\"\u003e\n  \u003ch3 style=\"margin:0 0 8px;font-size:18px;font-weight:700;\"\u003eSản phẩm cùng nhóm\u003c\/h3\u003e\n  \u003ca href=\"\/vi\/collections\/order-mushrooms-beans-online-next-day-delivery-in-sydney\" style=\"display:inline-block;color:var(--brand);padding:10px 14px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;\"\u003eXem nấm \u0026amp; đậu\u003c\/a\u003e\n\u003c\/section\u003e\n\n\u003csection style=\"border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:20px;margin-top:16px;\"\u003e\u003ch3 style=\"margin:0 0 8px;font-size:18px;font-weight:700;\"\u003eGiao hàng \u0026amp; thời gian nhận\u003c\/h3\u003e\n\u003cp style=\"margin:6px 0 10px;color:#334155;font-size:14px;\"\u003eBạn có thể \u003cstrong\u003eTheo dõi\u003c\/strong\u003e vị trí người giao hàng theo \u003cstrong\u003eThời gian thực\u003c\/strong\u003e trực tuyến! Nhận đơn sớm nhất vào \u003cstrong\u003eNgày hôm sau\u003c\/strong\u003e (áp dụng cho phần lớn khu vực tại Sydney).\u003c\/p\u003e\n\u003ctable style=\"width:100%;border-collapse:collapse;border:1px solid #e5e7eb;\"\u003e\n\u003cthead\u003e\u003ctr\u003e\n\u003cth style=\"text-align:left;padding:10px;border-right:1px solid #e5e7eb;background:#f8fafc;\"\u003eThời gian đặt hàng\u003c\/th\u003e\n\u003cth style=\"text-align:left;padding:10px;background:#f8fafc;\"\u003eThời gian nhận hàng\u003c\/th\u003e\n\u003c\/tr\u003e\u003c\/thead\u003e\n\u003ctbody\u003e\u003ctr\u003e\n\u003ctd style=\"padding:12px;border-top:1px solid #e5e7eb;border-right:1px solid #e5e7eb;\"\u003eHôm nay\u003c\/td\u003e\n\u003ctd style=\"padding:12px;border-top:1px solid #e5e7eb;\"\u003e\n\u003cstrong\u003eNgày hôm sau (2 lựa chọn):\u003c\/strong\u003e\u003cul style=\"margin:6px 0 0 18px;\"\u003e\n\u003cli\u003e11:30AM – 06:30PM\u003c\/li\u003e\n\u003cli\u003e05:00PM – 11:00PM\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp style=\"color:#a9a9a9;font-size:12px;margin:10px 0 0;\"\u003e* Hủy đơn sau giờ chốt đơn có thể phát sinh phí. \u003ca href=\"\/vi\/pages\/return-refund-policy\" style=\"color:#DB3A35;text-decoration:underline;\"\u003eXem tại đây\u003c\/a\u003e.\u003c\/p\u003e\n\u003cp style=\"margin:8px 0 0;color:#334155;font-size:14px;\"\u003eChi tiết: \u003ca href=\"\/vi\/pages\/delivery-information\" style=\"color:#DB3A35;text-decoration:underline;\"\u003eThông tin giao hàng\u003c\/a\u003e.\u003c\/p\u003e\u003c\/section\u003e\n\u003csection style=\"border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:20px;margin-top:16px;\"\u003e\u003ch3 style=\"margin:0 0 8px;font-size:18px;font-weight:700;\"\u003ePhí giao hàng\u003c\/h3\u003e\n\u003cp style=\"font-size:13px;color:#666;margin:0 0 8px\"\u003eMỗi đơn hàng có một khoản phí dịch vụ nhỏ. Vui lòng xem \u003ca href=\"\/vi\/pages\/delivery-information\"\u003ethông tin giao hàng\u003c\/a\u003e để biết mức phí hiện hành.\u003c\/p\u003e\n\u003ctable style=\"width:100%;border-collapse:collapse;border:1px solid #e5e7eb;\"\u003e\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding:10px;border-right:1px solid #e5e7eb;border-top:1px solid #e5e7eb;\"\u003eTừ $69.00 trở lên\u003c\/td\u003e\n\u003ctd style=\"padding:10px;border-top:1px solid #e5e7eb;\"\u003e\u003cstrong\u003eMiễn phí\u003c\/strong\u003e\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding:10px;border-right:1px solid #e5e7eb;border-top:1px solid #e5e7eb;\"\u003e$20 – $68.99\u003c\/td\u003e\n\u003ctd style=\"padding:10px;border-top:1px solid #e5e7eb;\"\u003e$4.99 \u003cspan style=\"color:#999;font-size:12px\"\u003e(trước đây $10)\u003c\/span\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding:10px;border-right:1px solid #e5e7eb;border-top:1px solid #e5e7eb;\"\u003e$0.01 – $19.99\u003c\/td\u003e\n\u003ctd style=\"padding:10px;border-top:1px solid #e5e7eb;\"\u003e$7.99 \u003cspan style=\"color:#999;font-size:12px\"\u003e(trước đây $10)\u003c\/span\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\u003c\/table\u003e\u003c\/section\u003e\n\u003c\/div\u003e\n\n\n\n\n\n\n\n\n\n\u003cscript\u003e\n\/* DESC ENHANCER JS v1 *\/\n(function(){\n  const root = document.getElementById('umall-desc');\n  if(!root) return;\n\n  const handleFromHref = (href)=\u003e{\n    try{ const u = new URL(href, location.origin); const parts=u.pathname.split('\/').filter(Boolean); const i=parts.findIndex(p=\u003ep==='products'); if(i\u003e=0\u0026\u0026parts[i+1]) return parts[i+1]; }catch(e){}\n    return null;\n  };\n  const money = (cents)=\u003e{ if(window.Shopify \u0026\u0026 Shopify.formatMoney) return Shopify.formatMoney(cents, \"A${{amount}}\"); return typeof cents==='number' ? 'A$'+(cents\/100).toFixed(2) : ''; };\n  const buildProdCard = (handle)=\u003e{ const a=document.createElement('a'); a.className='um-card'; a.href=\"\/vi\/products\"+handle; a.setAttribute('data-handle',handle); a.innerHTML='\u003cdiv class=\"um-imgbox\"\u003e\u003cimg alt=\"'+handle+'\" loading=\"lazy\"\/\u003e\u003cspan class=\"um-badge\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"um-meta\"\u003e\u003cdiv class=\"um-title\"\u003e'+handle.replace(\/-\/g,' ')+'\u003c\/div\u003e\u003cdiv class=\"um-price\"\u003e\u003c\/div\u003e\u003c\/div\u003e'; return a; };\n  const hydrate = async (a)=\u003e{ const h=a.getAttribute('data-handle'); try{ const r=await fetch('\/products\/'+h+'.js',{credentials:'same-origin'}); if(!r.ok) return; const p=await r.json(); const img=a.querySelector('img'); if(p.images\u0026\u0026p.images[0]) img.src=p.images[0]; const t=a.querySelector('.um-title'); t.textContent=p.title||t.textContent; const vs=(p.variants||[]); const avail=vs.filter(v=\u003ev.available); const arr=avail.length?avail:vs; if(arr.length){ const min=Math.min(...arr.map(v=\u003ev.price)); const maxCompare=Math.max(...arr.map(v=\u003ev.compare_at_price||0)); const price=a.querySelector('.um-price'); price.textContent=''; const cur=document.createElement('span'); cur.textContent=money(min); price.appendChild(cur); if(maxCompare \u0026\u0026 maxCompare\u003emin){ const s=document.createElement('s'); s.textContent=money(maxCompare); price.appendChild(document.createTextNode(' ')); price.appendChild(s); const badge=a.querySelector('.um-badge'); const off=Math.round((1-min\/maxCompare)*100); badge.textContent='-'+off+'%'; badge.style.display='inline-block'; } } }catch(e){} };\n\n  const ensureAfter = (refNode, node)=\u003e{ if(!refNode || !node) return; if(node.parentElement) return; refNode.parentElement.insertBefore(node, refNode.nextSibling); };\n\n  \/\/ How to enjoy → 卡片（保留原内容；隐藏原块；标题统一“Recipes with this product”）\n  try{\n    \/\/ 1) 更鲁棒地找到标题（h2\/h3\/h4）\n    const enjoyH = Array.from(root.querySelectorAll('h2,h3,h4')).find(h=\u003e\/(how to enjoy|ways to enjoy|serving ideas|recipes with this product|食用建议|食用灵感|食法)\/i.test(h.textContent));\n    if(enjoyH){\n      const container = enjoyH.parentElement;\n      \/\/ 2) 就近查找列表或段落（同容器或下一个兄弟）\n      let listEl = container.querySelector('ol, ul');\n      if(!listEl){ const sib = enjoyH.nextElementSibling; if(sib){ listEl = sib.querySelector \u0026\u0026 sib.querySelector('ol, ul'); } }\n\n      \/\/ 3) 容器若不存在则创建\n      let cardsHost = container.querySelector('#um-recipes-cards');\n      if(!cardsHost){ cardsHost=document.createElement('div'); cardsHost.id='um-recipes-cards'; cardsHost.className='um-recipes'; ensureAfter(listEl||enjoyH, cardsHost); }\n      let prodHost = container.querySelector('#um-recipes-products');\n      if(!prodHost){ prodHost=document.createElement('div'); prodHost.id='um-recipes-products'; prodHost.className='um-slider'; ensureAfter(cardsHost, prodHost); }\n\n      const links = new Set();\n      let items = [];\n      if(listEl){ items = Array.from(listEl.children).filter(n=\u003en.tagName==='LI'); }\n      \/\/ 4) 若没有列表，尝试用同容器的段落或“网格DIV\/ARTICLE”作为卡片项\n      if(items.length === 0){\n        let ps = Array.from(container.querySelectorAll(':scope \u003e p'));\n        if(ps.length \u003c 2){ const sib = enjoyH.nextElementSibling; if(sib){ ps = Array.from(sib.querySelectorAll(':scope \u003e p')); } }\n        items = ps;\n      }\n      \/\/ 5) 同容器下寻找“网格容器”（含多个子块，且子块内有 h4\/strong）\n      let gridToHide = null;\n      if(items.length === 0){\n        const ch = Array.from(container.children || []);\n        for(const el of ch){\n          if(el === enjoyH) continue;\n          if(el.children \u0026\u0026 el.children.length \u003e= 2){\n            const first = el.children[0];\n            if((first.querySelector \u0026\u0026 first.querySelector('h3, h4, h5, strong, b, div[style*=\"font-weight:700\"]'))){\n              items = Array.from(el.children);\n              gridToHide = el;\n              break;\n            }\n          }\n        }\n      }\n      \/\/ 6) 仍然没有，则看紧跟标题的下一个块（如显示为卡片的 div\/article 列表）\n      if(items.length === 0){\n        const sib = enjoyH.nextElementSibling;\n        if(sib){\n          const children = Array.from(sib.children || []);\n          if(children.length \u003e= 2){ items = children; gridToHide = sib; }\n        }\n      }\n\n      if(items.length){\n        items.forEach((node, idx)=\u003e{\n          const card=document.createElement('article'); card.className='um-rcard';\n          const titleNode = node.querySelector \u0026\u0026 node.querySelector('h3, h4, h5, div[style*=\"font-weight:700\"], strong, b, a');\n          const h4=document.createElement('h4'); h4.textContent = titleNode ? (titleNode.textContent.trim()||('Recipe '+(idx+1))) : ('Recipe '+(idx+1));\n          const clone = node.cloneNode(true);\n          const rm = clone.querySelector \u0026\u0026 clone.querySelector('h3, h4, h5, div[style*=\"font-weight:700\"], strong, b'); if(rm) rm.remove();\n          const body=document.createElement('div'); while(clone.firstChild){ body.appendChild(clone.firstChild); }\n          card.appendChild(h4); card.appendChild(body); cardsHost.appendChild(card);\n          (node.querySelectorAll ? node.querySelectorAll('a[href]') : []).forEach(a=\u003e{ const h=handleFromHref(a.getAttribute('href')); if(h) links.add(h); });\n        });\n        \/\/ 统一标题并隐藏原内容块\n        enjoyH.textContent = 'Recipes with this product';\n        if(listEl){ listEl.style.display='none'; }\n        else if(gridToHide){ gridToHide.style.display='none'; }\n        else {\n          \/\/ 隐藏直接段落（避免把其它段落隐藏过多，仅隐藏紧邻的）\n          const ps = Array.from(container.querySelectorAll(':scope \u003e p'));\n          ps.forEach(p=\u003e{ p.style.display='none'; });\n        }\n      }\n      if(prodHost \u0026\u0026 links.size){ Array.from(links).forEach(h=\u003e{ const a=buildProdCard(h); prodHost.appendChild(a); hydrate(a); }); }\n    }\n  }catch(e){}\n\n  \/\/ Pairs well → 滑动卡片（并将标题统一为 “Pairs well with these products”）\n  try{\n    const pairsH = Array.from(root.querySelectorAll('h2,h3,h4')).find(h=\u003e\/(pairs\\s*well|pairswell|配搭建议|搭配推荐|搭配)\/i.test(h.textContent));\n    if(pairsH){\n      const section=pairsH.parentElement; const ul=section.querySelector('ul');\n      \/\/ 统一标题文案\n      pairsH.textContent = 'Pairs well with these products';\n      let host=section.querySelector('#um-pairs-slider');\n      if(!host){ host=document.createElement('div'); host.id='um-pairs-slider'; host.className='um-slider'; ensureAfter(ul||pairsH, host); }\n      const unique=new Set();\n      \/\/ 允许 p 段落或任意容器中的产品链接\n      section.querySelectorAll('a[href]').forEach(a=\u003e{ const h=handleFromHref(a.getAttribute('href')); if(h \u0026\u0026 !unique.has(h)) unique.add(h); });\n      unique.forEach(h=\u003e{ const card=buildProdCard(h); host.appendChild(card); hydrate(card); });\n    }\n  }catch(e){}\n\n  \/\/ More in this category → 条件滑动，成功后隐藏原标题与列表，把 Explore CTA 放到滑动条上方\n  try{\n    const moreH = Array.from(root.querySelectorAll('h2,h3,h4')).find(h=\u003e\/(more in this category|同类推荐|更多此分类)\/i.test(h.textContent));\n    if(moreH){ const section=moreH.parentElement; const ul=section.querySelector('ul'); let host=section.querySelector('#um-more-slider'); if(!host){ host=document.createElement('div'); host.id='um-more-slider'; host.className='um-slider'; ensureAfter(ul||moreH, host); } if(ul){ const links=ul.querySelectorAll('a[href]'); if(links.length\u003e=2){ const unique=new Set(); links.forEach(a=\u003e{ const h=handleFromHref(a.getAttribute('href')); if(h \u0026\u0026 !unique.has(h)){ unique.add(h); const card=buildProdCard(h); host.appendChild(card); hydrate(card); } }); if(host.children.length){ ul.style.display='none'; moreH.style.display='none'; const ctaWrap = Array.from(section.querySelectorAll('div')).find(d=\u003ed.querySelector('a[href^=\"\/collections\/\"]')); if(ctaWrap){ section.insertBefore(ctaWrap, host); } } } } }\n  }catch(e){}\n})();\n\u003c\/script\u003e\n\n\n\n\n\n\n\n\n","brand":"Umall Fresh","offers":[{"title":"Default Title","offer_id":48151495442719,"sku":"A0735745752289","price":1.79,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/09356dc1852ab9dd791f2cc663067593.jpg?v=1735370753"},{"product_id":"fresh-a2-full-cream-milk-2l","title":"a2 Sữa nguyên kem 2L","description":"\u003cp\u003e\u003cmeta charset=\"utf-8\"\u003e\u003cspan\u003eMỗi đơn hàng mua tối đa 1. Không áp dụng ưu đãi mua nhiều.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003eSữa tươi nguyên kem a2 có vị béo đậm, chất lượng cao. Quy cách 2L tiện cho gia đình hoặc người thường xuyên uống sữa.\u003c\/p\u003e","brand":"a2","offers":[{"title":"Default Title","offer_id":48151619633439,"sku":"A9335390000035","price":6.79,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/80b207f75ce50ed1402bf2318eac201e2nCf8WIuxe7NRZ0Tc1LZZ1AS0Em6n9I4.jpg?v=1745982943"},{"product_id":"nongshim-shin-ramyun-noodles-120g-pack-of-5-bags","title":"Nongshim Shin Ramyun Mì nước [Giới hạn 1 mỗi lần mua], 120g × 5 gói","description":"\u003cp class=\"p1\"\u003eNongshim Shin Ramyun là mì nước cay nổi tiếng của Hàn Quốc, với nước dùng đậm đà và sợi mì dai. Một lựa chọn cho bạn khi muốn thưởng thức mì ramen kiểu Hàn Quốc.\u003c\/p\u003e\n\u003cp class=\"p2\"\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp class=\"p3\"\u003e\u003cb\u003eĐiểm nổi bật:\u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\n\u003cp class=\"p4\"\u003e \u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp class=\"p1\"\u003e\u003cspan class=\"s1\"\u003e\u003cb\u003eNước dùng cay đặc trưng:\u003c\/b\u003e\u003c\/span\u003e  Nước súp cay nồng với vị đậm đà nhiều lớp.\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cp class=\"p1\"\u003e\u003cspan class=\"s1\"\u003e\u003cb\u003eSợi mì dai:\u003c\/b\u003e\u003c\/span\u003e  Sợi mì dai, ăn chắc miệng và giữ được độ dai trong nước dùng nóng.\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cp class=\"p1\"\u003e\u003cspan class=\"s1\"\u003e\u003cb\u003eHương vị Hàn Quốc:\u003c\/b\u003e\u003c\/span\u003e  Hương vị quen thuộc trong các gia đình và quán ăn Hàn Quốc.\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cp class=\"p1\"\u003e\u003cspan class=\"s1\"\u003e\u003cb\u003eGói mì tiện lợi:\u003c\/b\u003e\u003c\/span\u003e  Dùng cho bữa ăn nhanh hoặc bữa khuya—chỉ cần nấu rồi thưởng thức.\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cp class=\"p1\"\u003e\u003cspan class=\"s1\"\u003e\u003cb\u003eThương hiệu Nongshim:\u003c\/b\u003e\u003c\/span\u003e  Sản phẩm của Nongshim, thương hiệu mì ăn liền hàng đầu trên thế giới.\u003c\/p\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp class=\"p1\"\u003eGiới hạn 1 mỗi lần mua.  Không áp dụng ưu đãi giảm giá khi mua nhiều.\u003c\/p\u003e","brand":"Nongshim","offers":[{"title":"Default Title","offer_id":48157871603999,"sku":"A031146157365","price":4.99,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/b1070d08-8219-4883-a7a3-7b2a2a51fbe7.jpg?v=1747018788"},{"product_id":"indomie-mi-goreng-classic-fried-noodles-85g-x-5-packs","title":"Mì Indomie Mi Goreng 85 g × 5 gói – mì trộn Indonesia hương vị cổ điển","description":"\u003cp\u003eIndomie Mi Goreng là món mì xào vị truyền thống được yêu thích tại Indonesia.\u003cbr\u003eGói gồm 5 phần ăn riêng, mỗi phần 85g, tiện chuẩn bị bữa ăn nhanh.\u003cbr\u003eGia vị Indomie Mi Goreng gồm bột nêm, dầu gia vị, nước tương ngọt, tương ớt và hành tím phi, tạo nên vị đậm đà cho mì.\u003cbr\u003eMì xào chế biến trong vài phút, tiện cho một bữa ăn ngon miệng.\u003cbr\u003eBạn có thể dùng vào ngày bận rộn, ăn khuya hoặc khi muốn thưởng thức hương vị Indonesia.\u003c\/p\u003e\n\u003cp class=\"p1\"\u003e\u003cbr\u003e\u003c\/p\u003e","brand":"Indomie","offers":[{"title":"Default Title","offer_id":48649122316575,"sku":"A089686170924","price":3.39,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/f64448d20160ae7a7e0ef1dd2c51465cvdiJvwvEpouTmmeIqS7WpIy8zIatrp8Z_3c816ff3-70c6-449c-9f6b-bd73eb188e34.jpg?v=1745982854"},{"product_id":"shanghai-bok-choy-1-bunch","title":"Cải thìa Shanghai - 1 bó","description":"\u003cstyle\u003e#umall-desc a{ text-decoration:none !important; border-bottom:1px solid var(--brand) !important; } #umall-desc a:hover{ opacity:.85; }\u003c\/style\u003e\n\u003cstyle\u003e\n\/* DESC ENHANCER v1 *\/\n#umall-desc .um-slider{ display:grid; grid-auto-flow:column; grid-auto-columns:180px; gap:12px; overflow-x:auto; padding:2px 2px 8px; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; margin-top:12px; }\n#umall-desc .um-slider::-webkit-scrollbar{ height:8px; }\n#umall-desc .um-slider::-webkit-scrollbar-thumb{ background:#e5e7eb; border-radius:999px; }\n#umall-desc .um-card{ scroll-snap-align:start; border:1px solid #e5e7eb; border-radius:12px; overflow:hidden; background:#fff; display:flex; flex-direction:column; text-decoration:none; color:inherit; }\n#umall-desc a.um-card{ border-bottom:1px solid #e5e7eb !important; text-decoration:none !important; }\n#umall-desc a[style*=\"border-radius:999\"]{ border-bottom:1px solid #e2e8f0 !important; text-decoration:none !important; }\n#umall-desc .um-imgbox{ background:#fff; display:flex; align-items:center; justify-content:center; width:100%; aspect-ratio:1\/1; height:auto; position:relative; }\n#umall-desc .um-imgbox img{ max-width:100%; max-height:100%; object-fit:contain; }\n#umall-desc .um-badge{ position:absolute; top:8px; left:8px; background:rgba(219,58,53,.92); color:#fff; font-weight:700; font-size:12px; padding:2px 6px; border-radius:6px; display:none; }\n#umall-desc .um-meta{ padding:10px 10px 12px; display:flex; flex-direction:column; gap:6px; }\n#umall-desc .um-title{ font-size:14px; font-weight:600; color:#0f172a; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:38px; }\n#umall-desc .um-price{ font-size:14px; font-weight:700; color:var(--brand); display:flex; align-items:center; gap:8px; }\n#umall-desc .um-price s{ color:#94a3b8; font-weight:500; }\n#umall-desc .um-recipes{ display:grid; grid-template-columns:repeat(1,minmax(0,1fr)); gap:12px; margin-top:12px; }\n@media (min-width:640px){ #umall-desc .um-recipes{ grid-template-columns:repeat(2,minmax(0,1fr)); } }\n@media (min-width:1024px){ #umall-desc .um-recipes{ grid-template-columns:repeat(3,minmax(0,1fr)); } }\n#umall-desc .um-rcard{ border:1px solid #e2e8f0; border-radius:12px; background:#fff; padding:16px; }\n#umall-desc .um-rcard h4{ margin:0 0 6px; font-size:16px; font-weight:700; color:#0f172a; }\n#umall-desc .um-rcard p, #umall-desc .um-rcard div{ margin:0; font-size:14px; color:#334155; }\n#umall-desc .um-section-title{ margin:16px 0 10px; font-size:16px; font-weight:800; }\n\u003c\/style\u003e\n\u003csection style=\"--brand: #DB3A35; max-width: 860px; margin: 0 auto; padding: 8px 12px; color: #0f172a; font-family: system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif; line-height: 1.6;\" id=\"umall-desc\"\u003e\n\u003csection style=\"border: 1px solid #e2e8f0; background: #fff; border-radius: 16px; padding: 20px;\"\u003e\n\u003ch1 style=\"margin: 0; font-size: 26px; font-weight: 800;\"\u003eCải thìa Shanghai — 1 bó\u003c\/h1\u003e\n\u003cp style=\"margin: 10px 0 0; color: #475569; font-size: 14px;\"\u003eCòn gọi là cải thìa hoặc pak choi. Bẹ xanh ngọc giòn, lá mềm, vị ngọt tự nhiên — hợp xào tỏi, nấu mì nước hoặc hấp đơn giản. Mau chín, ít calo, dễ dùng hằng ngày, có giao hàng ngày hôm sau tại Sydney.\u003c\/p\u003e\n\u003cimg style=\"width: 100%; border-radius: 12px; margin-top: 12px; display: block;\" alt=\"Shanghai Bok Choy bunch\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/27f3145cc4c2c3550f84f6692bec729d5cI6GKMEDAqomUTyc4G2kFnXVEFWCxhD.jpg?v=1745982846\"\u003e\u003c\/section\u003e\n\u003csection style=\"border: 1px solid #e2e8f0; background: #fff; border-radius: 16px; padding: 20px; margin-top: 16px;\"\u003e\n\u003ch3 style=\"margin: 0 0 8px; font-size: 18px; font-weight: bold;\"\u003eĐiểm nổi bật\u003c\/h3\u003e\n\u003cul style=\"margin: 8px 0 0 18px; color: #334155; font-size: 14px;\"\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003cspan\u003e \u003cmeta charset=\"utf-8\"\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(51, 65, 85); font-size: 14px;\"\u003eVị ngọt thanh, nhẹ nhàng, giòn mát.\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\u003cspan\u003eNấu nhanh: xào 2–3 phút hoặc hấp 3–4 phút.\u003c\/span\u003e\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\u003cspan\u003e\u003cmeta charset=\"utf-8\"\u003eLựa chọn nhẹ nhàng cho bữa ăn ít calo.\u003c\/span\u003e\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003cspan\u003e\u003c\/span\u003e\n\u003cdiv\u003e\u003cspan\u003eDễ kết hợp trong món xào, canh, mì và rau hấp đơn giản.\u003c\/span\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/section\u003e\n\u003csection style=\"border: 1px solid #e2e8f0; background: #fff; border-radius: 16px; padding: 20px; margin-top: 16px;\"\u003e\n\u003cdiv style=\"display: grid; grid-template-columns: 1fr; gap: 14px;\"\u003e\n\u003cdiv style=\"border: 1px solid #e2e8f0; border-radius: 12px; padding: 14px; background: #fff;\"\u003e\n\u003ch4 style=\"margin: 0 0 6px; font-size: 16px; font-weight: bold;\"\u003e\n\u003cmeta charset=\"utf-8\"\u003e \u003cspan style=\"font-size: 18px; font-weight: bold; color: rgb(15, 23, 42);\"\u003eGợi ý chế biến\u003c\/span\u003e\n\u003c\/h4\u003e\n\u003ch4 style=\"margin: 0 0 6px; font-size: 16px; font-weight: bold;\"\u003eCải thìa Shanghai xào tỏi trong 5 phút\u003c\/h4\u003e\n\u003cp style=\"margin: 6px 0; color: #475569; font-size: 14px;\"\u003eChẻ đôi theo chiều dọc, thấm khô, rồi xào với tỏi cắt lát hoặc đập dập và một chút muối. Thêm ít dầu hào để rau bóng và đậm vị. Dùng với \u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/peeled-garlic-cloves-250g\"\u003eTỏi đã bóc vỏ\u003c\/a\u003e và \u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/haitian-premium-oyster-sauce-700g\"\u003eHaitian Dầu hào cao cấp 700g\u003c\/a\u003e.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv style=\"border: 1px solid #e2e8f0; border-radius: 12px; padding: 14px; background: #fff;\"\u003e\n\u003ch4 style=\"margin: 0 0 6px; font-size: 16px; font-weight: bold;\"\u003eMì shirataki nước thanh nhẹ với cải thìa \u003cspan style=\"display: inline-flex; align-items: center; border: 1px solid rgba(219,58,53,.2); color: var(--brand); background: rgba(219,58,53,.08); border-radius: 999px; padding: 2px 8px; font-size: 12px; font-weight: 600; margin-left: 8px;\"\u003eÍt calo\u003c\/span\u003e\n\u003c\/h4\u003e\n\u003cp style=\"margin: 6px 0; color: #475569; font-size: 14px;\"\u003eĐun sôi nhẹ nước dùng gà trong, thêm cải thìa cắt nhỏ và mì shirataki; nấu vừa mềm (2‑4 phút). Thêm vài miếng nấm đã trụng. Dùng \u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/hankun-crispy-konjac-yam-threads-200g\"\u003eMì sợi konjac\u003c\/a\u003e, \u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/bull-head-clear-chicken-broth-411ml-canned-chicken-stock\"\u003eBull Head Nước dùng gà trong\u003c\/a\u003e và \u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/chois-shimeji-mushrooms-150g\"\u003eNấm shimeji\u003c\/a\u003e.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv style=\"border: 1px solid #e2e8f0; border-radius: 12px; padding: 14px; background: #fff;\"\u003e\n\u003ch4 style=\"margin: 0 0 6px; font-size: 16px; font-weight: bold;\"\u003eCải thìa trụng trộn mè–nước tương, không chiên\u003c\/h4\u003e\n\u003cp style=\"margin: 6px 0; color: #475569; font-size: 14px;\"\u003eTrụng cải thìa đến khi màu tươi, để thật ráo. Rưới hỗn hợp nhẹ gồm nước tương, giấm gạo, vài giọt dầu mè và tiêu trắng. Dùng \u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/kikkoman-all-purpose-soy-sauce-1-6l\"\u003eKikkoman Nước tương\u003c\/a\u003e, \u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/hengshun-white-rice-vinegar-500ml\"\u003eHengshun Giấm gạo trắng\u003c\/a\u003e và \u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/lee-kum-kee-pure-sesame-oil-207ml\"\u003eLee Kum Kee Dầu mè\u003c\/a\u003e.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv style=\"border: 1px solid #e2e8f0; border-radius: 12px; padding: 14px; background: #fff;\"\u003e\n\u003ch4 style=\"margin: 0 0 6px; font-size: 16px; font-weight: bold;\"\u003eCơm bò \u0026amp; cải thìa xào nhanh\u003c\/h4\u003e\n\u003cp style=\"margin: 6px 0; color: #475569; font-size: 14px;\"\u003eXào thịt bò cắt lát, thêm cải thìa cùng ít sốt yakiniku đậm đà, rồi dọn trên cơm nóng. Dùng \u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/angus-prime-shredded-beef-500g\"\u003eAngus Prime Thịt bò cắt sợi 500g\u003c\/a\u003e, \u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/ebara-grated-daikon-soy-flavored-yakiniku-sauce-270g\"\u003eEbara Sốt yakiniku củ cải trắng bào\u003c\/a\u003e và \u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/arawana-northeast-rice-5kg\"\u003eArawana Gạo Đông Bắc\u003c\/a\u003e.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cscript\u003e\n\/* DESC ENHANCER JS v1 *\/\n(function(){\n  const root = document.getElementById('umall-desc');\n  if(!root) return;\n\n  const handleFromHref = (href)=\u003e{\n    try{ const u = new URL(href, location.origin); const parts=u.pathname.split('\/').filter(Boolean); const i=parts.findIndex(p=\u003ep==='products'); if(i\u003e=0\u0026\u0026parts[i+1]) return parts[i+1]; }catch(e){}\n    return null;\n  };\n  const money = (cents)=\u003e{ if(window.Shopify \u0026\u0026 Shopify.formatMoney) return Shopify.formatMoney(cents, \"A${{amount}}\"); return typeof cents==='number' ? 'A$'+(cents\/100).toFixed(2) : ''; };\n  const buildProdCard = (handle)=\u003e{ const a=document.createElement('a'); a.className='um-card'; a.href=\"\/vi\/products\"+handle; a.setAttribute('data-handle',handle); a.innerHTML='\u003cdiv class=\"um-imgbox\"\u003e\u003cimg alt=\"'+handle+'\" loading=\"lazy\"\/\u003e\u003cspan class=\"um-badge\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"um-meta\"\u003e\u003cdiv class=\"um-title\"\u003e'+handle.replace(\/-\/g,' ')+'\u003c\/div\u003e\u003cdiv class=\"um-price\"\u003e\u003c\/div\u003e\u003c\/div\u003e'; return a; };\n  const hydrate = async (a)=\u003e{ const h=a.getAttribute('data-handle'); try{ const r=await fetch('\/products\/'+h+'.js',{credentials:'same-origin'}); if(!r.ok) return; const p=await r.json(); const img=a.querySelector('img'); if(p.images\u0026\u0026p.images[0]) img.src=p.images[0]; const t=a.querySelector('.um-title'); t.textContent=p.title||t.textContent; const vs=(p.variants||[]); const avail=vs.filter(v=\u003ev.available); const arr=avail.length?avail:vs; if(arr.length){ const min=Math.min(...arr.map(v=\u003ev.price)); const maxCompare=Math.max(...arr.map(v=\u003ev.compare_at_price||0)); const price=a.querySelector('.um-price'); price.textContent=''; const cur=document.createElement('span'); cur.textContent=money(min); price.appendChild(cur); if(maxCompare \u0026\u0026 maxCompare\u003emin){ const s=document.createElement('s'); s.textContent=money(maxCompare); price.appendChild(document.createTextNode(' ')); price.appendChild(s); const badge=a.querySelector('.um-badge'); const off=Math.round((1-min\/maxCompare)*100); badge.textContent='-'+off+'%'; badge.style.display='inline-block'; } } }catch(e){} };\n\n  const ensureAfter = (refNode, node)=\u003e{ if(!refNode || !node) return; if(node.parentElement) return; refNode.parentElement.insertBefore(node, refNode.nextSibling); };\n\n  \/\/ How to enjoy → 卡片（保留原内容；隐藏原块；标题统一“Recipes with this product”）\n  try{\n    \/\/ 1) 更鲁棒地找到标题（h2\/h3\/h4）\n    const enjoyH = Array.from(root.querySelectorAll('h2,h3,h4')).find(h=\u003e\/(how to enjoy|ways to enjoy|serving ideas|recipes with this product|食用建议|食用灵感|食法)\/i.test(h.textContent));\n    if(enjoyH){\n      const container = enjoyH.parentElement;\n      \/\/ 2) 就近查找列表或段落（同容器或下一个兄弟）\n      let listEl = container.querySelector('ol, ul');\n      if(!listEl){ const sib = enjoyH.nextElementSibling; if(sib){ listEl = sib.querySelector \u0026\u0026 sib.querySelector('ol, ul'); } }\n\n      \/\/ 3) 容器若不存在则创建\n      let cardsHost = container.querySelector('#um-recipes-cards');\n      if(!cardsHost){ cardsHost=document.createElement('div'); cardsHost.id='um-recipes-cards'; cardsHost.className='um-recipes'; ensureAfter(listEl||enjoyH, cardsHost); }\n      let prodHost = container.querySelector('#um-recipes-products');\n      if(!prodHost){ prodHost=document.createElement('div'); prodHost.id='um-recipes-products'; prodHost.className='um-slider'; ensureAfter(cardsHost, prodHost); }\n\n      const links = new Set();\n      let items = [];\n      if(listEl){ items = Array.from(listEl.children).filter(n=\u003en.tagName==='LI'); }\n      \/\/ 4) 若没有列表，尝试用同容器的段落或“网格DIV\/ARTICLE”作为卡片项\n      if(items.length === 0){\n        let ps = Array.from(container.querySelectorAll(':scope \u003e p'));\n        if(ps.length \u003c 2){ const sib = enjoyH.nextElementSibling; if(sib){ ps = Array.from(sib.querySelectorAll(':scope \u003e p')); } }\n        items = ps;\n      }\n      \/\/ 5) 同容器下寻找“网格容器”（含多个子块，且子块内有 h4\/strong）\n      let gridToHide = null;\n      if(items.length === 0){\n        const ch = Array.from(container.children || []);\n        for(const el of ch){\n          if(el === enjoyH) continue;\n          if(el.children \u0026\u0026 el.children.length \u003e= 2){\n            const first = el.children[0];\n            if((first.querySelector \u0026\u0026 first.querySelector('h3, h4, h5, strong, b, div[style*=\"font-weight:700\"]'))){\n              items = Array.from(el.children);\n              gridToHide = el;\n              break;\n            }\n          }\n        }\n      }\n      \/\/ 6) 仍然没有，则看紧跟标题的下一个块（如显示为卡片的 div\/article 列表）\n      if(items.length === 0){\n        const sib = enjoyH.nextElementSibling;\n        if(sib){\n          const children = Array.from(sib.children || []);\n          if(children.length \u003e= 2){ items = children; gridToHide = sib; }\n        }\n      }\n\n      if(items.length){\n        items.forEach((node, idx)=\u003e{\n          const card=document.createElement('article'); card.className='um-rcard';\n          const titleNode = node.querySelector \u0026\u0026 node.querySelector('h3, h4, h5, div[style*=\"font-weight:700\"], strong, b, a');\n          const h4=document.createElement('h4'); h4.textContent = titleNode ? (titleNode.textContent.trim()||('Recipe '+(idx+1))) : ('Recipe '+(idx+1));\n          const clone = node.cloneNode(true);\n          const rm = clone.querySelector \u0026\u0026 clone.querySelector('h3, h4, h5, div[style*=\"font-weight:700\"], strong, b'); if(rm) rm.remove();\n          const body=document.createElement('div'); while(clone.firstChild){ body.appendChild(clone.firstChild); }\n          card.appendChild(h4); card.appendChild(body); cardsHost.appendChild(card);\n          (node.querySelectorAll ? node.querySelectorAll('a[href]') : []).forEach(a=\u003e{ const h=handleFromHref(a.getAttribute('href')); if(h) links.add(h); });\n        });\n        \/\/ 统一标题并隐藏原内容块\n        enjoyH.textContent = 'Recipes with this product';\n        if(listEl){ listEl.style.display='none'; }\n        else if(gridToHide){ gridToHide.style.display='none'; }\n        else {\n          \/\/ 隐藏直接段落（避免把其它段落隐藏过多，仅隐藏紧邻的）\n          const ps = Array.from(container.querySelectorAll(':scope \u003e p'));\n          ps.forEach(p=\u003e{ p.style.display='none'; });\n        }\n      }\n      if(prodHost \u0026\u0026 links.size){ Array.from(links).forEach(h=\u003e{ const a=buildProdCard(h); prodHost.appendChild(a); hydrate(a); }); }\n    }\n  }catch(e){}\n\n  \/\/ Pairs well → 滑动卡片（并将标题统一为 “Pairs well with these products”）\n  try{\n    const pairsH = Array.from(root.querySelectorAll('h2,h3,h4')).find(h=\u003e\/(pairs\\s*well|pairswell|配搭建议|搭配推荐|搭配)\/i.test(h.textContent));\n    if(pairsH){\n      const section=pairsH.parentElement; const ul=section.querySelector('ul');\n      \/\/ 统一标题文案\n      pairsH.textContent = 'Pairs well with these products';\n      let host=section.querySelector('#um-pairs-slider');\n      if(!host){ host=document.createElement('div'); host.id='um-pairs-slider'; host.className='um-slider'; ensureAfter(ul||pairsH, host); }\n      const unique=new Set();\n      \/\/ 允许 p 段落或任意容器中的产品链接\n      section.querySelectorAll('a[href]').forEach(a=\u003e{ const h=handleFromHref(a.getAttribute('href')); if(h \u0026\u0026 !unique.has(h)) unique.add(h); });\n      unique.forEach(h=\u003e{ const card=buildProdCard(h); host.appendChild(card); hydrate(card); });\n    }\n  }catch(e){}\n\n  \/\/ More in this category → 条件滑动，成功后隐藏原标题与列表，把 Explore CTA 放到滑动条上方\n  try{\n    const moreH = Array.from(root.querySelectorAll('h2,h3,h4')).find(h=\u003e\/(more in this category|同类推荐|更多此分类)\/i.test(h.textContent));\n    if(moreH){ const section=moreH.parentElement; const ul=section.querySelector('ul'); let host=section.querySelector('#um-more-slider'); if(!host){ host=document.createElement('div'); host.id='um-more-slider'; host.className='um-slider'; ensureAfter(ul||moreH, host); } if(ul){ const links=ul.querySelectorAll('a[href]'); if(links.length\u003e=2){ const unique=new Set(); links.forEach(a=\u003e{ const h=handleFromHref(a.getAttribute('href')); if(h \u0026\u0026 !unique.has(h)){ unique.add(h); const card=buildProdCard(h); host.appendChild(card); hydrate(card); } }); if(host.children.length){ ul.style.display='none'; moreH.style.display='none'; const ctaWrap = Array.from(section.querySelectorAll('div')).find(d=\u003ed.querySelector('a[href^=\"\/collections\/\"]')); if(ctaWrap){ section.insertBefore(ctaWrap, host); } } } } }\n  }catch(e){}\n})();\n\u003c\/script\u003e\u003c\/section\u003e\n\u003csection style=\"border: 1px solid #e2e8f0; background: #fff; border-radius: 16px; padding: 20px; margin-top: 16px;\"\u003e\n\u003ch3 style=\"margin: 0 0 8px; font-size: 18px; font-weight: bold;\"\u003eMẹo sơ chế\u003c\/h3\u003e\n\u003cul style=\"margin: 8px 0 0 18px; color: #334155; font-size: 14px;\"\u003e\n\u003cli\u003eRửa kỹ giữa các bẹ vì cát đất thường đọng gần gốc. Cắt bỏ một lát mỏng ở gốc.\u003c\/li\u003e\n\u003cli\u003eXào bẹ trước, rồi cho lá vào sau — để rau vừa chín mềm mà vẫn giòn.\u003c\/li\u003e\n\u003cli\u003eGiữ lửa lớn và nấu nhanh để rau giữ màu tươi, độ giòn (2‑4 phút tùy kích thước cắt).\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/section\u003e\n\u003csection style=\"border: 1px solid #e2e8f0; background: #fff; border-radius: 16px; padding: 20px; margin-top: 16px;\"\u003e\n\u003ch3 style=\"margin: 0 0 8px; font-size: 18px; font-weight: bold;\"\u003eNguyên liệu dùng kèm\u003c\/h3\u003e\n\u003cul style=\"margin: 8px 0 0 18px; color: #334155; font-size: 14px;\"\u003e\n\u003cli\u003e\u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/australian-raw-king-prawns-peeled-tail-on-flash-frozen-700g\"\u003eTôm King sống Úc (bóc vỏ, còn đuôi)\u003c\/a\u003e\u003c\/li\u003e\n\u003cli\u003e\u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/fresh-ever-green-smooth-tofu-approximately-300g\"\u003eEver Green Đậu hũ non, 300g\u003c\/a\u003e\u003c\/li\u003e\n\u003cli\u003e\u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/chois-oyster-mushrooms-400g\"\u003eChois Nấm bào ngư - 400g\u003c\/a\u003e\u003c\/li\u003e\n\u003cli\u003e\n\u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/fresh-dried-garlic-heads-approximately-500g\"\u003eCủ tỏi, 500g\u003c\/a\u003e \u0026amp; \u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/fresh-green-leaf-farm-tender-ginger-approximately-500g\"\u003eGừng 500g\u003c\/a\u003e\n\u003c\/li\u003e\n\u003cli\u003e\u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/haitian-premium-light-soy-sauce-500ml\"\u003eHaitian Nước tương nhạt cao cấp 500ml\u003c\/a\u003e\u003c\/li\u003e\n\u003cli\u003e\u003ca style=\"color: var(--brand);\" href=\"\/vi\/products\/chunsi-jiangxi-rice-noodles-1kg\"\u003eChunsi Mì gạo Jiangxi - 1kg\u003c\/a\u003e\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/section\u003e\n\u003csection style=\"border: 1px solid #e2e8f0; background: #fff; border-radius: 16px; padding: 20px; margin-top: 16px; text-align: center;\"\u003e\n\u003ch3 style=\"margin: 0 0 8px; font-size: 18px; font-weight: bold;\"\u003eXem thêm cùng loại\u003c\/h3\u003e\n\u003ca style=\"display: inline-block; margin-top: 6px; color: var(--brand); font-weight: bold; border: 1px solid #e2e8f0; border-radius: 12px; padding: 10px 14px;\" href=\"\/vi\/collections\/leafy-vegetables\"\u003eXem tất cả rau lá\u003c\/a\u003e\u003c\/section\u003e\n\u003csection style=\"border: 1px solid #e2e8f0; background: #fff; border-radius: 16px; padding: 20px; margin-top: 16px;\"\u003e\n\u003ch3 style=\"margin: 0 0 8px; font-size: 18px; font-weight: bold;\"\u003eGiao hàng \u0026amp; thời gian nhận\u003c\/h3\u003e\n\u003cp style=\"margin: 6px 0 10px; color: #334155; font-size: 14px;\"\u003eBạn có thể \u003cstrong\u003eTheo dõi\u003c\/strong\u003e vị trí người giao hàng theo \u003cstrong\u003eThời gian thực\u003c\/strong\u003e ngay trên mạng! Đơn hàng có thể đến sớm nhất vào \u003cstrong\u003eNgày hôm sau\u003c\/strong\u003e (áp dụng cho phần lớn khu vực tại Sydney).\u003c\/p\u003e\n\u003ctable style=\"width: 100%; border-collapse: collapse; border: 1px solid #e5e7eb;\"\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth style=\"text-align: left; padding: 10px; border-right: 1px solid #e5e7eb; background: #f8fafc;\"\u003eThời gian đặt hàng\u003c\/th\u003e\n\u003cth style=\"text-align: left; padding: 10px; background: #f8fafc;\"\u003eThời gian nhận hàng\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 12px; border-top: 1px solid #e5e7eb; border-right: 1px solid #e5e7eb;\"\u003eHôm nay\u003c\/td\u003e\n\u003ctd style=\"padding: 12px; border-top: 1px solid #e5e7eb;\"\u003e\n\u003cstrong\u003eNgày hôm sau (2 lựa chọn):\u003c\/strong\u003e\n\u003cul style=\"margin: 6px 0 0 18px;\"\u003e\n\u003cli\u003e11:30AM – 06:30PM\u003c\/li\u003e\n\u003cli\u003e05:00PM – 11:00PM\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp style=\"color: #a9a9a9; font-size: 12px; margin: 10px 0 0;\"\u003e* Hủy đơn sau giờ chốt đơn có thể phát sinh phí. \u003ca style=\"color: #db3a35; text-decoration: underline;\" href=\"\/vi\/pages\/return-refund-policy\"\u003eXem tại đây\u003c\/a\u003e.\u003c\/p\u003e\n\u003cp style=\"margin: 8px 0 0; color: #334155; font-size: 14px;\"\u003eChi tiết: \u003ca style=\"color: #db3a35; text-decoration: underline;\" href=\"\/vi\/pages\/delivery-information\"\u003eThông tin giao hàng\u003c\/a\u003e.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003csection style=\"border: 1px solid #e2e8f0; background: #fff; border-radius: 16px; padding: 20px; margin-top: 16px;\"\u003e\n\u003ch3 style=\"margin: 0 0 8px; font-size: 18px; font-weight: bold;\"\u003ePhí giao hàng\u003c\/h3\u003e\n\u003cp style=\"font-size: 13px; color: #666; margin: 0 0 8px;\"\u003eMỗi đơn hàng có một khoản phí dịch vụ nhỏ. Vui lòng xem \u003ca href=\"\/vi\/pages\/delivery-information\"\u003eThông tin giao hàng\u003c\/a\u003e để biết mức phí hiện tại.\u003c\/p\u003e\n\u003ctable style=\"width: 100%; border-collapse: collapse; border: 1px solid #e5e7eb;\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 10px; border-right: 1px solid #e5e7eb; border-top: 1px solid #e5e7eb;\"\u003eTừ $69.00 trở lên\u003c\/td\u003e\n\u003ctd style=\"padding: 10px; border-top: 1px solid #e5e7eb;\"\u003e\u003cstrong\u003eMiễn phí\u003c\/strong\u003e\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 10px; border-right: 1px solid #e5e7eb; border-top: 1px solid #e5e7eb;\"\u003e$20 – $68.99\u003c\/td\u003e\n\u003ctd style=\"padding: 10px; border-top: 1px solid #e5e7eb;\"\u003e$4.99 \u003cspan style=\"color: #999; font-size: 12px;\"\u003e(trước đây $10)\u003c\/span\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 10px; border-right: 1px solid #e2e8f0; border-top: 1px solid #e5e7eb;\"\u003e$0.01 – $19.99\u003c\/td\u003e\n\u003ctd style=\"padding: 10px; border-top: 1px solid #e5e7eb;\"\u003e$7.99 \u003cspan style=\"color: #999; font-size: 12px;\"\u003e(trước đây $10)\u003c\/span\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/section\u003e\n\u003c\/section\u003e","brand":"Umall Fresh","offers":[{"title":"Default Title","offer_id":48800946520351,"sku":"9335351095940","price":0.99,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/27f3145cc4c2c3550f84f6692bec729d5cI6GKMEDAqomUTyc4G2kFnXVEFWCxhD.jpg?v=1745982846"},{"product_id":"aroy-d-coconut-milk-400ml","title":"Nước Cốt Dừa Aroy-D 400 ml – nấu cà ri, làm bánh","description":"\u003cp\u003eNước cốt dừa Aroy-D 400 ml nhập khẩu từ Thái Lan, chiết xuất 100% từ cơm dừa tươi, mang đến vị béo thơm tự nhiên. Thương hiệu Aroy-D nổi tiếng với quy trình sản xuất hiện đại, cam kết an toàn và chất lượng.\u003c\/p\u003e\u003ch2\u003eĐặc sắc sản phẩm:\u003c\/h2\u003e\u003cul\u003e\u003cli\u003e\u003cstrong\u003eNguyên chất 100%:\u003c\/strong\u003e Không pha tạp chất, giữ trọn vị dừa tự nhiên.\u003c\/li\u003e\u003cli\u003e\u003cstrong\u003eBéo mịn \u0026amp; thơm nồng:\u003c\/strong\u003e Phù hợp nấu cà ri, làm bánh, chế biến món chay.\u003c\/li\u003e\u003cli\u003e\u003cstrong\u003eĐóng hộp 400 ml:\u003c\/strong\u003e Tiện lấy lượng vừa đủ, tiết kiệm và hạn chế lãng phí.\u003c\/li\u003e\u003cli\u003e\u003cstrong\u003eDễ sử dụng:\u003c\/strong\u003e Mở nắp là dùng ngay, không cần pha trộn phức tạp.\u003c\/li\u003e\u003cli\u003e\u003cstrong\u003eThương hiệu Aroy-D uy tín:\u003c\/strong\u003e Top đầu Thái Lan về sản phẩm từ dừa.\u003c\/li\u003e\u003c\/ul\u003e","brand":"Aroy-D","offers":[{"title":"Default Title","offer_id":48896258015519,"sku":"A016229001711","price":3.69,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/1_b1217ace-0cc4-403a-8b3a-1e32effa0fb6.jpg?v=1745982796"},{"product_id":"surasang-cabbage-kimchi-cut-600g","title":"Kim Chi Cải Thảo Cắt Miếng Surasang 600 g – kim chi Hàn Quốc, vị lê Shingo","description":"\u003cp\u003eKim chi cải thảo cắt miếng Surasang 600 g, hương vị chua cay hài hòa, kết hợp lê Shingo tươi và tảo bẹ tự nhiên, mang đến trải nghiệm ẩm thực Hàn chuẩn vị Seoul.\u003c\/p\u003e\u003ch2\u003eĐặc sắc sản phẩm:\u003c\/h2\u003e\u003cul\u003e\u003cli\u003e\u003cstrong\u003eVị lê Shingo \u0026amp; tảo bẹ:\u003c\/strong\u003e Hậu vị ngọt thanh, thơm mát tự nhiên.\u003c\/li\u003e\u003cli\u003e\u003cstrong\u003eLên men tự nhiên:\u003c\/strong\u003e Giữ nguyên lợi khuẩn probiotics, hỗ trợ tiêu hóa.\u003c\/li\u003e\u003cli\u003e\u003cstrong\u003eCải thảo tươi cắt miếng:\u003c\/strong\u003e Tiện dùng ngay, không cần sơ chế thêm.\u003c\/li\u003e\u003cli\u003e\u003cstrong\u003eHũ 600 g tiện lợi:\u003c\/strong\u003e Dễ bảo quản, chia sẻ cho 2–3 người.\u003c\/li\u003e\u003cli\u003e\u003cstrong\u003eThương hiệu Surasang:\u003c\/strong\u003e Kim chi Hàn Quốc truyền thống, chuẩn vị Seoul.\u003c\/li\u003e\u003c\/ul\u003e","brand":"Surasang","offers":[{"title":"Default Title","offer_id":49542499402015,"sku":"A087703203969","price":6.69,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/1_5da8374d-6889-4cac-ae6d-8cce9bbf057a.webp?v=1747018631"},{"product_id":"frozen-pork-cabbage-dumplings-1kg","title":"Sủi cảo thịt heo \u0026 bắp cải đông lạnh - 1kg","description":"\u003cp\u003eSủi cảo thịt heo \u0026amp; bắp cải này mang hương vị jiaozi truyền thống của miền Bắc Trung Quốc—thịt heo mọng nước trộn với bắp cải giòn, bọc trong lớp bột mỏng, mềm. Nấu trực tiếp từ đông lạnh để có bữa ăn nhanh gọn, ngon miệng vào bất kỳ tối nào trong tuần.\u003c\/p\u003e\u003ch2\u003eĐiểm nổi bật của sản phẩm:\u003c\/h2\u003e\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eNhân truyền thống:\u003c\/strong\u003e Thịt heo đậm đà kết hợp cân bằng với bắp cải tươi.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eVỏ mỏng, nhân đầy:\u003c\/strong\u003e Lớp vỏ mỏng với phần nhân đầy đặn, mọng nước.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eNấu trực tiếp từ đông lạnh:\u003c\/strong\u003e Luộc, hấp hoặc chiên áp chảo chỉ trong vài phút.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eGói gia đình:\u003c\/strong\u003e Túi 1kg phù hợp cho bữa tối trong tuần hoặc những buổi tụ họp.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eNhiều cách thưởng thức:\u003c\/strong\u003e Thưởng thức với giấm đen, dầu ớt hoặc trong món canh.\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"Umall Fresh","offers":[{"title":"Default Title","offer_id":51242084303135,"sku":"A735850186993","price":9.99,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/erp_03.source_80e4ed67-c9df-4faf-a805-83025c3347c4.png?v=1785875988"},{"product_id":"vinda-ultra-strong-soft-pack-facial-tissues-3-ply-fragrance-free-110-sheets-x-5-packs","title":"Vinda Ultra Strong Khăn giấy lau mặt gói mềm, 3 lớp, không hương liệu - 110 tờ x 5 gói","description":"\u003cp\u003eKhăn giấy lau mặt gói mềm Vinda Ultra Strong kết hợp độ bền chống rách của 3 lớp giấy với cảm giác dịu nhẹ, thân thiện với da. Giấy trung tính (không hương liệu), dễ rút từ gói mềm, mỗi bộ gồm 5 gói, mỗi gói 110 tờ—thích hợp cho gia đình, văn phòng hoặc xe hơi. Sản phẩm từ Vinda, thương hiệu khăn giấy hàng đầu khắp châu Á.\u003c\/p\u003e\u003ch2\u003eĐiểm nổi bật của sản phẩm:\u003c\/h2\u003e\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eĐộ bền 3 lớp:\u003c\/strong\u003e Các lớp giấy bền chắc mà vẫn mềm mại trên da.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eTrung tính, không hương liệu:\u003c\/strong\u003e Cảm giác sạch sẽ, tươi mới mà không thêm mùi hương.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eKhông thêm chất làm trắng quang học:\u003c\/strong\u003e Khăn giấy trắng tự nhiên, tinh sạch.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eKhử trùng ở nhiệt độ cao:\u003c\/strong\u003e Được sản xuất để đảm bảo vệ sinh đáng tin cậy.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eGói tiết kiệm:\u003c\/strong\u003e 110 tờ x 5 gói mềm để dùng hằng ngày.\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"Vinda","offers":[{"title":"Default Title","offer_id":51368999420191,"sku":"A6901236383797","price":5.29,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/f61ac4bea7043f1fbb23a268dbcaa4e6CLqi0rhaEaoVdPHmg96lBU47GKA7zZ0U.jpg?v=1762593501"},{"product_id":"ourhome-frozen-korean-fish-cake-squares-1kg-busan-eomuk","title":"OURHOME Chả cá Hàn Quốc miếng vuông đông lạnh 1kg - Eomuk Busan","description":"\u003cp\u003eChả cá Hàn Quốc miếng vuông đông lạnh OURHOME mang hương vị eomuk Busan đích thực đến gian bếp của bạn. Những miếng chả cá tẩm gia vị mỏng, vuông này có thể cho ngay vào tteokbokki đang sôi, súp odeng xiên que, lẩu hoặc chế biến thành món ăn vặt chiên áp chảo nhanh gọn.\u003c\/p\u003e\u003ch2\u003eĐiểm nổi bật của sản phẩm:\u003c\/h2\u003e\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003ePhong cách Busan truyền thống:\u003c\/strong\u003e Chả cá kiểu Hàn Quốc (eomuk) dùng để làm những món ăn đường phố ấm lòng tại nhà.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eNhiều cách chế biến:\u003c\/strong\u003e Rất thích hợp cho tteokbokki, súp odeng, món xào, lẩu và món ăn kèm trong hộp cơm.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eMiếng vuông tiện lợi:\u003c\/strong\u003e Những lát chả được tạo hình sẵn, mềm dẻo, dễ cắt, cuộn hoặc xiên que.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eNấu trực tiếp từ đông lạnh:\u003c\/strong\u003e Chỉ cần luộc, nấu liu riu hoặc chiên áp chảo ngay khi lấy ra khỏi ngăn đông để có bữa ăn nhanh gọn.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eGói 1kg tiết kiệm:\u003c\/strong\u003e Gói đầy đặn lý tưởng cho bữa tối gia đình, họp mặt hoặc chuẩn bị bữa ăn trước; bảo quản đông lạnh để giữ chất lượng tốt nhất.\u003c\/li\u003e\n\u003c\/ul\u003e\u003cdetails\u003e\u003csummary\u003eTừ khóa tìm kiếm\u003c\/summary\u003e\u003cp\u003e\u003csmall\u003eTừ khóa tìm kiếm: chả cá Hàn Quốc, eomuk, odeng, OURHOME, chả cá Busan, chả cá đông lạnh, odeng Hàn Quốc, chả cá dạng miếng\u003c\/small\u003e\u003c\/p\u003e\u003c\/details\u003e","brand":"OURHOME","offers":[{"title":"Default Title","offer_id":52595932365087,"sku":"A8809786907648","price":7.19,"currency_code":"AUD","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/1_fa4f6796-f11a-411a-9a57-4e4e9ea5aa3c.jpg?v=1780645563"},{"product_id":"umall-original-tofu-900g","title":"UMALL Đậu hũ nguyên vị 900g","description":"\u003cp\u003eUMALL Đậu hũ nguyên vị là đậu hũ có độ chắc vừa, đa dụng, được sản xuất tại Úc từ nguyên liệu Úc. Vị đậu nành thanh nhẹ và kết cấu dai ngon khiến sản phẩm là lựa chọn tiện dụng cho món xào, canh, lẩu và món kho.\u003c\/p\u003e\u003ch2\u003eĐiểm nổi bật của sản phẩm:\u003c\/h2\u003e\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eKết cấu chắc vừa:\u003c\/strong\u003e Giữ hình dạng tốt khi nấu ăn hằng ngày.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eSản xuất tại Úc:\u003c\/strong\u003e Được sản xuất từ nguyên liệu Úc.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eĐậu nành không biến đổi gen:\u003c\/strong\u003e Được làm từ đậu nành không biến đổi gen.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eĐơn giản, đa dụng:\u003c\/strong\u003e Phù hợp để chiên áp chảo, nấu liu riu, hấp hoặc thêm vào canh.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eGói đầy đặn:\u003c\/strong\u003e Gói 900g cho bữa ăn gia đình và nhiều món ăn.\u003c\/li\u003e\n\u003c\/ul\u003e\u003cdetails\u003e\u003csummary\u003eTừ khóa tìm kiếm\u003c\/summary\u003e\u003cp\u003e\u003csmall\u003eTừ khóa tìm kiếm: đậu hũ UMALL, đậu hũ nguyên vị, đậu hũ chắc, 豆腐, 优选豆腐, đậu hũ Úc\u003c\/small\u003e\u003c\/p\u003e\u003c\/details\u003e","brand":"UMALL","offers":[{"title":"Default Title","offer_id":52762895188255,"sku":"M9202604271853","price":2.99,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/f400aa5b80b006a3233dc8019fb9a9e44MCq9lIW87GQ9b1Ewc6i7lYYSMti7yue.png?v=1786251482"}],"url":"https:\/\/www.umall.com.au\/vi\/collections\/ago-comeback-deals\/tissues-paper-cotton-towels.oembed","provider":"Umall - Australia's Largest Online Asian Supermarket","version":"1.0","type":"link"}