{"title":"bắp","description":"\u003cdiv style=\"max-width:940px;margin:8px auto 16px;line-height:1.6;text-align:center;\"\u003e\u003cp\u003eCác lựa chọn bắp — bắp trái tươi, hạt bắp đã tách, bắp ngọt đông lạnh. Xem tất cả rau củ: \u003ca href=\"\/vi\/collections\/vegetables\"\u003eRau củ\u003c\/a\u003e.\u003c\/p\u003e\u003c\/div\u003e","products":[{"product_id":"fresh-corn-on-the-cob-top-removed-pack-of-3-cut-into-sections","title":"Bắp Siêu Ngọt Bonaccord 500 g (3 củ) – tươi giòn, vị ngọt tự nhiên","description":"\u003cdiv id=\"umall-desc\" style=\"--brand:#DB3A35;max-width:860px;margin:0 auto;padding:6px 0 18px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#334155;line-height:1.55;\"\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\u003csection style=\"border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:20px;display:flex;gap:16px;align-items:flex-start;\"\u003e\n  \u003cdiv style=\"flex:1 1 340px;min-width:240px;\"\u003e\n    \u003ch1 style=\"margin:0 0 6px;font-size:22px;font-weight:800;\"\u003eBắp ngọt, gói 3 (500g)\u003c\/h1\u003e\n    \u003cdiv style=\"display:inline-block;border:1px solid #e2e8f0;border-radius:999px;padding:4px 10px;color:#64748b;font-size:12px;font-weight:600;\"\u003eBắp cắt khúc sẵn • Nấu nhanh\u003c\/div\u003e\n    \u003cp style=\"margin:10px 0 0;\"\u003eBắp ngọt, mọng nước được cắt khúc tiện cho vào chảo, nồi hoặc vỉ nướng. Dùng cho bữa tối trong tuần, BBQ, súp hoặc món xào.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv style=\"flex:0 0 220px;max-width:220px;\"\u003e\n    \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/2_37103070-f29a-4adc-a3e1-9a8352c770ac.jpg?v=1731489683\" alt=\"Sweek Corns 3-Pack (500g) pre-cut cob sections\" style=\"width:100%;height:auto;border-radius:12px;border:1px solid #e2e8f0;\"\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;\"\u003eĐiểm nổi bật của sản phẩm\u003c\/h3\u003e\n  \u003cul style=\"margin:0 0 0 18px;padding:0;\"\u003e\n    \u003cli\u003eHạt bắp tươi, ngọt tự nhiên và giòn.\u003c\/li\u003e\n    \u003cli\u003eCắt khúc sẵn tiện dùng, giúp nấu nhanh và chín đều.\u003c\/li\u003e\n    \u003cli\u003eDùng để nướng, luộc, hấp, xào hoặc nấu súp.\u003c\/li\u003e\n    \u003cli\u003eChỉ cần vài phút nấu—tiện cho những tối bận rộ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 12px;font-size:18px;font-weight:700;\"\u003eGợi ý thưởng thức\u003c\/h3\u003e\n  \u003cdiv style=\"display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;\"\u003e\n    \u003cdiv style=\"border:1px solid #e2e8f0;background:#fff;border-radius:12px;padding:14px;\"\u003e\n      \u003cdiv style=\"font-weight:700;margin-bottom:6px;\"\u003eBắp nướng nước tương–mè với ớt chưng giòn\u003c\/div\u003e\n      \u003cp style=\"margin:6px 0 0;\"\u003eÁp chảo hoặc nướng bắp đến khi bề mặt hơi xém; trộn với vài giọt dầu mè rang và một muỗng ớt chưng giòn. Có thể dùng \u003ca href=\"\/vi\/products\/lee-kum-kee-pure-sesame-oil-207ml\" style=\"color:var(--brand);\"\u003eLee Kum Kee Dầu mè\u003c\/a\u003e và \u003ca href=\"\/vi\/products\/chuanwazi-crispy-chili-oil-with-peanuts-200g-sichuan-chili-crisp\" style=\"color:var(--brand);\"\u003eChuanwazi Ớt chưng giòn\u003c\/a\u003e.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv style=\"border:1px solid #e2e8f0;background:#fff;border-radius:12px;padding:14px;\"\u003e\n      \u003cdiv style=\"font-weight:700;margin-bottom:6px;\"\u003eSúp gà với nấm kim châm \u0026amp; bắp ngọt\u003c\/div\u003e\n      \u003cp style=\"margin:6px 0 0;\"\u003eNấu bắp cắt khúc trong nước dùng gà trong, thêm nấm kim châm, nêm nhẹ và rắc hành lá lúc cuối. Dùng \u003ca href=\"\/vi\/products\/bull-head-clear-chicken-broth-411ml-canned-chicken-stock\" style=\"color:var(--brand);\"\u003eBull Head Nước dùng gà\u003c\/a\u003e và \u003ca href=\"\/vi\/products\/chois-enoki-mushrooms-300g\" style=\"color:var(--brand);\"\u003eNấm kim châm\u003c\/a\u003e. Món ăn sẵn sàng trong khoảng 8–12 phút.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv style=\"border:1px solid #e2e8f0;background:#fff;border-radius:12px;padding:14px;\"\u003e\n      \u003cdiv style=\"font-weight:700;margin-bottom:6px;\"\u003eBắp xào ớt chuông đỏ \u0026amp; tỏi\u003c\/div\u003e\n      \u003cp style=\"margin:6px 0 0;\"\u003eTách hạt hoặc chẻ khúc bắp làm tư; xào với ớt chuông đỏ cắt hạt lựu và tỏi đến khi vừa mềm giòn (3–5 phút). Dùng \u003ca href=\"\/vi\/products\/fresh-red-lantern-peppers-pack-of-3\" style=\"color:var(--brand);\"\u003eỚt chuông đỏ\u003c\/a\u003e và \u003ca href=\"\/vi\/products\/peeled-garlic-cloves-250g\" style=\"color:var(--brand);\"\u003eTỏi bóc vỏ\u003c\/a\u003e.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv style=\"border:1px solid #e2e8f0;background:#fff;border-radius:12px;padding:14px;\"\u003e\n      \u003cdiv style=\"font-weight:700;margin-bottom:6px;\"\u003eSalad đậu hũ–bắp lạnh với giấm gạo \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\"\u003eNhẹ \u0026amp; thanh mát\u003c\/span\u003e\n\u003c\/div\u003e\n      \u003cp style=\"margin:6px 0 0;\"\u003eHâm bắp bằng lò vi sóng hoặc hấp (2–4 phút); tách hạt rồi trộn với đậu hũ cứng để lạnh, giấm gạo, chút muối và rau thơm. Thử \u003ca href=\"\/vi\/products\/fresh-ever-green-chinese-style-tofu-approximately-500g\" style=\"color:var(--brand);\"\u003eEver Green Classic Đậu hũ\u003c\/a\u003e với \u003ca href=\"\/vi\/products\/hengshun-white-rice-vinegar-500ml\" style=\"color:var(--brand);\"\u003eHengshun Giấm gạo trắng\u003c\/a\u003e.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv style=\"border:1px solid #e2e8f0;background:#fff;border-radius:12px;padding:14px;\"\u003e\n      \u003cdiv style=\"font-weight:700;margin-bottom:6px;\"\u003eTôm \u0026amp; bắp gói giấy bạc (BBQ hoặc lò nướng)\u003c\/div\u003e\n      \u003cp style=\"margin:6px 0 0;\"\u003eGói bắp cắt khúc với tôm, ít dầu ăn vị trung tính, tỏi và tiêu; gói kín, nấu đến khi mọng nước (10–15 phút ở lửa vừa). Dùng \u003ca href=\"\/vi\/products\/australian-raw-king-prawns-peeled-tail-on-flash-frozen-700g\" style=\"color:var(--brand);\"\u003eTôm lớn sống Úc\u003c\/a\u003e và \u003ca href=\"\/vi\/products\/88-canola-oil-1l\" style=\"color:var(--brand);\"\u003e88 Dầu hạt cải\u003c\/a\u003e.\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ế\u003c\/h3\u003e\n  \u003cul style=\"margin:0 0 0 18px;padding:0;\"\u003e\n    \u003cli\u003eLuộc hoặc hấp đến khi bắp sáng màu và mềm, khoảng 3–6 phút tùy kích cỡ.\u003c\/li\u003e\n    \u003cli\u003eKhi nướng, phết ít dầu và trở thường xuyên trong 8–12 phút đến khi hơi xém.\u003c\/li\u003e\n    \u003cli\u003eKhi xào, tách hạt khỏi lõi để mau chín (2–4 phút ở lửa lớn).\u003c\/li\u003e\n    \u003cli\u003eNêm đơn giản với muối, chút nước tương hoặc dầu ớt để giữ rõ vị ngọt của bắp.\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;\"\u003eGợi ý kết hợp\u003c\/h3\u003e\n  \u003cul style=\"margin:0 0 0 18px;padding:0;\"\u003e\n    \u003cli\u003e\n\u003ca href=\"\/vi\/products\/haitian-premium-oyster-sauce-700g\" style=\"color:var(--brand);\"\u003eHaitian Premium Dầu hào 700g\u003c\/a\u003e cho món xào bóng đẹp.\u003c\/li\u003e\n    \u003cli\u003e\n\u003ca href=\"\/vi\/products\/chuan-lao-hui-pure-sesame-oil-320ml\" style=\"color:var(--brand);\"\u003eChuan Lao Hui Dầu mè nguyên chất\u003c\/a\u003e thêm mùi thơm bùi.\u003c\/li\u003e\n    \u003cli\u003e\n\u003ca href=\"\/vi\/products\/hengshun-zhenjiang-aromatic-vinegar-550ml\" style=\"color:var(--brand);\"\u003eHengshun Giấm thơm Trấn Giang\u003c\/a\u003e để cân bằng vị ngọt.\u003c\/li\u003e\n    \u003cli\u003e\n\u003ca href=\"\/vi\/products\/haidilao-tomato-hot-pot-base-200g\" style=\"color:var(--brand);\"\u003eHaidilao Cốt lẩu cà chua\u003c\/a\u003e—bắp giúp nước dùng có vị ngọt tự nhiên.\u003c\/li\u003e\n    \u003cli\u003e\n\u003ca href=\"\/vi\/products\/chois-shiitake-mushrooms-300g\" style=\"color:var(--brand);\"\u003eChois Nấm hương - 300g\u003c\/a\u003e thêm vị nấm đậm.\u003c\/li\u003e\n    \u003cli\u003e\n\u003ca href=\"\/vi\/products\/meat-boys-frozen-angus-beef-short-ribs-500g\" style=\"color:var(--brand);\"\u003eSườn bò Angus - 500g\u003c\/a\u003e ăn kèm bắp nướng.\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;display:flex;justify-content:space-between;align-items:center;gap:10px;\"\u003e\n  \u003ch3 style=\"margin:0;font-size:18px;font-weight:700;\"\u003eSản phẩm cùng loại\u003c\/h3\u003e\n  \u003ca href=\"\/vi\/collections\/corn\" style=\"color:var(--brand);font-weight:700;\"\u003eXem tất cả bắp →\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í của người giao hàng theo \u003cstrong\u003ethời gian thực\u003c\/strong\u003e trực tuyến! Nhận đơn hàng 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;\"\u003eBấm vào đâ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 tại.\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 #e2e8f0;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":48151490887967,"sku":"9202402011404","price":5.59,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/2_37103070-f29a-4adc-a3e1-9a8352c770ac.jpg?v=1731489683"},{"product_id":"fresh-small-corn-1-box","title":"Ngô Non (Baby Corn) 1 hộp – rau đa dụng xào, lẩu \u0026 salad","description":"\u003cdiv id=\"umall-desc\" style=\"--brand:#DB3A35;max-width:860px;margin:0 auto;padding:8px 0;color:#0f172a;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;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  \u003csection style=\"border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:22px;margin-top:8px;\"\u003e\n    \u003ch1 style=\"margin:0 0 4px;font-size:26px;font-weight:800;\"\u003eBắp non tươi - 1 hộp\u003c\/h1\u003e\n    \u003cdiv style=\"color:#64748b;font-size:14px;margin-top:6px;\"\u003eCòn gọi là bắp non\u003c\/div\u003e\n    \u003cp style=\"margin:10px 0 0;font-size:15px;color:#334155;\"\u003eTrái bắp nhỏ, giòn ngọt, giữ độ giòn khi nấu lửa lớn — dùng xào, nấu canh, trộn salad hoặc nướng.\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 8px;font-size:18px;font-weight:700;\"\u003eĐặc điểm sản phẩm\u003c\/h3\u003e\n    \u003cul style=\"margin:8px 0 0 18px;color:#334155;font-size:14px;\"\u003e\n      \u003cli\u003eGiòn mềm vừa ăn, ngọt nhẹ, chỉ cần vài phút để nấu.\u003c\/li\u003e\n      \u003cli\u003eHợp với món xào kiểu Á, mì nước, lẩu và salad tươi.\u003c\/li\u003e\n      \u003cli\u003eTrái nhỏ vừa ăn, kích cỡ đều — không cần bóc vỏ, ít mất công sơ chế.\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 8px;font-size:18px;font-weight:700;\"\u003eGợi ý chế biến\u003c\/h3\u003e\n    \u003col style=\"margin:8px 0 0 18px;color:#334155;font-size:14px;\"\u003e\n      \u003cli style=\"margin:10px 0 0;\"\u003e\n        \u003cdiv style=\"font-weight:700;\"\u003eBắp non xào tỏi dầu hào\u003c\/div\u003e\n        \u003cdiv\u003eXào bắp non với tỏi đập dập (\u003ca href=\"\/vi\/products\/peeled-garlic-cloves-250g\"\u003eTỏi bóc vỏ - 250g\u003c\/a\u003e), chút \u003ca href=\"\/vi\/products\/haitian-premium-oyster-sauce-700g\"\u003eHaitian Dầu hào cao cấp 700g\u003c\/a\u003e và ít nước; xào lửa lớn 2–4 phút cho sốt áo đều, bắp còn giòn.\u003c\/div\u003e\n      \u003c\/li\u003e\n      \u003cli style=\"margin:10px 0 0;\"\u003e\n        \u003cdiv style=\"font-weight:700;\"\u003eBún nước gà \u0026amp; rau củ thanh nhẹ \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\/div\u003e\n        \u003cdiv\u003eĐun liu riu \u003ca href=\"\/vi\/products\/bull-head-clear-chicken-broth-411ml-canned-chicken-stock\"\u003eBull Head Nước dùng gà trong 411ml\u003c\/a\u003e, thêm bắp non cắt lát, thịt gà nạc luộc (\u003ca href=\"\/vi\/products\/premium-selected-frozen-chicken-breast-1kg\"\u003ePhi lê ức gà cao cấp- 1kg\u003c\/a\u003e) và nấu mềm \u003ca href=\"\/vi\/products\/chunsi-jiangxi-rice-noodles-300g\"\u003eChunsi Bún gạo Jiangxi 300g\u003c\/a\u003e. Nêm nhẹ, rắc hành lá lên trên.\u003c\/div\u003e\n      \u003c\/li\u003e\n      \u003cli style=\"margin:10px 0 0;\"\u003e\n        \u003cdiv style=\"font-weight:700;\"\u003eSalad mè–giấm gạo\u003c\/div\u003e\n        \u003cdiv\u003eChần bắp non 1–2 phút, để nguội rồi trộn với rau lá (\u003ca href=\"\/vi\/products\/fresh-mixed-salad-greens-mesclun-mix-300g\"\u003eRau xà lách hỗn hợp mesclun 300g\u003c\/a\u003e), \u003ca href=\"\/vi\/products\/hengshun-white-rice-vinegar-500ml\"\u003eHengshun Giấm gạo trắng\u003c\/a\u003e, một ít \u003ca href=\"\/vi\/products\/lee-kum-kee-pure-sesame-oil-207ml\"\u003eLee Kum Kee Dầu mè nguyên chất\u003c\/a\u003e và chút muối.\u003c\/div\u003e\n      \u003c\/li\u003e\n      \u003cli style=\"margin:10px 0 0;\"\u003e\n        \u003cdiv style=\"font-weight:700;\"\u003eThịt bò xào tiêu \u0026amp; bắp non\u003c\/div\u003e\n        \u003cdiv\u003eXào nhanh bắp non với thịt bò mềm cắt sợi (\u003ca href=\"\/vi\/products\/angus-prime-shredded-beef-500g\"\u003eThịt bò Angus thượng hạng cắt sợi 500g\u003c\/a\u003e), tiêu đập dập và chút nước tương (\u003ca href=\"\/vi\/products\/kikkoman-all-purpose-soy-sauce-1-6l\"\u003eKikkoman Nước tương đa dụng 1.6L\u003c\/a\u003e), đảo 3–5 phút để có món xào đậm sốt.\u003c\/div\u003e\n      \u003c\/li\u003e\n    \u003c\/ol\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 8px;font-size:18px;font-weight:700;\"\u003eMẹo sơ chế và nấu\u003c\/h3\u003e\n    \u003cul style=\"margin:8px 0 0 18px;color:#334155;font-size:14px;\"\u003e\n      \u003cli\u003eRửa rồi thấm khô; cắt bỏ phần gốc cứng nếu cần.\u003c\/li\u003e\n      \u003cli\u003eXào lửa lớn 2–4 phút để giữ độ giòn; thêm ít nước để bắp chín bằng hơi lúc cuối.\u003c\/li\u003e\n      \u003cli\u003eChần 1–2 phút trước khi trộn salad hoặc làm món nguội nhanh.\u003c\/li\u003e\n      \u003cli\u003eNướng hoặc áp chảo với ít dầu đến khi hơi xém, thỉnh thoảng trở 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 8px;font-size:18px;font-weight:700;\"\u003eGợi ý kết hợp\u003c\/h3\u003e\n    \u003cul style=\"margin:8px 0 0 18px;color:#334155;font-size:14px;\"\u003e\n      \u003cli\u003e\u003ca href=\"\/vi\/products\/kikkoman-all-purpose-soy-sauce-1-6l\"\u003eKikkoman Nước tương đa dụng - 1.6L\u003c\/a\u003e\u003c\/li\u003e\n      \u003cli\u003e\u003ca href=\"\/vi\/products\/haitian-premium-oyster-sauce-700g\"\u003eHaitian Dầu hào cao cấp 700g\u003c\/a\u003e\u003c\/li\u003e\n      \u003cli\u003e\u003ca href=\"\/vi\/products\/lee-kum-kee-pure-sesame-oil-207ml\"\u003eLee Kum Kee Dầu mè nguyên chất 207ml\u003c\/a\u003e\u003c\/li\u003e\n      \u003cli\u003e\u003ca href=\"\/vi\/products\/chois-shiitake-mushrooms-300g\"\u003eChois Nấm hương - 300g\u003c\/a\u003e\u003c\/li\u003e\n      \u003cli\u003e\u003ca href=\"\/vi\/products\/premium-selected-frozen-chicken-breast-1kg\"\u003ePhi lê ức gà cao cấp- 1kg\u003c\/a\u003e\u003c\/li\u003e\n      \u003cli\u003e\u003ca href=\"\/vi\/products\/australian-raw-king-prawns-peeled-tail-on-flash-frozen-700g\"\u003eTôm lớn sống Úc – Bóc vỏ \u0026amp; giữ đuôi, cấp đông nhanh 700g\u003c\/a\u003e\u003c\/li\u003e\n      \u003cli\u003e\u003ca href=\"\/vi\/products\/fresh-ever-green-chinese-style-tofu-approximately-500g\"\u003eEver Green Đậu hũ truyền thống, 500g\u003c\/a\u003e\u003c\/li\u003e\n      \u003cli\u003e\u003ca href=\"\/vi\/products\/chunsi-jiangxi-rice-vermicelli-300g\"\u003eChunsi Bún gạo Jiangxi 300g\u003c\/a\u003e\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;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;\"\u003e\n    \u003cdiv\u003e\n      \u003ch3 style=\"margin:0 0 8px;font-size:18px;font-weight:700;\"\u003eXem thêm cùng loại\u003c\/h3\u003e\n      \u003cp style=\"margin:6px 0 0;color:#334155;font-size:14px;\"\u003eBạn thích vị giòn ngọt của bắp? Xem thêm các loại bắp trong cửa hàng.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv style=\"min-width:max-content;\"\u003e\u003ca href=\"\/vi\/collections\/corn\" style=\"color:var(--brand);font-weight:700;\"\u003eXem tất cả các loại bắp →\u003c\/a\u003e\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\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í của người giao hàng theo \u003cstrong\u003ethời gian thực\u003c\/strong\u003e trên mạng. Bạn có thể nhận hàng 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ỏ. Bạn 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 #e2e8f0;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":48151491117343,"sku":"9202402011403","price":4.59,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/24b56963bff0f0c0df0cd2f0ead88640XGtsNfpbAxQ84rXjM6Kom3QB5cJ2bV2W.png?v=1712384392"},{"product_id":"shiyuedaotian-white-glutinous-corn-2-08kg","title":"October Rice Field Bắp nếp trắng nguyên trái – Ăn liền, hút chân không 2.08kg (8 x 260g)","description":"\u003cp\u003eOctober Rice Field Bắp nếp trắng ngọt tự nhiên, dẻo dai—đã nấu chín và hút chân không, tiện dùng. Mỗi trái đóng kín để giữ độ tươi; ăn ngay từ gói hoặc hâm vài phút để làm món ăn kèm, ăn vặt hay dùng cho bữa sáng.\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Ăn liền:\u003c\/strong\u003e Bắp nếp nguyên trái đã nấu chín—không cần bóc vỏ hay sơ chế.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eGói gia đình:\u003c\/strong\u003e Tổng 2.08kg gồm 8 trái, mỗi trái 260g đóng gói riêng.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eHút chân không giữ vị:\u003c\/strong\u003e Bao bì giúp giữ vị và độ dẻo, bảo quản được ở nhiệt độ thường.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eNhiều cách thưởng thức:\u003c\/strong\u003e Ăn ngay từ túi hoặc hâm bằng lò vi sóng, hấp hay nướng.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eĂn vặt hoặc ăn kèm:\u003c\/strong\u003e Tiện cho hộp cơm, bữa ăn nhanh và tiệc BBQ.\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"October Rice Field","offers":[{"title":"Default Title","offer_id":50513141661983,"sku":"A6953721708059","price":14.09,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/1_6f2bb796-010a-48dd-82ca-300dd7556dac.jpg?v=1737104569"},{"product_id":"october-rice-field-yellow-waxy-corn-1-76kg-8-x-220g-ready-to-eat-vacuum-sealed-corn-on-the-cob","title":"October Rice Field Bắp nếp vàng 1.76kg (8 x 220g) - Bắp nguyên trái ăn liền hút chân không","description":"\u003cp\u003eThưởng thức vị ngọt dẻo của bắp nếp vàng October Rice Field—bắp nguyên trái đã nấu chín, hút chân không, sẵn sàng dùng bất cứ lúc nào bạn muốn. Gói gia đình 1.76 kg này (8 x 220 g) mang đến sự tiện lợi và chất lượng đồng đều cùng độ dẻo đặc trưng của bắp nếp.\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Ăn liền:\u003c\/strong\u003e Bắp nếp (bắp dẻo) đã nấu chín—dùng ngay từ gói hoặc hâm nóng.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eChia phần ăn tiện lợi:\u003c\/strong\u003e 8 trái được hút chân không riêng (mỗi trái 220 g), dễ chia sẻ và chuẩn bị bữa ăn.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eNgọt tự nhiên:\u003c\/strong\u003e Hạt bắp vàng với kết cấu dẻo ngon.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eDễ hâm nóng:\u003c\/strong\u003e Hâm bằng lò vi sóng, hấp hoặc luộc nguyên túi để dùng nhanh.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eNhiều cách thưởng thức:\u003c\/strong\u003e Thích hợp làm món ăn nhẹ, món ăn kèm hoặc món quen thuộc trong hộp cơm.\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"October Rice Field","offers":[{"title":"Default Title","offer_id":51168375210271,"sku":"M6953721707571","price":13.69,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/img_01_c5648b4b-4171-4e63-81b8-68df1618788f.jpg?v=1770189678"},{"product_id":"october-rice-field-black-glutinous-corn-1-76-kg-ready-to-eat-vacuum-packs","title":"October Rice Field Bắp nếp đen 1.76kg - Gói hút chân không ăn liền","description":"\u003cp\u003eTừ October Rice Field—một trong những thương hiệu ngũ cốc nổi tiếng của Trung Quốc—là những trái bắp nếp đen (bắp sáp) mềm, ngọt tự nhiên. Mỗi trái bắp được nấu chín và hút chân không để giữ độ tươi, nên bạn có thể ăn ngay khi mở gói, dùng lạnh hoặc hâm nóng trong vài phút.\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\u003eBắp nếp dẻo ngọt:\u003c\/strong\u003e Hạt bắp tím đậm có độ dẻo dai ngon.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eTiện lợi và ăn liền:\u003c\/strong\u003e Dùng lạnh, hấp cho nóng hoặc cho vào lò vi sóng sau khi mở gói.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eGói gia đình:\u003c\/strong\u003e Tổng khối lượng 1.76kg, trên bao bì ghi 220g × 8 gói hút chân không riêng lẻ.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eNhiều cách sử dụng:\u003c\/strong\u003e Rất thích hợp cho bữa sáng, ăn nhẹ, hộp cơm trưa hoặc làm món ăn kèm bổ dưỡng.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eBảo quản được ở nhiệt độ thường:\u003c\/strong\u003e Bảo quản ở nhiệt độ phòng; giữ lạnh sau khi mở.\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"October Rice Field","offers":[{"title":"Default Title","offer_id":51168375243039,"sku":"M6974382972085","price":13.69,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/1_047b76c7-487d-44f7-bb04-8da7ae004864.jpg?v=1756216193"},{"product_id":"october-paddy-golden-glutinous-corn-segments-800g-waxy-yellow-corn-cob-pieces","title":"October Paddy Bắp nếp vàng cắt khúc 800g - Khúc trái bắp nếp vàng","description":"\u003cp\u003eBắp nếp vàng cắt khúc October Paddy mang hương vị thân quen của bắp nếp vàng từ cánh đồng thẳng đến ngăn đông của bạn. Mỗi gói 800 g chứa 8 khúc bắp mềm, khi nấu có vị ngọt, thơm và ngon miệng—hoàn hảo cho món ăn kèm dễ làm hoặc bữa ăn nhẹ 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\u003eBắp nếp vàng:\u003c\/strong\u003e Bắp nếp vàng ngọt tự nhiên với kết cấu dai dẻo dễ chịu.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eCắt khúc tiện lợi:\u003c\/strong\u003e Bắp cắt khúc sẵn (8 khúc mỗi gói) để dễ chia phần ăn và dọn dùng.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eNấu ngay từ đông lạnh:\u003c\/strong\u003e Chỉ cần luộc, hấp hoặc quay lò vi sóng ngay từ ngăn đông—không cần bóc vỏ hay cắt.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eMón ăn kèm đa dạng:\u003c\/strong\u003e Hợp với bữa tối hằng ngày, bữa BBQ, canh hoặc lẩu.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eThương hiệu đáng tin cậy:\u003c\/strong\u003e Từ October Paddy, thương hiệu Trung Quốc nổi tiếng chuyên về ngũ cốc và thực phẩm thiết yếu chất lượng.\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: October Paddy, 十月稻田, bắp đông lạnh, bắp nếp, bắp dẻo, bắp cắt khúc, trái bắp vàng, bắp Trung Quốc\u003c\/small\u003e\u003c\/p\u003e\u003c\/details\u003e","brand":"October Paddy","offers":[{"title":"Default Title","offer_id":51547890843935,"sku":"M6974382971873","price":9.29,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0864\/3602\/0511\/files\/1_dd3a0989-4898-45f9-8bc0-cf92d3f51412.jpg?v=1768806528"}],"url":"https:\/\/www.umall.com.au\/vi\/collections\/corn\/frozen-food.oembed","provider":"Umall - Australia's Largest Online Asian Supermarket","version":"1.0","type":"link"}