{"id":43765,"date":"2026-05-13T23:57:09","date_gmt":"2026-05-13T13:57:09","guid":{"rendered":"https:\/\/staging.ebaoguo.com\/shipping-calculator-zh-hant\/"},"modified":"2026-05-18T07:19:28","modified_gmt":"2026-05-18T05:19:28","slug":"shipping-calculator-zh-hant","status":"publish","type":"page","link":"https:\/\/ebaoguo.cn\/zh-hant\/shipping-calculator-zh-hant\/","title":{"rendered":"\u570b\u969b\u904b\u8cbb\u8a08\u7b97\u5668"},"content":{"rendered":"\n<section style=\"background:linear-gradient(135deg,#0f172a 0%,#1e3a5f 60%,#116ebf 100%);padding:48px 24px 40px;text-align:center;color:#fff\">\n<p style=\"font-size:13px;font-weight:700;letter-spacing:2px;color:#93c5fd;text-transform:uppercase;margin:0 0 10px\">Ebaoguo \u00b7 \u5168\u7403\u5009\u5eab\u767c\u8ca8<\/p>\n<h2 style=\"font-size:34px;font-weight:800;margin:0 0 12px;line-height:1.2\">\u570b\u969b\u904b\u8cbb\u5373\u6642\u8a08\u7b97\u5668<\/h2>\n<p style=\"font-size:16px;color:#cbd5e1;max-width:600px;margin:0 auto 6px\">\u9078\u64c7\u767c\u8ca8\u5009\u5eab + \u6536\u4ef6\u570b\u5bb6\uff0c\u586b\u5beb\u91cd\u91cf\u548c\u5305\u88f9\u985e\u578b\uff0c\u5373\u6642\u7372\u53d6\u591a\u689d\u7dda\u8def\u5831\u50f9\u53ca\u5b8c\u6574\u8cbb\u7528\u62c6\u5206\u3002<\/p>\n<p style=\"font-size:13px;color:#64748b;margin:0\">\u8cc7\u6599\u4f86\u81ea api.ebaoguo.com \u5373\u6642\u5831\u50f9 \u00b7 \u7121\u96b1\u85cf\u6536\u8cbb<\/p>\n<\/section>\n\n\n    <div class=\"ebg-cu-wrap\" id=\"ebg-cu-78a10e7d-a9fa-4fcf-b617-f357cf0d03a4\" style=\"font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;max-width:880px;margin:24px auto;border:1px solid #e5e7eb;border-radius:12px;padding:24px;background:linear-gradient(180deg,#fafbfc,#fff);box-sizing:border-box\">\n      <div style=\"text-align:center;margin-bottom:18px\">\n        <h3 style=\"margin:0 0 6px;font-size:22px;color:#116ebf;font-weight:700\">\u570b\u969b\u904b\u8cbb\u5373\u6642\u8a08\u7b97\u5668<\/h3>\n        <p style=\"margin:0;font-size:14px;color:#64748b;line-height:1.6\">\u9078\u64c7\u767c\u4ef6\u5009\u5eab + \u6536\u4ef6\u570b\u5bb6 \u2014 \u5373\u6642\u770b\u5230\u5b8c\u6574\u8cbb\u7528\u62c6\u5206\uff08\u904b\u8cbb + \u8655\u7406\u8cbb + \u7a05\u91d1\uff09\u3002\u7121\u96b1\u85cf\u6536\u8cbb\u3002<\/p>\n      <\/div>\n      <div class=\"ebg-cu-pickers\" style=\"display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:end;margin-bottom:14px\">\n        <label style=\"display:flex;flex-direction:column;font-size:12px;color:#475569;font-weight:600\">\n          <span style=\"margin-bottom:4px\">\u767c\u4ef6\u5009\u5eab<\/span>\n          <select data-cu-role=\"origin\" style=\"padding:11px 12px;border:1.5px solid #cbd5e1;border-radius:8px;font-size:15px;background:#fff;cursor:pointer;min-height:46px;line-height:1.4;box-sizing:border-box;height:46px\">\n                          <option value=\"au\"  selected='selected'>\u6fb3\u6d32<\/option>\n                          <option value=\"cn\" >\u4e2d\u570b\u5927\u9678<\/option>\n                          <option value=\"my\" >\u99ac\u4f86\u897f\u4e9e<\/option>\n                          <option value=\"tw\" >\u53f0\u7063<\/option>\n                          <option value=\"jp\" >\u65e5\u672c<\/option>\n                          <option value=\"hk\" >\u9999\u6e2f<\/option>\n                          <option value=\"nz\" >\u7d10\u897f\u862d<\/option>\n                          <option value=\"us\" >\u7f8e\u570b<\/option>\n                      <\/select>\n        <\/label>\n        <div style=\"font-size:24px;color:#94a3b8;padding-bottom:10px;text-align:center\">\u2192<\/div>\n        <label style=\"display:flex;flex-direction:column;font-size:12px;color:#475569;font-weight:600\">\n          <span style=\"margin-bottom:4px\">\u6536\u4ef6\u570b\u5bb6<\/span>\n          <select data-cu-role=\"dest\" style=\"padding:11px 12px;border:1.5px solid #cbd5e1;border-radius:8px;font-size:15px;background:#fff;cursor:pointer;min-height:46px;line-height:1.4;box-sizing:border-box;height:46px\">\n                          <option value=\"au\" >\u6fb3\u6d32<\/option>\n                          <option value=\"cn\" >\u4e2d\u570b\u5927\u9678<\/option>\n                          <option value=\"nz\" >\u7d10\u897f\u862d<\/option>\n                          <option value=\"my\" >\u99ac\u4f86\u897f\u4e9e<\/option>\n                          <option value=\"hk\" >\u9999\u6e2f<\/option>\n                          <option value=\"tw\"  selected='selected'>\u53f0\u7063<\/option>\n                          <option value=\"sg\" >\u65b0\u52a0\u5761<\/option>\n                          <option value=\"jp\" >\u65e5\u672c<\/option>\n                          <option value=\"kr\" >\u97d3\u570b<\/option>\n                          <option value=\"th\" >\u6cf0\u570b<\/option>\n                          <option value=\"id\" >\u5370\u5c3c<\/option>\n                          <option value=\"vn\" >\u8d8a\u5357<\/option>\n                          <option value=\"us\" >\u7f8e\u570b<\/option>\n                          <option value=\"uk\" >\u82f1\u570b<\/option>\n                          <option value=\"ca\" >\u52a0\u62ff\u5927<\/option>\n                      <\/select>\n        <\/label>\n      <\/div>\n      <div data-cu-role=\"container\" style=\"margin-top:6px\"><\/div>\n    <\/div>\n    <style>@media(max-width:600px){#ebg-cu-78a10e7d-a9fa-4fcf-b617-f357cf0d03a4 .ebg-cu-pickers{grid-template-columns:1fr!important}#ebg-cu-78a10e7d-a9fa-4fcf-b617-f357cf0d03a4 .ebg-cu-pickers > div{display:none}}<\/style>\n    <script>\n    (function(){\n      var root = document.getElementById('ebg-cu-78a10e7d-a9fa-4fcf-b617-f357cf0d03a4'); if (!root) return;\n      var container = root.querySelector('[data-cu-role=\"container\"]');\n      var origSel = root.querySelector('[data-cu-role=\"origin\"]');\n      var destSel = root.querySelector('[data-cu-role=\"dest\"]');\n      var locale = 'zh-Hant';\n      function load(){\n        var o = origSel.value, d = destSel.value;\n        if (o === d) { container.innerHTML = '<div style=\"padding:14px;background:#fef3c7;border-radius:8px;color:#92400e;text-align:center\">\u8d77\u8fd0\u5730\u548c\u76ee\u7684\u5730\u4e0d\u80fd\u76f8\u540c \/ Origin = Destination<\/div>'; return; }\n        container.innerHTML = '<div style=\"padding:20px;text-align:center;color:#94a3b8;font-size:18px\"><svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"display:inline-block;vertical-align:-3px;margin-right:6px\"><path d=\"M6 2h12v6l-6 4 6 4v6H6v-6l6-4-6-4z\"\/><\/svg><\/div>';\n        fetch('https:\/\/ebaoguo.cn\/zh-hant\/wp-json\/ebg\/v1\/calc\/render?origin=' + encodeURIComponent(o) + '&dest=' + encodeURIComponent(d) + '&locale=' + encodeURIComponent(locale), {headers:{'Accept':'application\/json'}})\n          .then(function(r){ return r.json(); })\n          .then(function(html){\n            container.innerHTML = html;\n            container.querySelectorAll('.ebg-calc[data-config]').forEach(function(el){\n              if (window.__ebgCalcInitFn) window.__ebgCalcInitFn(el);\n            });\n          })\n          .catch(function(){ container.innerHTML = '<div style=\"padding:14px;background:#fef2f2;color:#991b1b;border-radius:8px;text-align:center\">\u52a0\u8f7d\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5<\/div>'; });\n      }\n      \/\/ Auto-load immediately; re-load when route changes\n      load();\n      origSel.addEventListener('change', load);\n      destSel.addEventListener('change', load);\n    })();\n    <\/script>\n        <style>\n    .ebg-calc{font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,\"Helvetica Neue\",Arial,sans-serif;max-width:880px;margin:24px auto;border:1px solid #e5e7eb;border-radius:12px;padding:20px;background:#fff;color:#1f2937;}\n    .ebg-calc__header{display:flex;justify-content:center;margin-bottom:16px;}\n    .ebg-calc__route{display:inline-flex;align-items:center;gap:10px;background:#f3f4f6;border-radius:999px;padding:8px 16px;font-weight:600;}\n    .ebg-calc__arrow{color:#9ca3af;}\n    .ebg-calc__section{margin:16px 0;}\n    .ebg-calc__label{font-weight:600;margin-bottom:8px;font-size:14px;color:#374151;}\n    \/* Item-attribute cards \u2014 black-line icon style *\/\n    .ebg-calc__tags{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:10px;margin-top:8px;}\n    .ebg-calc__tag{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;padding:14px 8px 10px;border:1.5px solid #e5e7eb;border-radius:10px;background:#fff;cursor:pointer;font-size:13px;text-align:center;transition:border-color .15s, background .15s, transform .1s;line-height:1.3;min-height:78px;}\n    .ebg-calc__tag:hover{border-color:#2563eb;background:#f8faff;}\n    .ebg-calc__tag.is-active{border-color:#2563eb;background:#eff6ff;}\n    .ebg-calc__tag.is-active .ebg-calc__tag-name{color:#1d4ed8;font-weight:600;}\n    .ebg-calc__tag-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:#111827;}\n    .ebg-calc__tag-icon svg{width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}\n    .ebg-calc__tag.is-active .ebg-calc__tag-icon{color:#2563eb;}\n    .ebg-calc__tag-name{display:block;color:#374151;font-weight:500;}\n    .ebg-calc__tags-loading{padding:12px;color:#6b7280;font-size:13px;text-align:center;}\n    \/* Size-reference preset cards *\/\n    .ebg-calc__dim-presets-wrap{margin-top:12px;padding:14px;background:#fafafa;border-radius:10px;border:1px dashed #e5e7eb;}\n    .ebg-calc__dim-presets-label{display:block;font-size:13px;color:#6b7280;font-weight:500;margin-bottom:10px;}\n    .ebg-calc__dim-presets{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:10px;}\n    .ebg-calc__dim-preset{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;padding:12px 8px;border:1.5px solid #e5e7eb;border-radius:10px;background:#fff;cursor:pointer;font-size:13px;color:#374151;line-height:1.3;transition:border-color .15s, background .15s;min-height:78px;font-family:inherit;}\n    .ebg-calc__dim-preset:hover{border-color:#2563eb;background:#f8faff;}\n    .ebg-calc__dim-preset.is-active{border-color:#2563eb;background:#eff6ff;}\n    .ebg-calc__dim-preset.is-active .ebg-calc__dim-preset-name{color:#1d4ed8;font-weight:600;}\n    .ebg-calc__dim-preset-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:28px;color:#111827;}\n    .ebg-calc__dim-preset-icon svg{stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}\n    .ebg-calc__dim-preset.is-active .ebg-calc__dim-preset-icon{color:#2563eb;}\n    .ebg-calc__dim-preset-name{font-weight:500;}\n    .ebg-calc__dim-preset-weight{font-size:11px;color:#9ca3af;font-weight:500;}\n    .ebg-calc__dim-preset.is-active .ebg-calc__dim-preset-weight{color:#3b82f6;}\n    .ebg-calc__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;}\n    .ebg-calc__grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#374151;font-weight:500;}\n    .ebg-calc__grid input,.ebg-calc__grid select{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:15px;line-height:1.4;height:42px;min-height:42px;box-sizing:border-box;background:#fff;color:#111827;}\n    .ebg-calc__grid input:focus,.ebg-calc__grid select:focus{outline:none;border-color:#3b82f6;}\n    .ebg-calc__actions{text-align:center;margin:18px 0 8px;}\n    .ebg-calc__submit{background:#2563eb;color:#fff;border:0;border-radius:8px;padding:12px 32px;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s;}\n    .ebg-calc__submit:hover{background:#1d4ed8;}\n    .ebg-calc__submit:disabled{opacity:.5;cursor:wait;}\n    .ebg-calc__status{margin:10px 0;padding:10px;border-radius:6px;font-size:14px;display:none;}\n    .ebg-calc__status.is-error{background:#fef2f2;color:#991b1b;display:block;}\n    .ebg-calc__status.is-info{background:#eff6ff;color:#1e40af;display:block;}\n    .ebg-calc__results{display:flex;flex-direction:column;gap:12px;margin-top:8px;}\n    .ebg-calc__card{border:1px solid #e5e7eb;border-radius:10px;padding:14px;display:grid;grid-template-columns:60px 1fr auto;gap:12px;align-items:center;}\n    .ebg-calc__card-v2{border:1px solid #e5e7eb;border-radius:10px;padding:14px 16px;background:#fff;}\n    .ebg-calc__card-v2.is-disabled{opacity:.55}\n    .ebg-calc__card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;}\n    .ebg-calc__card-head-left{display:flex;gap:12px;align-items:flex-start;flex:1;min-width:0}\n    .ebg-calc__card-total{text-align:right;flex-shrink:0}\n    .ebg-calc__card-total-label{font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}\n    .ebg-calc__card-total-amount{font-size:22px;font-weight:800;color:#1d4ed8;white-space:nowrap;line-height:1.2;margin-top:2px}\n    .ebg-calc__breakdown{margin-top:10px;padding-top:10px;border-top:1px dashed #e5e7eb;display:flex;flex-direction:column;gap:5px}\n    .ebg-calc__bd-row{display:flex;justify-content:space-between;font-size:13px;color:#475569}\n    .ebg-calc__bd-row span:last-child{font-weight:600;color:#0f172a}\n    @media(max-width:540px){.ebg-calc__card-v2{padding:12px}.ebg-calc__card-head{flex-direction:column;align-items:stretch}.ebg-calc__card-total{text-align:left}.ebg-calc__card-total-amount{font-size:20px}}\n    .ebg-calc__card.is-disabled{opacity:.55;}\n    .ebg-calc__card img{max-width:60px;max-height:40px;object-fit:contain;}\n    .ebg-calc__card-title{font-weight:600;font-size:15px;margin-bottom:4px;}\n    .ebg-calc__card-meta{font-size:12px;color:#6b7280;display:flex;flex-wrap:wrap;gap:8px;}\n    .ebg-calc__card-price{font-size:20px;font-weight:700;color:#1d4ed8;text-align:right;white-space:nowrap;}\n    .ebg-calc__card-warn{font-size:12px;color:#b45309;margin-top:4px;}\n    @media (max-width:540px){\n        .ebg-calc__card{grid-template-columns:1fr;text-align:center;}\n        .ebg-calc__card img{margin:0 auto;}\n        .ebg-calc__card-price{text-align:center;}\n    }\n    @media (max-width:420px){\n        .ebg-calc__grid{grid-template-columns:1fr;}\n        .ebg-calc__grid input,.ebg-calc__grid select{font-size:16px;}\n        .ebg-calc__submit{width:100%;padding:14px 20px;}\n    }\n    <\/style>\n    <script>\n    (function(){\n        var TAG_DEFAULTS = {\n            '\u5065\u5eb7\u8425\u517b\u54c1':{w:2,l:25,W:20,h:15},\n            '\u5065\u5eb7\u71df\u990a\u54c1':{w:2,l:25,W:20,h:15},\n            '\u7cbe\u6cb9':{w:1.5,l:25,W:20,h:12},\n            '\u98df\u54c1':{w:4,l:35,W:25,h:18},\n            '\u666e\u901a\u6d17\u62a4\u7528\u54c1':{w:1.5,l:25,W:20,h:12},\n            '\u666e\u901a\u6d17\u8b77\u7528\u54c1':{w:1.5,l:25,W:20,h:12},\n            '\u8863\u5e3d\u978b\u5305':{w:3,l:40,W:30,h:15},\n            '\u7535\u5b50\u4ea7\u54c1\uff08\u4e0d\u542b\u7535\u6c60\uff09':{w:1,l:30,W:20,h:10},\n            '\u7535\u5b50\u4ea7\u54c1\uff08\u542b\u7535\u6c60\uff09':{w:1,l:30,W:20,h:10},\n            '\u7f50\u88c5\u5976\u7c89':{w:5,l:30,W:25,h:25},\n            '\u888b\u88c5\u5976\u7c89':{w:5,l:30,W:25,h:15},\n            '\u6587\u4ef6\u4e66\u7c4d\u6742\u5fd7':{w:1,l:30,W:22,h:5},\n            '\u8461\u8404\u9152':{w:6,l:35,W:25,h:30},\n            '\u8fd0\u52a8\u6237\u5916\u7528\u54c1':{w:5,l:50,W:35,h:20},\n            '\u73e0\u5b9d\u624b\u8868':{w:0.5,l:20,W:15,h:8},\n            '\u9ad8\u503c\u6d17\u62a4\u7528\u54c1':{w:2,l:25,W:20,h:12},\n            '\u6d77\u9c9c\u5e72\u8d27':{w:3,l:30,W:25,h:15},\n            '\u7f50\u5934\u7c7b\u98df\u54c1':{w:5,l:30,W:25,h:18}\n        };\n        var TAG_EMOJI = {\n            '\u5065\u5eb7\u8425\u517b\u54c1':'\\u{1F48A}','\u5065\u5eb7\u71df\u990a\u54c1':'\\u{1F48A}',\n            '\u7cbe\u6cb9':'\\u{1F33F}',\n            '\u98df\u54c1':'\\u{1F36B}',\n            '\u666e\u901a\u6d17\u62a4\u7528\u54c1':'\\u{1F9F4}','\u666e\u901a\u6d17\u8b77\u7528\u54c1':'\\u{1F9F4}',\n            '\u9ad8\u503c\u6d17\u62a4\u7528\u54c1':'\\u{1F9F4}',\n            '\u8863\u5e3d\u978b\u5305':'\\u{1F455}',\n            '\u7535\u5b50\u4ea7\u54c1\uff08\u4e0d\u542b\u7535\u6c60\uff09':'\\u{1F4F1}','\u7535\u5b50\u4ea7\u54c1\uff08\u542b\u7535\u6c60\uff09':'\\u{1F50B}',\n            '\u7f50\u88c5\u5976\u7c89':'\\u{1F37C}','\u888b\u88c5\u5976\u7c89':'\\u{1F37C}',\n            '\u6587\u4ef6\u4e66\u7c4d\u6742\u5fd7':'\\u{1F4DA}',\n            '\u8461\u8404\u9152':'\\u{1F377}',\n            '\u8fd0\u52a8\u6237\u5916\u7528\u54c1':'\\u{26BD}',\n            '\u73e0\u5b9d\u624b\u8868':'\\u{1F48E}',\n            '\u6d77\u9c9c\u5e72\u8d27':'\\u{1F990}',\n            '\u7f50\u5934\u7c7b\u98df\u54c1':'\\u{1F96B}',\n            '\u6e05\u6d01\u7528\u54c1(\u542b\u9152\u7cbe)':'\\u{1F9FC}',\n            '\u5de5\u5177':'\\u{1F527}',\n            '\u6c7d\u8f66\u914d\u4ef6':'\\u{1F697}',\n            '\u5371\u9669\u54c1':'\\u{2622}',\n            '\u5904\u65b9\u836f':'\\u{1F489}',\n            '\u7eaf\u7535\u6c60':'\\u{1F50B}',\n            '\u7c89\u672b':'\\u{1F9C2}'\n        };\n        var HIDE_TAGS = {'\u8fdd\u7981\u54c1':1,'\u5371\u9669\u54c1':1,'\u6613\u71c3\u6613\u7206\u6807\u5fd7':1,'\u654f\u611f\u7269\u54c1':1,'\u7eaf\u7535\u6c60':1,'\u5904\u65b9\u836f':1,'\u661f\u94fe':1,'\u7eaa\u5ff5\u5e01':1,'\u54c1\u724c':1,'\u4e00\u7ebf\u5962\u4f88\u54c1\u724c':1,'UGG':1,'\u4e2a\u4eba\u884c\u674e':1,'\u7f8a\u6bdb\u88ab':1};\n        var TAG_NORM = {\n            \"\u666e\u8d27\": \"General Goods\",\n            \"\u666e\u8d27CN\": \"General Goods\",\n            \"\u666e\u8ca8\": \"General Goods\",\n            \"\u666e\u8ca8CN\": \"General Goods\",\n            \"general\": \"General Goods\",\n            \"general cn\": \"General Goods\",\n            \"general item\": \"General Goods\",\n            \"domestic\": \"General Goods\",\n            \"\u9632\u75ab\u7269\u8d44\": \"Anti-epidemic Supplies\",\n            \"\u9632\u75ab\u7269\u8cc7\": \"Anti-epidemic Supplies\",\n            \"anti-epidemic materials\": \"Anti-epidemic Supplies\",\n            \"\u670d\u9970\": \"Clothing, Shoes & Bags\",\n            \"\u670d\u98fe\": \"Clothing, Shoes & Bags\",\n            \"\u670d\u88c5\u978b\u5e3d\": \"Clothing, Shoes & Bags\",\n            \"\u8863\u5e3d\u978b\u5305\": \"Clothing, Shoes & Bags\",\n            \"\u670d\u88dd\u548c\u7d21\u7e54\u54c1\": \"Clothing, Shoes & Bags\",\n            \"\u670d\u88c5\u548c\u7eba\u7ec7\u54c1\": \"Clothing, Shoes & Bags\",\n            \"apparel\": \"Clothing, Shoes & Bags\",\n            \"apparel & accessories\": \"Clothing, Shoes & Bags\",\n            \"apparel and textiles\": \"Clothing, Shoes & Bags\",\n            \"clothings&bag&shoes\": \"Clothing, Shoes & Bags\",\n            \"\u978b\u5b50\": \"Shoes\",\n            \"shoes\": \"Shoes\",\n            \"\u661f\u94fe\": \"Starlink\",\n            \"\u661f\u93c8\": \"Starlink\",\n            \"starlink\": \"Starlink\",\n            \"\u4fdd\u5065\u54c1\": \"Health Supplements\",\n            \"\u5065\u5eb7\u8425\u517b\u54c1\": \"Health Supplements\",\n            \"\u5065\u5eb7\u71df\u990a\u54c1\": \"Health Supplements\",\n            \"\u5065\u5eb7\u548c\u7f8e\u5bb9\u4ea7\u54c1\": \"Health Supplements\",\n            \"\u5065\u5eb7\u548c\u7f8e\u5bb9\u7522\u54c1\": \"Health Supplements\",\n            \"health & nutrition products\": \"Health Supplements\",\n            \"health and beauty products\": \"Health Supplements\",\n            \"supplement\": \"Health Supplements\",\n            \"suplements and vitamins\": \"Health Supplements\",\n            \"supplements and vitamins\": \"Health Supplements\",\n            \"\u62a4\u80a4\u54c1\": \"Skincare & Cosmetics\",\n            \"\u8b77\u819a\u54c1\": \"Skincare & Cosmetics\",\n            \"\u5316\u5986\u54c1\": \"Skincare & Cosmetics\",\n            \"\u5316\u599d\u54c1\": \"Skincare & Cosmetics\",\n            \"\u5316\u5986\u62a4\u80a4\u54c1\": \"Skincare & Cosmetics\",\n            \"\u5316\u599d\u8b77\u819a\u54c1\": \"Skincare & Cosmetics\",\n            \"\u7f8e\u5bb9\u62a4\u80a4\u54c1\": \"Skincare & Cosmetics\",\n            \"\u7f8e\u5bb9\u8b77\u819a\u54c1\": \"Skincare & Cosmetics\",\n            \"skin care\": \"Skincare & Cosmetics\",\n            \"skin care products\": \"Skincare & Cosmetics\",\n            \"beauty & skincare products\": \"Skincare & Cosmetics\",\n            \"cosmetics and skin care products\": \"Skincare & Cosmetics\",\n            \"\u666e\u901a\u6d17\u62a4\u7528\u54c1\": \"Personal Care\",\n            \"\u666e\u901a\u6d17\u8b77\u7528\u54c1\": \"Personal Care\",\n            \"normal toiletries\": \"Personal Care\",\n            \"\u9ad8\u503c\u6d17\u62a4\u7528\u54c1\": \"Premium Personal Care\",\n            \"\u9ad8\u503c\u6d17\u8b77\u7528\u54c1\": \"Premium Personal Care\",\n            \"high value toiletries\": \"Premium Personal Care\",\n            \"\u6587\u4ef6\": \"Documents\",\n            \"document\": \"Documents\",\n            \"doc\": \"Documents\",\n            \"\u4e66\": \"Books & Magazines\",\n            \"\u66f8\": \"Books & Magazines\",\n            \"\u4e66\u7c4d\u6742\u5fd7\": \"Books & Magazines\",\n            \"\u66f8\u7c4d\u96dc\u8a8c\": \"Books & Magazines\",\n            \"books & magazines\": \"Books & Magazines\",\n            \"doc&books & magazines\": \"Books & Magazines\",\n            \"\u4e66\u7c4d\u548c\u6587\u5177\": \"Books & Stationery\",\n            \"\u66f8\u7c4d\u548c\u6587\u5177\": \"Books & Stationery\",\n            \"\u6587\u5177\": \"Books & Stationery\",\n            \"stationery\": \"Books & Stationery\",\n            \"books and stationery\": \"Books & Stationery\",\n            \"\u827a\u672f\u54c1\u548c\u5531\u7247\": \"Artwork & CD\",\n            \"\u85dd\u8853\u54c1\u548c\u5531\u7247\": \"Artwork & CD\",\n            \"artwork & cd\": \"Artwork & CD\",\n            \"cd\u3001dvd\": \"Artwork & CD\",\n            \"CD\u3001DVD\": \"Artwork & CD\",\n            \"cd\": \"Artwork & CD\",\n            \"\u6db2\u4f53\": \"Liquid\",\n            \"\u6db2\u9ad4\": \"Liquid\",\n            \"liquid\": \"Liquid\",\n            \"\u6db2\u4f53(\u4e0d\u8d85\u8fc7500ml)\": \"Liquid (\u2264500ml)\",\n            \"\u6db2\u9ad4(\u4e0d\u8d85\u904e500ml)\": \"Liquid (\u2264500ml)\",\n            \"liquid (not exceeding 500ml)\": \"Liquid (\u2264500ml)\",\n            \"\u6db2\u4f53(\u8d85\u8fc7500ml)\": \"Liquid (>500ml)\",\n            \"\u6db2\u9ad4(\u8d85\u904e500ml)\": \"Liquid (>500ml)\",\n            \"liquid (more than 500ml)\": \"Liquid (>500ml)\",\n            \"\u7cbe\u6cb9\": \"Essential Oils\",\n            \"essential oil\": \"Essential Oils\",\n            \"essential oils\": \"Essential Oils\",\n            \"\u98df\u54c1\": \"Food\",\n            \"food\": \"Food\",\n            \"\u98df\u54c1\u548c\u996e\u6599\": \"Food & Beverages\",\n            \"\u98df\u54c1\u548c\u98f2\u6599\": \"Food & Beverages\",\n            \"food and beverages\": \"Food & Beverages\",\n            \"foods and snacks\": \"Food & Beverages\",\n            \"\u7535\u6c60\u4ef6\": \"With Batteries\",\n            \"\u96fb\u6c60\u4ef6\": \"With Batteries\",\n            \"\u542b\u7535\u6c60\": \"With Batteries\",\n            \"\u542b\u96fb\u6c60\": \"With Batteries\",\n            \"batteries included\": \"With Batteries\",\n            \"battery\": \"With Batteries\",\n            \"\u7eaf\u7535\u6c60\": \"Pure Battery\",\n            \"\u7d14\u96fb\u6c60\": \"Pure Battery\",\n            \"pure battery\": \"Pure Battery\",\n            \"\u5145\u7535\u5b9d\": \"Power Bank\",\n            \"\u5145\u96fb\u5bf6\": \"Power Bank\",\n            \"power bank\": \"Power Bank\",\n            \"\u6237\u5916\u7535\u6e90\": \"Power Station\",\n            \"\u6236\u5916\u96fb\u6e90\": \"Power Station\",\n            \"power station\": \"Power Station\",\n            \"\u9ad8\u4ef7\u5962\u4f88\u54c1\u724c\": \"Luxury Brands\",\n            \"\u9ad8\u50f9\u5962\u4f88\u54c1\u724c\": \"Luxury Brands\",\n            \"\u4e00\u7ebf\u5962\u4f88\u54c1\u724c\": \"Luxury Brands\",\n            \"\u4e00\u7dda\u5962\u4f88\u54c1\u724c\": \"Luxury Brands\",\n            \"luxury brand\": \"Luxury Brands\",\n            \"first-tier luxury brands\": \"Luxury Brands\",\n            \"\u54c1\u724c\": \"Branded Items\",\n            \"branded items\": \"Branded Items\",\n            \"famous brand\": \"Branded Items\",\n            \"\u54c1\u724c\u5305\u5305\uff08\u542b\u4eff\u724c\uff09\": \"Branded Items\",\n            \"brand handbags (including replicas)\": \"Branded Items\",\n            \"\u5c0f\u578b\u7535\u5668\uff08\u4e0d\u542b\u7535\u6c60\uff09\": \"Small Appliances (no battery)\",\n            \"\u5c0f\u578b\u96fb\u5668\uff08\u4e0d\u542b\u96fb\u6c60\uff09\": \"Small Appliances (no battery)\",\n            \"appliances (without batteries)\": \"Small Appliances (no battery)\",\n            \"\u71d5\u7a9d\": \"Bird's Nest\",\n            \"\u71d5\u7aa9\": \"Bird's Nest\",\n            \"bird's nest\": \"Bird's Nest\",\n            \"\u73a9\u5177\": \"Toys & Games\",\n            \"\u73a9\u5177\u4e0e\u6e38\u620f\": \"Toys & Games\",\n            \"\u73a9\u5177\u548c\u6e38\u620f\": \"Toys & Games\",\n            \"\u73a9\u5177\u8207\u904a\u6232\": \"Toys & Games\",\n            \"\u73a9\u5177\u548c\u904a\u6232\": \"Toys & Games\",\n            \"toys\": \"Toys & Games\",\n            \"toys & games\": \"Toys & Games\",\n            \"toys and games\": \"Toys & Games\",\n            \"\u4e00\u822c\u836f\u7269\": \"Medicine\",\n            \"\u4e00\u822c\u85e5\u7269\": \"Medicine\",\n            \"\u836f\u54c1\": \"Medicine\",\n            \"\u85e5\u54c1\": \"Medicine\",\n            \"medicine\": \"Medicine\",\n            \"\u5904\u65b9\u836f\": \"Prescription Medicine\",\n            \"\u8655\u65b9\u85e5\": \"Prescription Medicine\",\n            \"prescription\": \"Prescription Medicine\",\n            \"\u5916\u7528\u836f\u818f\": \"Topical Ointment\",\n            \"\u5916\u7528\u85e5\u818f\": \"Topical Ointment\",\n            \"topical ointment\": \"Topical Ointment\",\n            \"\u65e5\u5e38\u7528\u54c1\": \"Daily Necessities\",\n            \"\u65e5\u7528\u54c1\": \"Daily Necessities\",\n            \"daily necessities\": \"Daily Necessities\",\n            \"\u7c89\u672b\": \"Powder\",\n            \"powder\": \"Powder\",\n            \"\u7c89\u672b\u6216\u6676\u4f53\": \"Powder or Crystal\",\n            \"\u7c89\u672b\u6216\u6676\u9ad4\": \"Powder or Crystal\",\n            \"powder or crystal\": \"Powder or Crystal\",\n            \"\u6c7d\u8f66\u914d\u4ef6\": \"Automotive Parts\",\n            \"\u6c7d\u8eca\u914d\u4ef6\": \"Automotive Parts\",\n            \"\u6c7d\u8f66\u7528\u54c1\": \"Automotive Parts\",\n            \"\u6c7d\u8eca\u7528\u54c1\": \"Automotive Parts\",\n            \"car accessories\": \"Automotive Parts\",\n            \"automotive products\": \"Automotive Parts\",\n            \"\u8fdd\u7981\u54c1\": \"Prohibited Items\",\n            \"\u9055\u7981\u54c1\": \"Prohibited Items\",\n            \"prohibited\": \"Prohibited Items\",\n            \"prohibited items\": \"Prohibited Items\",\n            \"\u654f\u611f\u8d27\": \"Sensitive Goods\",\n            \"\u654f\u611f\u8ca8\": \"Sensitive Goods\",\n            \"\u654f\u611f\u7269\u54c1\": \"Sensitive Goods\",\n            \"sensitive\": \"Sensitive Goods\",\n            \"sensitive item\": \"Sensitive Goods\",\n            \"\u5371\u9669\u54c1\": \"Dangerous Goods\",\n            \"\u5371\u96aa\u54c1\": \"Dangerous Goods\",\n            \"dangerous good\": \"Dangerous Goods\",\n            \"\u542b\u78c1\": \"Magnetic\",\n            \"magnetic\": \"Magnetic\",\n            \"\u5f03\u4ef6\": \"Abandoned Items\",\n            \"\u68c4\u4ef6\": \"Abandoned Items\",\n            \"abandon items\": \"Abandoned Items\",\n            \"\u624b\u673a\": \"Mobile Phone\",\n            \"\u624b\u6a5f\": \"Mobile Phone\",\n            \"cell phone\": \"Mobile Phone\",\n            \"\u624b\u8868\": \"Watch\",\n            \"\u624b\u9336\": \"Watch\",\n            \"watch\": \"Watch\",\n            \"\u73e0\u5b9d\u624b\u8868\": \"Jewellery & Watches\",\n            \"\u73e0\u5bf6\u624b\u9336\": \"Jewellery & Watches\",\n            \"jewelry & watches\": \"Jewellery & Watches\",\n            \"\u6258\u76d8\": \"Pallet\",\n            \"\u6258\u76e4\": \"Pallet\",\n            \"pallet\": \"Pallet\",\n            \"\u4e2a\u4eba\u884c\u674e\": \"Personal Belongings\",\n            \"\u500b\u4eba\u884c\u674e\": \"Personal Belongings\",\n            \"\u4e2a\u4eba\u884c\u674e\u7bb1\": \"Personal Belongings\",\n            \"\u500b\u4eba\u884c\u674e\u7bb1\": \"Personal Belongings\",\n            \"personal belongings\": \"Personal Belongings\",\n            \"\u6210\u4eba\u7528\u54c1\": \"Adult Products\",\n            \"adult products\": \"Adult Products\",\n            \"\u5ba0\u7269\u7528\u54c1\": \"Pet Supplies\",\n            \"\u5bf5\u7269\u7528\u54c1\": \"Pet Supplies\",\n            \"pet supplies\": \"Pet Supplies\",\n            \"\u5bb6\u5c45\u4e0e\u53a8\u623f\": \"Home & Kitchen\",\n            \"\u5bb6\u5c45\u8207\u5eda\u623f\": \"Home & Kitchen\",\n            \"home & kitchen\": \"Home & Kitchen\",\n            \"\u5bb6\u7528\u7535\u5668\": \"Home Appliances\",\n            \"\u5bb6\u7528\u96fb\u5668\": \"Home Appliances\",\n            \"\u54c1\u724c\u5bb6\u7535\": \"Home Appliances\",\n            \"\u54c1\u724c\u5bb6\u96fb\": \"Home Appliances\",\n            \"home appliances\": \"Home Appliances\",\n            \"\u7535\u52a8\u8f66\": \"Electric Bike\",\n            \"\u96fb\u52d5\u8eca\": \"Electric Bike\",\n            \"electric bike\": \"Electric Bike\",\n            \"\u7535\u5b50\u4ea7\u54c1\": \"Electronics\",\n            \"\u96fb\u5b50\u7522\u54c1\": \"Electronics\",\n            \"electronics\": \"Electronics\",\n            \"electronic products\": \"Electronics\",\n            \"\u7535\u5b50\u4ea7\u54c1(\u4e0d\u542b\u7535\u6c60)\": \"Electronics (no battery)\",\n            \"\u7535\u5b50\u4ea7\u54c1\uff08\u4e0d\u542b\u7535\u6c60\uff09\": \"Electronics (no battery)\",\n            \"\u96fb\u5b50\u7522\u54c1\uff08\u4e0d\u542b\u96fb\u6c60\uff09\": \"Electronics (no battery)\",\n            \"electronic product (without battery)\": \"Electronics (no battery)\",\n            \"electronic product (no-battery)\": \"Electronics (no battery)\",\n            \"electronic products (without batteries)\": \"Electronics (no battery)\",\n            \"\u7535\u5b50\u4ea7\u54c1\uff08\u542b\u7535\u6c60\uff09\": \"Electronics (with battery)\",\n            \"\u96fb\u5b50\u7522\u54c1\uff08\u542b\u96fb\u6c60\uff09\": \"Electronics (with battery)\",\n            \"electronic product (with battery)\": \"Electronics (with battery)\",\n            \"\u7535\u5b50\u70df\": \"E-cigarette\",\n            \"\u96fb\u5b50\u83f8\": \"E-cigarette\",\n            \"e-cigarette\": \"E-cigarette\",\n            \"\u70df\u5f39\": \"Vape Pods\",\n            \"\u83f8\u5f48\": \"Vape Pods\",\n            \"smoke bomb\": \"Vape Pods\",\n            \"\u9999\u70df\": \"Cigarettes\",\n            \"\u9999\u83f8\": \"Cigarettes\",\n            \"cigarette\": \"Cigarettes\",\n            \"\u7eaa\u5ff5\u5e01\": \"Commemorative Coins\",\n            \"\u7d00\u5ff5\u5e63\": \"Commemorative Coins\",\n            \"commemorative coins\": \"Commemorative Coins\",\n            \"\u7f8a\u6bdb\u88ab\": \"Wool Quilts\",\n            \"wool quilts\": \"Wool Quilts\",\n            \"\u6d77\u9c9c\u5e72\u8d27\": \"Dried Seafood\",\n            \"\u6d77\u9bae\u4e7e\u8ca8\": \"Dried Seafood\",\n            \"dried seafood\": \"Dried Seafood\",\n            \"\u7f50\u5934\u7c7b\u98df\u54c1\": \"Canned Food\",\n            \"\u7f50\u982d\u985e\u98df\u54c1\": \"Canned Food\",\n            \"canned food\": \"Canned Food\",\n            \"\u7f50\u88c5\u5976\u7c89\": \"Canned Milk Powder\",\n            \"\u7f50\u88dd\u5976\u7c89\": \"Canned Milk Powder\",\n            \"canned milk powder\": \"Canned Milk Powder\",\n            \"\u888b\u88c5\u5976\u7c89\": \"Bagged Milk Powder\",\n            \"\u888b\u88dd\u5976\u7c89\": \"Bagged Milk Powder\",\n            \"bagged milk powder\": \"Bagged Milk Powder\",\n            \"\u5976\u7c89\": \"Milk Powder\",\n            \"milk powder\": \"Milk Powder\",\n            \"\u6bcd\u5a74\u7528\u54c1\": \"Maternity & Baby\",\n            \"\u6bcd\u5b30\u7528\u54c1\": \"Maternity & Baby\",\n            \"maternity & baby supplies\": \"Maternity & Baby\",\n            \"\u8fd0\u52a8\u6237\u5916\u7528\u54c1\": \"Sports & Outdoor\",\n            \"\u904b\u52d5\u6236\u5916\u7528\u54c1\": \"Sports & Outdoor\",\n            \"\u8fd0\u52a8\u548c\u6237\u5916\u7528\u54c1\": \"Sports & Outdoor\",\n            \"\u904b\u52d5\u548c\u6236\u5916\u7528\u54c1\": \"Sports & Outdoor\",\n            \"sports & outdoor goods\": \"Sports & Outdoor\",\n            \"sports and outdoor equipment\": \"Sports & Outdoor\",\n            \"\u5de5\u5177\": \"Tools\",\n            \"tools\": \"Tools\",\n            \"\u7af9\u6728\u7269\u54c1\": \"Wood & Bamboo\",\n            \"solid wood\": \"Wood & Bamboo\",\n            \"wood\": \"Wood & Bamboo\",\n            \"\u8336\u53f6\": \"Tea\",\n            \"\u8336\u8449\": \"Tea\",\n            \"tea\": \"Tea\",\n            \"\u8461\u8404\u9152\": \"Wine\",\n            \"wine\": \"Wine\",\n            \"\u9152\": \"Liquor\",\n            \"liquor\": \"Liquor\",\n            \"\u9690\u5f62\u773c\u955c\": \"Contact Lenses\",\n            \"\u96b1\u5f62\u773c\u93e1\": \"Contact Lenses\",\n            \"contact lenses\": \"Contact Lenses\",\n            \"\u6e05\u6d01\u7528\u54c1(\u542b\u9152\u7cbe)\": \"Cleaning Products (alcohol)\",\n            \"\u6e05\u6f54\u7528\u54c1(\u542b\u9152\u7cbe)\": \"Cleaning Products (alcohol)\",\n            \"disinfectant\": \"Cleaning Products (alcohol)\",\n            \"\u6613\u71c3\u6613\u7206\u6807\u5fd7\": \"Flammable Sign\",\n            \"\u6613\u71c3\u6613\u7206\u6a19\u8a8c\": \"Flammable Sign\",\n            \"flammable sign\": \"Flammable Sign\",\n            \"ugg\": \"UGG\",\n            \"\u5176\u4ed6\": \"Others\",\n            \"others\": \"Others\"\n        };\n        function normTagEN(raw, isEn){\n            if(!isEn) return raw;\n            var s=(raw==null?'':String(raw)).replace(\/\\s+\/g,' ').trim();\n            return TAG_NORM[s] || TAG_NORM[s.toLowerCase()] || s;\n        }\n\n        function $(root, sel){return root.querySelector(sel);}\n        function $$(root, sel){return root.querySelectorAll(sel);}\n\n        function init(el){\n            var cfg;\n            try { cfg = JSON.parse(el.getAttribute('data-config')); } catch(e){ return; }\n            var state = { tagId: null, tags: [], states: [] };\n            var status = $(el,'[data-role=\"status\"]');\n            var results = $(el,'[data-role=\"results\"]');\n\n            function setStatus(msg, kind){\n                status.className = 'ebg-calc__status' + (kind?(' is-'+kind):'');\n                status.textContent = msg || '';\n            }\n\n            function fetchJSON(path, opts){\n                opts = opts || {};\n                opts.headers = opts.headers || {};\n                opts.headers['X-WP-Nonce'] = cfg.nonce;\n                if (opts.body && typeof opts.body !== 'string') {\n                    opts.headers['Content-Type'] = 'application\/json';\n                    opts.body = JSON.stringify(opts.body);\n                }\n                return fetch(cfg.restBase + path, opts).then(function(r){ return r.json(); });\n            }\n\n            function loadTags(){\n                \/\/ Black-line SVG icon set (heroicons-style outline). Mapped per category.\n                \/\/ Default: generic package icon\n                var ICON_PACKAGE = '<svg viewBox=\"0 0 24 24\"><path d=\"M3.27 6.96 12 12.01l8.73-5.05M12 22.08V12\"\/><path d=\"M20.5 7.27 12 2.27l-8.5 5 0 9.46 8.5 5 8.5-5z\"\/><\/svg>';\n                var ICON_PILL = '<svg viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"9\" width=\"18\" height=\"6\" rx=\"3\"\/><line x1=\"12\" y1=\"9\" x2=\"12\" y2=\"15\"\/><\/svg>';\n                var ICON_BOTTLE = '<svg viewBox=\"0 0 24 24\"><path d=\"M9 2h6M10 2v3a3 3 0 0 0-2 3v12a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V8a3 3 0 0 0-2-3V2\"\/><\/svg>';\n                var ICON_FORK = '<svg viewBox=\"0 0 24 24\"><path d=\"M7 2v6a3 3 0 0 0 3 3v11M7 2v6M17 2v20\"\/><\/svg>';\n                var ICON_SHIRT = '<svg viewBox=\"0 0 24 24\"><path d=\"M20.38 3.46 16 2a4 4 0 0 1-8 0L3.62 3.46a2 2 0 0 0-1.34 2.23l.58 3.47a1 1 0 0 0 .99.84H6v10c0 1.1.9 2 2 2h8a2 2 0 0 0 2-2V10h2.15a1 1 0 0 0 .99-.84l.58-3.47a2 2 0 0 0-1.34-2.23z\"\/><\/svg>';\n                var ICON_LAPTOP = '<svg viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"5\" width=\"18\" height=\"12\" rx=\"2\"\/><line x1=\"2\" y1=\"20\" x2=\"22\" y2=\"20\"\/><\/svg>';\n                var ICON_BATTERY = '<svg viewBox=\"0 0 24 24\"><rect x=\"2\" y=\"7\" width=\"18\" height=\"10\" rx=\"2\"\/><line x1=\"22\" y1=\"11\" x2=\"22\" y2=\"13\"\/><line x1=\"6\" y1=\"11\" x2=\"14\" y2=\"11\"\/><\/svg>';\n                var ICON_BABY_BOTTLE = '<svg viewBox=\"0 0 24 24\"><path d=\"M9 2h6M10 4v2M14 4v2\"\/><rect x=\"7\" y=\"6\" width=\"10\" height=\"16\" rx=\"2\"\/><line x1=\"7\" y1=\"11\" x2=\"17\" y2=\"11\"\/><\/svg>';\n                var ICON_BOOK = '<svg viewBox=\"0 0 24 24\"><path d=\"M4 4a2 2 0 0 1 2-2h12v18H6a2 2 0 0 0-2 2V4z\"\/><line x1=\"8\" y1=\"7\" x2=\"14\" y2=\"7\"\/><line x1=\"8\" y1=\"11\" x2=\"14\" y2=\"11\"\/><\/svg>';\n                var ICON_SPARKLE = '<svg viewBox=\"0 0 24 24\"><path d=\"M12 3v3M12 18v3M3 12h3M18 12h3M5.6 5.6l2.1 2.1M16.3 16.3l2.1 2.1M5.6 18.4l2.1-2.1M16.3 7.7l2.1-2.1\"\/><\/svg>';\n                var ICON_WINE = '<svg viewBox=\"0 0 24 24\"><path d=\"M8 3h8l-1 7a3 3 0 0 1-6 0L8 3zM12 13v8M8 21h8\"\/><\/svg>';\n                var ICON_GEM = '<svg viewBox=\"0 0 24 24\"><path d=\"m6 3 6 18 6-18M3 9l9 12M21 9l-9 12M3 9h18\"\/><\/svg>';\n                var ICON_SUITCASE = '<svg viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"7\" width=\"18\" height=\"14\" rx=\"2\"\/><path d=\"M9 7V4a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v3\"\/><line x1=\"3\" y1=\"13\" x2=\"21\" y2=\"13\"\/><\/svg>';\n                var ICON_TOOL = '<svg viewBox=\"0 0 24 24\"><path d=\"M14.7 6.3a4 4 0 1 0 5 5L21 12l-3-3 1.5-1.5L17 5l-2.3 1.3zM3 21l8-8\"\/><\/svg>';\n                var ICON_WARNING = '<svg viewBox=\"0 0 24 24\"><path d=\"m12 3 10 18H2L12 3zM12 10v5M12 18v.5\"\/><\/svg>';\n                var ICON_PROHIBIT = '<svg viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"12\" r=\"9\"\/><line x1=\"5.5\" y1=\"5.5\" x2=\"18.5\" y2=\"18.5\"\/><\/svg>';\n                var ICON_COIN = '<svg viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"12\" r=\"9\"\/><path d=\"M9 9a3 3 0 0 1 6 0c0 1.5-1 2-2 2.5s-2 1-2 2.5\"\/><line x1=\"12\" y1=\"17\" x2=\"12\" y2=\"17\"\/><\/svg>';\n                var ICON_ANTENNA = '<svg viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"20\" r=\"2\"\/><path d=\"M12 18V8M8 5l4-3 4 3M5 9l7-5 7 5\"\/><\/svg>';\n                var ICON_BOOT = '<svg viewBox=\"0 0 24 24\"><path d=\"M4 5h7a2 2 0 0 1 2 2v6h6a3 3 0 0 1 3 3v3H4V5z\"\/><line x1=\"13\" y1=\"11\" x2=\"19\" y2=\"11\"\/><\/svg>';\n                var ICON_POWDER = '<svg viewBox=\"0 0 24 24\"><path d=\"M6 8h12l-2 13a2 2 0 0 1-2 2H10a2 2 0 0 1-2-2L6 8zM6 8V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v3\"\/><\/svg>';\n                var ICON_BLANKET = '<svg viewBox=\"0 0 24 24\"><path d=\"M3 6c5-2 13-2 18 0v12c-5-2-13-2-18 0V6zM7 9v6M12 8v8M17 9v6\"\/><\/svg>';\n                var ICON_FLAME = '<svg viewBox=\"0 0 24 24\"><path d=\"M12 3c0 4-5 5-5 10a5 5 0 0 0 10 0c0-3-2-4-2-7 0 1-1 2-3 2 1-2 0-4 0-5z\"\/><\/svg>';\n                var ICON_BAG = '<svg viewBox=\"0 0 24 24\"><path d=\"M5 7h14l-1 14H6L5 7zM9 7V5a3 3 0 0 1 6 0v2\"\/><\/svg>';\n                var ICON_TAG = '<svg viewBox=\"0 0 24 24\"><path d=\"M20 12 12 4H4v8l8 8 8-8z\"\/><circle cx=\"8\" cy=\"8\" r=\"1.5\"\/><\/svg>';\n                var ICON_CAR = '<svg viewBox=\"0 0 24 24\"><path d=\"M5 17H3v-5l3-5h12l3 5v5h-2\"\/><circle cx=\"7\" cy=\"17\" r=\"2\"\/><circle cx=\"17\" cy=\"17\" r=\"2\"\/><\/svg>';\n                var ICON_FISH = '<svg viewBox=\"0 0 24 24\"><path d=\"M3 12c4-5 10-6 14-3l4-3-2 6 2 6-4-3c-4 3-10 2-14-3z\"\/><circle cx=\"9\" cy=\"11\" r=\"1\"\/><\/svg>';\n                var ICON_CAN = '<svg viewBox=\"0 0 24 24\"><ellipse cx=\"12\" cy=\"5\" rx=\"7\" ry=\"2\"\/><path d=\"M5 5v14c0 1 3 2 7 2s7-1 7-2V5\"\/><\/svg>';\n                var ICON_SOFA = '<svg viewBox=\"0 0 24 24\"><path d=\"M3 11v4a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-4M3 11V8a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v3M3 11h18M5 17v3M19 17v3\"\/><\/svg>';\n                var ICON_ROBOT = '<svg viewBox=\"0 0 24 24\"><rect x=\"4\" y=\"8\" width=\"16\" height=\"12\" rx=\"2\"\/><circle cx=\"9\" cy=\"14\" r=\"1\"\/><circle cx=\"15\" cy=\"14\" r=\"1\"\/><path d=\"M12 4v4M9 4h6\"\/><\/svg>';\n                var ICON_LUNCHBOX = '<svg viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"8\" width=\"18\" height=\"13\" rx=\"2\"\/><path d=\"M8 8V5a4 4 0 0 1 8 0v3M3 14h18\"\/><\/svg>';\n\n                var ICON = {\n                    5:ICON_PILL, 71:ICON_BOTTLE, 4:ICON_FORK, 7:ICON_BOTTLE, 18:ICON_SHIRT,\n                    22:ICON_LAPTOP, 8:ICON_BATTERY, 25:ICON_WARNING, 13:ICON_BABY_BOTTLE, 259:ICON_BABY_BOTTLE,\n                    30:ICON_BOOK, 9:ICON_SPARKLE, 23:ICON_WINE, 20:ICON_PACKAGE, 21:ICON_GEM,\n                    10:ICON_FISH, 12:ICON_CAN, 28:ICON_BOTTLE, 102:ICON_TOOL, 26:ICON_CAR,\n                    14:ICON_PACKAGE, 19:ICON_POWDER, 123:ICON_PILL, 172:ICON_SUITCASE, 127:ICON_BLANKET,\n                    11:ICON_BAG, 73:ICON_WARNING, 15:ICON_PROHIBIT, 128:ICON_BATTERY, 24:ICON_TAG,\n                    65:ICON_COIN, 141:ICON_ANTENNA, 187:ICON_BOOT, 29:ICON_FLAME, 36:ICON_LUNCHBOX,\n                    76:ICON_SOFA, 96:ICON_ROBOT\n                };\n\n                var tagsRoot = $(el,'[data-role=\"tags\"]');\n                tagsRoot.innerHTML = '<div class=\"ebg-calc__tags-loading\"><svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"display:inline-block;vertical-align:-3px;margin-right:6px\"><path d=\"M6 2h12v6l-6 4 6 4v6H6v-6l6-4-6-4z\"\/><\/svg> \u52a0\u8f7d\u4e2d\u2026<\/div>';\n\n                function showTagError(msg){\n                    tagsRoot.innerHTML = '<div class=\"ebg-calc__tags-loading\" style=\"color:#ef4444;padding:14px;text-align:center\"><div style=\"margin-bottom:8px\"><svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"display:inline-block;vertical-align:-3px;margin-right:6px\"><path d=\"M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z\"\/><line x1=\"12\" y1=\"9\" x2=\"12\" y2=\"13\"\/><line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"\/><\/svg> ' + msg + '<\/div><button type=\"button\" data-role=\"retry-tags\" style=\"padding:8px 16px;background:#116ebf;color:#fff;border:0;border-radius:6px;cursor:pointer;font-size:13px\">\u70b9\u51fb\u91cd\u8bd5 \/ Retry<\/button><\/div>';\n                    var rt = $(el,'[data-role=\"retry-tags\"]');\n                    if (rt) rt.addEventListener('click', function(){ loadTags(); });\n                }\n                fetchJSON('\/tags?store_id=' + cfg.storeId + '&language=' + (cfg.apiLang || 'cn')).then(function(res){\n                    var tags = (res && res.data && res.data.length) ? res.data : [];\n                    if (!tags.length) {\n                        showTagError((res && res.msg) ? ('API: ' + res.msg) : '\u65e0\u6cd5\u52a0\u8f7d\u7269\u54c1\u7c7b\u578b \/ Cannot load item categories');\n                        return;\n                    }\n                    tagsRoot.innerHTML = '';\n                    state.allApiTags = tags;\n                    tags.forEach(function(t){\n                        var card = document.createElement('div');\n                        card.className = 'ebg-calc__tag';\n                        card.setAttribute('data-tagid', t.tags_id);\n                        card.setAttribute('data-tagname', t.name);\n                        card.setAttribute('role', 'button');\n                        card.setAttribute('tabindex', '0');\n                        var icon = ICON[t.tags_id] || ICON_PACKAGE;\n                        var dispName = normTagEN(t.name, cfg.apiLang === 'en');\n                        card.innerHTML = '<span class=\"ebg-calc__tag-icon\">' + icon + '<\/span>' +\n                                         '<span class=\"ebg-calc__tag-name\">' + escHtml(dispName) + '<\/span>';\n                        card.addEventListener('click', function(){ selectTag(t); });\n                        card.addEventListener('keydown', function(e){\n                            if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); selectTag(t); }\n                        });\n                        tagsRoot.appendChild(card);\n                    });\n                    renderDimPresets();\n                }).catch(function(err){\n                    showTagError('\u7f51\u7edc\u9519\u8bef Network error: ' + (err && err.message ? err.message : 'unknown'));\n                });\n            }\n\n            function renderDimPresets(){\n                var presetRoot = $(el,'[data-role=\"dim-presets\"]');\n                if (!presetRoot) return;\n                var isEn = cfg.apiLang === 'en';\n                \/\/ Box-outline SVG icons \u2014 sized to suggest the package volume visually\n                var SIZE_ICONS = {\n                    tiny:    '<svg viewBox=\"0 0 32 24\" width=\"32\" height=\"24\"><rect x=\"11\" y=\"9\" width=\"10\" height=\"9\" rx=\"1\"\/><\/svg>',\n                    small:   '<svg viewBox=\"0 0 32 24\" width=\"32\" height=\"24\"><rect x=\"9\" y=\"6\" width=\"14\" height=\"12\" rx=\"1\"\/><\/svg>',\n                    shoe:    '<svg viewBox=\"0 0 32 24\" width=\"32\" height=\"24\"><rect x=\"5\" y=\"9\" width=\"22\" height=\"9\" rx=\"1\"\/><\/svg>',\n                    medium:  '<svg viewBox=\"0 0 32 24\" width=\"32\" height=\"24\"><rect x=\"7\" y=\"4\" width=\"18\" height=\"16\" rx=\"1\"\/><\/svg>',\n                    large:   '<svg viewBox=\"0 0 32 24\" width=\"32\" height=\"24\"><rect x=\"4\" y=\"2\" width=\"24\" height=\"20\" rx=\"1\"\/><\/svg>',\n                    luggage: '<svg viewBox=\"0 0 32 24\" width=\"32\" height=\"24\"><rect x=\"6\" y=\"5\" width=\"20\" height=\"16\" rx=\"2\"\/><path d=\"M13 5V3a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2\"\/><line x1=\"6\" y1=\"12\" x2=\"26\" y2=\"12\"\/><\/svg>',\n                };\n                var SIZES = [\n                    {k:'tiny',    n: isEn?'Tiny':'\u8ff7\u4f60',     w:0.3,  l:12,  W:8,   h:6},\n                    {k:'small',   n: isEn?'Small':'\u5c0f\u76d2',    w:1.5,  l:25,  W:20,  h:15},\n                    {k:'shoe',    n: isEn?'Shoe':'\u978b\u76d2',     w:2,    l:32,  W:22,  h:12},\n                    {k:'medium',  n: isEn?'Medium':'\u4e2d\u7bb1',   w:6,    l:40,  W:30,  h:25},\n                    {k:'large',   n: isEn?'Large':'\u5927\u7bb1',    w:15,   l:60,  W:45,  h:40},\n                    {k:'luggage', n: isEn?'Luggage':'\u884c\u674e\u7bb1', w:20,   l:65,  W:45,  h:30}\n                ];\n                presetRoot.innerHTML = '';\n                SIZES.forEach(function(p){\n                    var btn = document.createElement('button');\n                    btn.type = 'button';\n                    btn.className = 'ebg-calc__dim-preset';\n                    btn.innerHTML = '<span class=\"ebg-calc__dim-preset-icon\">' + (SIZE_ICONS[p.k] || '') + '<\/span>' +\n                                    '<span class=\"ebg-calc__dim-preset-name\">' + p.n + '<\/span>' +\n                                    '<span class=\"ebg-calc__dim-preset-weight\">' + p.w + ' kg<\/span>';\n                    btn.addEventListener('click', function(){\n                        $(el,'[data-role=\"weight\"]').value = p.w;\n                        $(el,'[data-role=\"length\"]').value = p.l;\n                        $(el,'[data-role=\"width\"]').value = p.W;\n                        $(el,'[data-role=\"height\"]').value = p.h;\n                        $$(el,'.ebg-calc__dim-preset').forEach(function(b){ b.classList.remove('is-active'); });\n                        btn.classList.add('is-active');\n                    });\n                    presetRoot.appendChild(btn);\n                });\n            }\n\n            function selectTag(t){\n                state.tagId = t.tags_id;\n                state.tagName = t.name;\n                $$(el,'.ebg-calc__tag').forEach(function(n){\n                    n.classList.toggle('is-active', n.getAttribute('data-tagname') === t.name);\n                });\n            }\n\n            function loadStates(){\n                fetchJSON('\/states?country_id=' + cfg.destCid).then(function(res){\n                    var sel = $(el,'[data-role=\"state\"]');\n                    sel.innerHTML = '';\n                    if (!res || res.code !== 200 || !res.data || !res.data.length) {\n                        var o = document.createElement('option');\n                        o.value = ''; o.textContent = '\u2014';\n                        sel.appendChild(o);\n                        return;\n                    }\n                    state.states = res.data;\n                    var ph = document.createElement('option');\n                    ph.value = ''; ph.textContent = (cfg.i18n && cfg.i18n.select_state) ? cfg.i18n.select_state : '\u2014 Select \u2014';\n                    sel.appendChild(ph);\n                    res.data.forEach(function(s){\n                        var o = document.createElement('option');\n                        o.value = s.id; o.textContent = s.name;\n                        sel.appendChild(o);\n                    });\n                });\n            }\n\n            function calculate(){\n                var weight = parseFloat($(el,'[data-role=\"weight\"]').value);\n                var length = parseFloat($(el,'[data-role=\"length\"]').value);\n                var width  = parseFloat($(el,'[data-role=\"width\"]').value);\n                var height = parseFloat($(el,'[data-role=\"height\"]').value);\n                var postcode = $(el,'[data-role=\"postcode\"]').value.trim();\n                var stateId  = $(el,'[data-role=\"state\"]').value;\n                var suburb   = $(el,'[data-role=\"suburb\"]').value.trim();\n                var declare  = parseFloat($(el,'[data-role=\"declare\"]').value) || 0;\n\n                if (!state.tagId) { setStatus('Please select a package category.', 'error'); return; }\n                if (!weight || !length || !width || !height) { setStatus('Please fill in weight and dimensions.', 'error'); return; }\n                \/\/ postcode no longer blocks submit \u2014 many lanes (AusPost etc.) compute rates from state alone\n                if (!stateId) { setStatus((cfg.i18n && cfg.i18n.pc_missing_state) || 'Please select a state\/region.', 'error'); return; }\n\n                var payload = {\n                    area: '0',\n                    country_id: cfg.destCid,\n                    country_id_from: cfg.originCid,\n                    store_id: cfg.storeId,\n                    language: cfg.apiLang || 'cn',  \/\/ api expects cn\/tw\/en, NOT zh\/zh-Hant (causes 500)\n                    declare_value: declare || '',   \/\/ empty string when 0, matches cal payload\n                    currency_id: cfg.currencyId || 3,  \/\/ warehouse default currency (3=AUD, 4=MYR, 55=CNY, etc.)\n                    weight_unit: 'kg',\n                    length_unit: 'cm',\n                    postcode: postcode,\n                    state: stateId,\n                    suburb: suburb,\n                    package: [{\n                        qty: 1,\n                        weight: weight,\n                        length: length,\n                        width: width,\n                        height: height,\n                        tags_ids: state.tagId\n                    }]\n                };\n\n                var btn = $(el,'[data-role=\"submit\"]');\n                btn.disabled = true;\n                setStatus('Calculating\u2026', 'info');\n                results.innerHTML = '';\n\n                fetchJSON('\/quote', { method: 'POST', body: payload }).then(function(res){\n                    btn.disabled = false;\n                    if (!res) { setStatus('Network error. Please try again.', 'error'); return; }\n                    if (res.code !== 200) { setStatus(res.msg || 'Calculation failed.', 'error'); return; }\n                    var list = res.data || [];\n                    if (!list.length) { setStatus('No shipping options available for this route.', 'info'); return; }\n                    setStatus('');\n                    renderResults(list);\n                }).catch(function(){\n                    btn.disabled = false;\n                    setStatus('Cannot reach calculator. Please try again later or visit cal.ebaoguo.com.', 'error');\n                });\n            }\n\n            function renderResults(list){\n                var isEnLang = (cfg.apiLang === 'en');\n                var RL = (function(L){\n                    var d={\n                      en:{ship:'Shipping',pickup:'Pickup',handling:'Handling',warehouse:'Warehouse',fumigation:'Fumigation',extrasvc:'Extra Service',surcharge:'Surcharge',tax:'Tax Fee',commission:'Commission',billing:'Billing',total:'Total',dutytax:'Duty & Tax',estduty:'Est. Import Duty',esttax:'Est. Import Tax',taxnotes:'Tax Notes',recipient:'payable by recipient',limits:'Limits',maxwt:'Max weight',maxlen:'Max length',girth:'Length+girth \\u2264',maxdeclare:'Max declared',insurance:'Insurance',insOpt:'Optional insurance',insFree:'free basic cover',insMin:'min charge'},\n                      cn:{ship:'\\u8fd0\\u8d39',pickup:'\\u4e0a\\u95e8\\u53d6\\u4ef6\\u8d39',handling:'\\u5904\\u7406\\u8d39',warehouse:'\\u5165\\u4ed3\/\\u64cd\\u4f5c\\u8d39',fumigation:'\\u7194\\u84b8\\u8d39',extrasvc:'\\u9644\\u52a0\\u670d\\u52a1\\u8d39',surcharge:'\\u989d\\u5916\\u8d39\\u7528',tax:'\\u7a0e\\u8d39',commission:'\\u4f63\\u91d1',billing:'\\u8ba1\\u8d39',total:'\\u5408\\u8ba1',dutytax:'\\u5173\\u7a0e\/\\u7a0e\\u8d39',estduty:'\\u9884\\u4f30\\u8fdb\\u53e3\\u5173\\u7a0e',esttax:'\\u9884\\u4f30\\u8fdb\\u53e3\\u7a0e',taxnotes:'\\u5173\\u7a0e\\u8bf4\\u660e',recipient:'\\u6536\\u4ef6\\u4eba\\u4ed8',limits:'\\u9650\\u5236',maxwt:'\\u5355\\u4ef6\\u6700\\u91cd',maxlen:'\\u6700\\u957f\\u8fb9',girth:'\\u957f+\\u56f4 \\u2264',maxdeclare:'\\u7533\\u62a5\\u4e0a\\u9650',insurance:'\\u4fdd\\u9669',insOpt:'\\u53ef\\u9009\\u4fdd\\u9669',insFree:'\\u514d\\u8d39\\u57fa\\u7840\\u4fdd\\u969c',insMin:'\\u8d77\\u6295'},\n                      tw:{ship:'\\u904b\\u8cbb',pickup:'\\u4e0a\\u9580\\u53d6\\u4ef6\\u8cbb',handling:'\\u8655\\u7406\\u8cbb',warehouse:'\\u5165\\u5009\/\\u64cd\\u4f5c\\u8cbb',fumigation:'\\u71fb\\u84b8\\u8cbb',extrasvc:'\\u9644\\u52a0\\u670d\\u52d9\\u8cbb',surcharge:'\\u984d\\u5916\\u8cbb\\u7528',tax:'\\u7a05\\u8cbb',commission:'\\u4f63\\u91d1',billing:'\\u8a08\\u8cbb',total:'\\u5408\\u8a08',dutytax:'\\u95dc\\u7a05\/\\u7a05\\u8cbb',estduty:'\\u9810\\u4f30\\u9032\\u53e3\\u95dc\\u7a05',esttax:'\\u9810\\u4f30\\u9032\\u53e3\\u7a05',taxnotes:'\\u95dc\\u7a05\\u8aaa\\u660e',recipient:'\\u6536\\u4ef6\\u4eba\\u4ed8',limits:'\\u9650\\u5236',maxwt:'\\u55ae\\u4ef6\\u6700\\u91cd',maxlen:'\\u6700\\u9577\\u908a',girth:'\\u9577+\\u570d \\u2264',maxdeclare:'\\u7533\\u5831\\u4e0a\\u9650',insurance:'\\u4fdd\\u96aa',insOpt:'\\u53ef\\u9078\\u4fdd\\u96aa',insFree:'\\u514d\\u8cbb\\u57fa\\u790e\\u4fdd\\u969c',insMin:'\\u8d77\\u6295'}\n                    };\n                    return d[L]||d.cn;\n                })(cfg.apiLang);\n                function feeName(apiName, fallback){ if(apiName){ if(isEnLang && \/[\\u4e00-\\u9fff]\/.test(apiName)) return fallback; return apiName; } return fallback; }\n                results.innerHTML = '';\n                list.forEach(function(item){\n                    var card = document.createElement('div');\n                    card.className = 'ebg-calc__card-v2' + (item.unableSelect ? ' is-disabled' : '');\n                    var logo = item.logo ? '<img decoding=\"async\" src=\"'+escAttr(item.logo)+'\" alt=\"\" style=\"max-width:60px;max-height:40px;object-fit:contain\">' : '';\n                    var meta = [];\n                    if (item.duration) meta.push('\\u{1F69A} '+escHtml(item.duration));\n                    if (item.dispatch_date) meta.push('\\u{1F4C5} '+escHtml(item.dispatch_date));\n                    if (item.transport_type) meta.push(escHtml(item.transport_type));\n                    if (item.weight_calc_type_text) meta.push(RL.billing+': '+escHtml(item.weight_calc_type_text));\n                    var warn = '';\n                    if (item.unableSelect && item.unableSelectReason) warn = '<div class=\"ebg-calc__card-warn\"><svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"display:inline-block;vertical-align:-3px;margin-right:6px\"><path d=\"M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z\"\/><line x1=\"12\" y1=\"9\" x2=\"12\" y2=\"13\"\/><line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"\/><\/svg> '+escHtml(item.unableSelectReason)+'<\/div>';\n\n                    \/\/ ========== TRANSPARENT FEE BREAKDOWN (all API fields, nothing hidden) ==========\n                    var currency = item.currency_name || '';\n                    var rows = [];\n\n                    \/\/ 1. Shipping subtotal\n                    var subtotal = item.estimation_sub || (item.parcel_cost && item.parcel_cost[0] ? item.parcel_cost[0].chargeable_cost : null);\n                    if (subtotal) rows.push({label:RL.ship, amount: subtotal});\n\n                    \/\/ 2. Pickup cost (\u4e0a\u95e8\u53d6\u4ef6\u8d39)\n                    if (item.pickup_cost && parseFloat(item.pickup_cost) > 0) {\n                      rows.push({label:RL.pickup, amount: item.pickup_cost});\n                    }\n\n                    \/\/ 3. Fulfillment \/ Handling fee\n                    if (item.fullfillment_fee && parseFloat(item.fullfillment_fee) > 0) {\n                      var ff = item.fullfillment_fee_detail && item.fullfillment_fee_detail[0];\n                      var ffName = feeName(ff && ff.name, RL.handling);\n                      rows.push({label: ffName, amount: item.fullfillment_fee});\n                    }\n\n                    \/\/ 4. Warehouse handling fee (\u5165\u4ed3\u8d39)\n                    if (item.warehouse_handling_fee && parseFloat(item.warehouse_handling_fee) > 0) {\n                      var wh = item.warehouse_handling_fee_detail && item.warehouse_handling_fee_detail[0];\n                      var whName = feeName(wh && wh.name, RL.warehouse);\n                      rows.push({label: whName, amount: item.warehouse_handling_fee});\n                    }\n\n                    \/\/ 5. Fumigation fee\n                    if (item.fumigation_fee && parseFloat(item.fumigation_fee) > 0) {\n                      rows.push({label:RL.fumigation, amount: item.fumigation_fee});\n                    }\n\n                    \/\/ 6. Parcel extra service fee\n                    if (item.parcelExtraServiceFee && parseFloat(item.parcelExtraServiceFee) > 0) {\n                      rows.push({label:RL.extrasvc, amount: item.parcelExtraServiceFee});\n                    }\n\n                    \/\/ 7. Extra fee (route-specific surcharges \u2014 was previously hidden!)\n                    if (item.extra_fee && parseFloat(item.extra_fee) > 0) {\n                      var ef = item.extra_fee_detail && item.extra_fee_detail[0];\n                      var efName = feeName(ef && ef.name, RL.surcharge);\n                      rows.push({label: efName, amount: item.extra_fee});\n                    }\n                    \/\/ Also handle if extra_fee_detail has multiple entries\n                    if (item.extra_fee_detail && item.extra_fee_detail.length > 1) {\n                      for (var ei = 1; ei < item.extra_fee_detail.length; ei++) {\n                        var ed = item.extra_fee_detail[ei];\n                        if (ed && ed.amount && parseFloat(ed.amount) > 0) {\n                          rows.push({label: feeName(ed.name, RL.surcharge), amount: ed.amount});\n                        }\n                      }\n                    }\n\n                    \/\/ 8. Tax fee (independent of include_tax_note \u2014 was hidden!)\n                    if (item.tax_fee && parseFloat(item.tax_fee) > 0) {\n                      var tf = item.tax_fee_detail && item.tax_fee_detail[0];\n                      var tfName = feeName(tf && tf.name, RL.tax);\n                      rows.push({label: tfName, amount: item.tax_fee});\n                    }\n\n                    \/\/ 9. Commission (was hidden!)\n                    if (item.commission && parseFloat(item.commission) > 0) {\n                      rows.push({label:RL.commission, amount: item.commission});\n                    }\n\n                    \/\/ ========== TAX\/CUSTOMS notes (informational, not summed into total) ==========\n                    var taxNote = item.include_tax_note || '';\n                    var taxRows = [];\n                    if (taxNote) {\n                      var taxColor = (taxNote.indexOf('\u5305\u542b') >= 0 || taxNote.indexOf('Inc') >= 0) ? '#16a34a' : '#dc2626';\n                      taxRows.push({label:RL.dutytax, value: taxNote, color: taxColor});\n                    }\n                    \/\/ Estimated import duty (was hidden!)\n                    if (item.estimated_import_duty && parseFloat(item.estimated_import_duty) > 0) {\n                      taxRows.push({label:RL.estduty, value: currency + ' ' + item.estimated_import_duty + ' (' + RL.recipient + ')', color: '#dc2626'});\n                    }\n                    if (item.estimated_import_tax && parseFloat(item.estimated_import_tax) > 0) {\n                      taxRows.push({label:RL.esttax, value: currency + ' ' + item.estimated_import_tax + ' (' + RL.recipient + ')', color: '#dc2626'});\n                    }\n                    if (item.estimated_import_duty_tax_description) {\n                      taxRows.push({label:RL.taxnotes, value: item.estimated_import_duty_tax_description, color: '#6b7280'});\n                    }\n\n                    \/\/ ========== COURIER LIMITS (so users know constraints upfront) ==========\n                    var limitInfo = '';\n                    if (item.courier_limit) {\n                      var cl = item.courier_limit;\n                      var limits = [];\n                      if (cl.maximum_weight && parseFloat(cl.maximum_weight) > 0) limits.push(RL.maxwt + ' ' + cl.maximum_weight + 'kg');\n                      if (cl.maximum_length && parseFloat(cl.maximum_length) > 0) limits.push(RL.maxlen + ' ' + cl.maximum_length + 'cm');\n                      if (cl.girth && parseFloat(cl.girth) > 0) limits.push(RL.girth + ' ' + cl.girth + 'cm');\n                      if (cl.max_declare_amount && parseFloat(cl.max_declare_amount) > 0) limits.push(RL.maxdeclare + ' ' + currency + ' ' + cl.max_declare_amount);\n                      if (limits.length) {\n                        limitInfo = '<div class=\"ebg-calc__bd-row\" style=\"color:#6b7280;font-size:12px;border-top:1px dashed #e5e7eb;padding-top:6px;margin-top:6px\"><span><svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"display:inline-block;vertical-align:-3px;margin-right:6px\"><path d=\"M21.3 8.7c-.4-.4-1-.4-1.4 0L13 15.5l-4.5-4.5 6.8-6.9c.4-.4.4-1 0-1.4-.4-.4-1-.4-1.4 0L8 9.6 4.4 6c-.4-.4-1-.4-1.4 0-.4.4-.4 1 0 1.4l14 14c.4.4 1 .4 1.4 0 .4-.4.4-1 0-1.4l-3.5-3.5 6.9-6.9c.4-.4.4-1 0-1.4z\"\/><\/svg> ' + RL.limits + '<\/span><span>' + escHtml(limits.join(' \u00b7 ')) + '<\/span><\/div>';\n                      }\n                    }\n\n                    \/\/ ========== INSURANCE NOTICE (so users know they CAN insure) ==========\n                    var insInfo = '';\n                    if (item.insurance_percentage && parseFloat(item.insurance_percentage) > 0) {\n                      var insText = RL.insOpt + ' ' + item.insurance_percentage + '% (max ' + currency + ' ' + (item.max_insurance || '?') + ')';\n                      if (item.free_insurance && parseFloat(item.free_insurance) > 0) {\n                        insText += ' \u00b7 ' + RL.insFree + ' ' + currency + ' ' + item.free_insurance;\n                      }\n                      if (item.min_insurance_charge && parseFloat(item.min_insurance_charge) > 0) {\n                        insText += ' \u00b7 ' + RL.insMin + ' ' + currency + ' ' + item.min_insurance_charge;\n                      }\n                      insInfo = '<div class=\"ebg-calc__bd-row\" style=\"color:#0369a1;font-size:12px\"><span><svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"display:inline-block;vertical-align:-3px;margin-right:6px\"><path d=\"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z\"\/><\/svg> ' + RL.insurance + '<\/span><span>' + escHtml(insText) + '<\/span><\/div>';\n                    }\n\n                    \/\/ ========== Build breakdown HTML ==========\n                    var bdHtml = '';\n                    rows.forEach(function(r){\n                      bdHtml += '<div class=\"ebg-calc__bd-row\"><span>' + escHtml(r.label) + '<\/span><span>' + escHtml(currency) + ' ' + escHtml(r.amount) + '<\/span><\/div>';\n                    });\n                    taxRows.forEach(function(t){\n                      bdHtml += '<div class=\"ebg-calc__bd-row\" style=\"color:' + t.color + ';font-size:13px\"><span>' + escHtml(t.label) + '<\/span><span>' + escHtml(t.value) + '<\/span><\/div>';\n                    });\n                    if (limitInfo) bdHtml += limitInfo;\n                    if (insInfo) bdHtml += insInfo;\n\n                    card.innerHTML =\n                      '<div class=\"ebg-calc__card-head\">' +\n                        '<div class=\"ebg-calc__card-head-left\">' + logo +\n                          '<div><div class=\"ebg-calc__card-title\">'+escHtml(item.name||'')+'<\/div>' +\n                          '<div class=\"ebg-calc__card-meta\">'+meta.join(' \u00b7 ')+'<\/div>' +\n                          warn + '<\/div>' +\n                        '<\/div>' +\n                        '<div class=\"ebg-calc__card-total\"><div class=\"ebg-calc__card-total-label\">'+RL.total+'<\/div><div class=\"ebg-calc__card-total-amount\">'+escHtml(currency)+' '+escHtml(item.estimation||'-')+'<\/div><\/div>' +\n                      '<\/div>' +\n                      (bdHtml ? '<div class=\"ebg-calc__breakdown\">'+bdHtml+'<\/div>' : '');\n                    results.appendChild(card);\n                });\n            }\n\n            function escHtml(s){ return String(s==null?'':s).replace(\/[&<>\"']\/g, function(c){return {'&':'&amp;','<':'&lt;','>':'&gt;','\"':'&quot;',\"'\":'&#39;'}[c];}); }\n            function escAttr(s){ return escHtml(s); }\n\n            $(el,'[data-role=\"submit\"]').addEventListener('click', calculate);\n            loadTags();\n            loadStates();\n\n            \/\/ Postcode \u2192 auto state + suburb suggestion (debounced)\n            var pcInput = $(el,'[data-role=\"postcode\"]');\n            var subInput = $(el,'[data-role=\"suburb\"]');\n            var stateSel = $(el,'[data-role=\"state\"]');\n            var pcTimer = null;\n            var pcHint = $(el,'[data-role=\"pc-hint\"]');\n            function lookupPostcode(){\n                var pc = (pcInput.value || '').trim();\n                if (pc.length < 3) { if (pcHint) pcHint.style.display = 'none'; return; }\n                fetchJSON('\/postcode?country_id=' + cfg.destCid + '&postcode=' + encodeURIComponent(pc)).then(function(res){\n                    if (!res || res.code !== 200 || !res.data || !res.data.length) {\n                        \/\/ Postcode not in API DB \u2014 show hint user can still pick state manually\n                        if (pcHint) {\n                            pcHint.textContent = (cfg.i18n && cfg.i18n.pc_unfound) || 'Postcode not recognised \u2014 please pick State manually';\n                            pcHint.style.display = 'block';\n                        }\n                        return;\n                    }\n                    if (pcHint) pcHint.style.display = 'none';\n                    var first = res.data[0];\n                    \/\/ Set state by state_id\n                    if (first.state_id && stateSel) {\n                        for (var i = 0; i < stateSel.options.length; i++) {\n                            if (String(stateSel.options[i].value) === String(first.state_id)) {\n                                stateSel.value = String(first.state_id);\n                                break;\n                            }\n                        }\n                    }\n                    \/\/ Auto-fill suburb if empty\n                    if (subInput && !subInput.value && first.name) {\n                        subInput.value = first.name;\n                    }\n                });\n            }\n            if (pcInput) {\n                pcInput.addEventListener('input', function(){\n                    clearTimeout(pcTimer);\n                    pcTimer = setTimeout(lookupPostcode, 400);\n                });\n                pcInput.addEventListener('blur', lookupPostcode);\n            }\n        }\n\n        \/\/ Expose init for dynamically-injected calcs (e.g. ebg_calc_universal)\n        window.__ebgCalcInitFn = function(el){ if (!el.__ebgInit) { el.__ebgInit = true; init(el); } };\n\n        function lazyInit(){\n            var nodes = document.querySelectorAll('.ebg-calc');\n            if (!('IntersectionObserver' in window)) {\n                \/\/ Fallback: init immediately on old browsers\n                nodes.forEach(function(el){ if (!el.__ebgInit) { el.__ebgInit = true; init(el); } });\n                return;\n            }\n            var io = new IntersectionObserver(function(entries){\n                entries.forEach(function(e){\n                    if (e.isIntersecting && !e.target.__ebgInit) {\n                        e.target.__ebgInit = true;\n                        init(e.target);\n                        io.unobserve(e.target);\n                    }\n                });\n            }, { rootMargin: '200px 0px' });\n            nodes.forEach(function(el){ io.observe(el); });\n        }\n        if (document.readyState === 'loading') {\n            document.addEventListener('DOMContentLoaded', lazyInit);\n        } else {\n            lazyInit();\n        }\n    })();\n    <\/script>\n    \n\n\n\n<div style=\"max-width:880px;margin:16px auto 0;padding:0 24px\">\n<div style=\"display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:24px\">\n<div style=\"background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px\"><div style=\"font-size:22px;margin-bottom:6px\">\ud83c\udfed<\/div><div style=\"font-weight:700;font-size:14px;color:#0f172a;margin-bottom:4px\">8 \u500b\u5168\u7403\u5009\u5eab<\/div><div style=\"font-size:13px;color:#64748b\">\u6fb3\u6d32 \u00b7 \u4e2d\u570b \u00b7 \u99ac\u4f86\u897f\u4e9e \u00b7 \u65e5\u672c \u00b7 \u53f0\u7063 \u00b7 \u9999\u6e2f \u00b7 \u7d10\u897f\u862d \u00b7 \u7f8e\u570b<\/div><\/div>\n<div style=\"background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px\"><div style=\"font-size:22px;margin-bottom:6px\">\ud83c\udf0d<\/div><div style=\"font-weight:700;font-size:14px;color:#0f172a;margin-bottom:4px\">15+ \u76ee\u7684\u570b\u5bb6<\/div><div style=\"font-size:13px;color:#64748b\">\u6771\u5357\u4e9e \u00b7 \u6771\u5317\u4e9e \u00b7 \u5927\u6d0b\u6d32 \u00b7 \u6b50\u7f8e \u00b7 \u4e2d\u570b\u5927\u9678 \u00b7 \u6e2f\u53f0<\/div><\/div>\n<div style=\"background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px\"><div style=\"font-size:22px;margin-bottom:6px\">\ud83d\udcb0<\/div><div style=\"font-weight:700;font-size:14px;color:#0f172a;margin-bottom:4px\">\u5b8c\u6574\u8cbb\u7528\u62c6\u5206<\/div><div style=\"font-size:13px;color:#64748b\">\u904b\u8cbb + \u71c3\u6cb9 + \u8655\u7406\u8cbb + \u7a05\u91d1\u4f30\u7b97\uff0c\u5168\u90e8\u986f\u793a<\/div><\/div>\n<\/div>\n<p style=\"font-size:13px;color:#94a3b8;text-align:center;margin:0 0 40px\">\u5831\u50f9\u50c5\u4f9b\u53c3\u8003\uff0c\u5be6\u969b\u8cbb\u7528\u4ee5\u4e0b\u55ae\u6642\u70ba\u6e96 \u00b7 <a href=\"https:\/\/dashboard.ebaoguo.com\/register\" style=\"color:#116ebf\" target=\"_blank\" rel=\"noopener\">\u514d\u8cbb\u8a3b\u518a<\/a>\u7372\u53d6\u5009\u5eab\u5730\u5740<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Ebaoguo \u00b7 \u5168\u7403\u5009\u5eab\u767c\u8ca8 \u570b\u969b\u904b [&hellip;]<\/p>\n","protected":false},"author":0,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"acf":[],"spectra_custom_meta":{"_betterdocs_reusable_block_ids":["a:0:{}"],"_uag_css_file_name":["uag-css-43765.css"],"_ebg_geo_score":["15"],"_ebg_geo_details":["a:10:{s:12:\"answer_first\";b:0;s:7:\"has_faq\";b:0;s:8:\"has_list\";b:0;s:9:\"ext_links\";i:1;s:9:\"int_links\";i:0;s:10:\"word_count\";i:170;s:6:\"has_h2\";b:1;s:7:\"has_img\";b:0;s:8:\"rm_title\";b:0;s:7:\"rm_desc\";b:0;}"],"_ebg_geo_scored_at":["1783063878"],"_uag_page_assets":["a:9:{s:3:\"css\";s:260:\".uag-blocks-common-selector{z-index:var(--z-index-desktop) !important}@media(max-width: 976px){.uag-blocks-common-selector{z-index:var(--z-index-tablet) !important}}@media(max-width: 767px){.uag-blocks-common-selector{z-index:var(--z-index-mobile) !important}}\";s:2:\"js\";s:0:\"\";s:18:\"current_block_list\";a:2:{i:0;s:9:\"core\/html\";i:1;s:14:\"core\/shortcode\";}s:8:\"uag_flag\";b:0;s:11:\"uag_version\";s:10:\"1783300506\";s:6:\"gfonts\";a:0:{}s:10:\"gfonts_url\";s:0:\"\";s:12:\"gfonts_files\";a:0:{}s:14:\"uag_faq_layout\";b:0;}"]},"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"ctl_avatar":false,"1536x1536":false,"2048x2048":false,"betterdocs-category-thumb":false},"uagb_author_info":{"display_name":"","author_link":"https:\/\/ebaoguo.cn\/zh-hant\/author\/"},"uagb_comment_info":0,"uagb_excerpt":"Ebaoguo \u00b7 \u5168\u7403\u5009\u5eab\u767c\u8ca8 \u570b\u969b\u904b [&hellip;]","_links":{"self":[{"href":"https:\/\/ebaoguo.cn\/zh-hant\/wp-json\/wp\/v2\/pages\/43765"}],"collection":[{"href":"https:\/\/ebaoguo.cn\/zh-hant\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ebaoguo.cn\/zh-hant\/wp-json\/wp\/v2\/types\/page"}],"replies":[{"embeddable":true,"href":"https:\/\/ebaoguo.cn\/zh-hant\/wp-json\/wp\/v2\/comments?post=43765"}],"version-history":[{"count":0,"href":"https:\/\/ebaoguo.cn\/zh-hant\/wp-json\/wp\/v2\/pages\/43765\/revisions"}],"wp:attachment":[{"href":"https:\/\/ebaoguo.cn\/zh-hant\/wp-json\/wp\/v2\/media?parent=43765"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}