{"id":2175,"date":"2026-04-23T19:45:06","date_gmt":"2026-04-23T09:45:06","guid":{"rendered":"https:\/\/www.hashmicro.com\/au\/blog\/?p=2175"},"modified":"2026-05-05T16:46:59","modified_gmt":"2026-05-05T06:46:59","slug":"just-in-time-inventory","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/","title":{"rendered":"Just in Time Inventory: How It Works and Why It Matters"},"content":{"rendered":"<p data-start=\"89\" data-end=\"321\">Just in time inventory management helps businesses reduce excess stock and keep operations lean. Instead of storing large quantities, companies receive goods only when needed. As a result, they free up cash and reduce storage costs.<\/p>\n<p data-start=\"323\" data-end=\"530\">This approach reflects <a href=\"https:\/\/www.hashmicro.com\/au\/blog\/best-inventory-software\/\">Australian modern stock solutions<\/a>, shifting inventory from a static asset into a continuous flow. Materials arrive based on actual demand, not forecasts. Therefore, businesses can respond faster while avoiding overstock and waste.<\/p>\n<p data-start=\"532\" data-end=\"770\">However, just in time inventory requires careful planning and strong supplier coordination. Without the right systems in place, even small delays can disrupt operations. For this reason, companies must balance efficiency with reliability.<\/p>\n<style>\r\n\t.takeaways-container {\r\n\t\tmargin: 20px 0;\r\n\t\tfont-family: sans-serif;\r\n\t}\r\n\t.box-content {\r\n\t\tbackground-color: #fffacd;\r\n\t\tbox-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);\r\n\t\tborder-radius: 25px;\r\n\t\tpadding: 25px;\r\n\t}\r\n\t.title {\r\n\t\tmargin-bottom: 20px;\r\n\t}\r\n\t.title p {\r\n\t\tdisplay: inline-block;\r\n\t\tbackground-color: #8A0E19;\r\n\t\tcolor: #ffffff;\r\n\t\tpadding: 8px 15px;\r\n\t\tborder-radius: 8px;\r\n\t\tfont-size: 22px;\r\n\t\tfont-weight: bold;\r\n\t\tmargin: 0;\r\n\t}\r\n\t.item {\r\n\t\tdisplay: flex;\r\n\t\talign-items: flex-start;\r\n\t\tmargin-bottom: 12px;\r\n\t}\r\n\t.item .circle {\r\n\t\twidth: 8px;\r\n\t\theight: 8px;\r\n\t\tbackground-color: #000000;\r\n\t\tborder-radius: 50%;\r\n\t\tmargin-right: 12px;\r\n\t\tflex-shrink: 0;\r\n\t\tmargin-top: 8px;\r\n\t}\r\n\t.item p {\r\n\t\tmargin: 0;\r\n\t\tfont-size: 16px;\r\n\t\tline-height: 1.6;\r\n\t}\r\n\t.item p a {\r\n\t\tcolor: #8A0E19;\r\n\t\tfont-weight: normal;\r\n\t\ttext-decoration: none;\r\n\t}\r\n\t.item p a:hover {\r\n\t\ttext-decoration: underline;\r\n\t}\r\n\t.button-wrapper {\r\n\t\tmargin-top: 25px;\r\n\t}\r\n\t.submit-button {\r\n\t\tbackground-color: #8a0e19;\r\n\t\tcolor: #fff !important;\r\n\t\ttransition: all .3s ease;\r\n\t\tpadding: 12px 28px;\r\n\t\tdisplay: inline-block;\r\n\t\tborder-radius: 12px;\r\n\t\tfont-size: 16px;\r\n\t\tfont-weight: bold;\r\n\t\ttext-decoration: none;\r\n\t}\r\n\t.submit-button:hover {\r\n\t\tbackground-color: #991b26;\r\n\t}\r\n\t@media (max-width: 767px) {\r\n\t\t.takeaways-container {\r\n\t\t\theight: auto;\r\n\t\t\tpadding: 0;\r\n\t\t}\r\n\t\t.box-content {\r\n\t\t\tpadding: 24px;\r\n\t\t}\r\n\t\t.content,\r\n\t\t.main-content,\r\n\t\t.list-item {\r\n\t\t\twidth: 100%;\r\n\t\t}\r\n\t}\r\n<\/style>\r\n\r\n<div class=\"takeaways-container\">\r\n\t<div class=\"box-content\">\r\n\t\t<div class=\"content\">\r\n\t\t\t<div class=\"title\">\r\n\t\t\t\t<p>Key Takeaways<\/p>\r\n\t\t\t<\/div>\r\n\t\t\t<div class=\"main-content\">\r\n\t\t\t\t<div class=\"list-item\">\r\n\t\t\t\t\t<div class=\"item\">    <div class=\"circle\"><\/div>    <p><a href=\"#what-is-just-in-time-jit-inventory\">Just in time inventory aligns stock<\/a> with real demand, helping businesses reduce excess inventory and improve cash flow.<\/p><\/div><div class=\"item\">    <div class=\"circle\"><\/div>    <p><a href=\"#the-core-idea-behind-jit\">The core idea of JIT<\/a> focuses on demand-based production, minimising inventory, and eliminating operational waste.<\/p><\/div><div class=\"item\">    <div class=\"circle\"><\/div>    <p><a href=\"#how-jit-works-across-the-supply-chain\">JIT relies on real-time data<\/a>, supplier coordination, and continuous flow to keep operations efficient and responsive.<\/p><\/div><div class=\"item\">    <div class=\"circle\"><\/div>    <p>While JIT improves efficiency, <a href=\"#the-trade-offs-of-running-lean-inventory\">businesses must manage risks such as stockouts<\/a> and supplier dependency carefully.<\/p><\/div>\t\t\t\t<\/div>\r\n\t\t\t<\/div>\r\n\t\t<\/div>\r\n\t<\/div>\r\n<\/div>\n<!-- <div id=\"toc_group_article\" style=''>\r\n\t<p style='font-size:25px;font-weight:bold; margin-bottom:0px'>\r\n\t\tTable of Content:\r\n\t<\/p>\r\n\t<ul id=\"list_toc\" class='list_toc'><\/ul>\r\n<\/div> -->\r\n\r\n<!-- <div class=\"dropdown-fixed-top\" id=\"dropdown-fixed-top\">\r\n\t<div class=\"row\">\r\n\t\t<p id=\"pilihDaftarIsi\">Table of Content<\/p>\r\n\t\t<p><i class=\"td-icon-menu-down\"><\/i><\/p>\r\n\t<\/div>\r\n\t\r\n\t<div>\r\n\t\t<ul id=\"list_toc_top\" class='list_toc'><\/ul>\r\n\t<\/div>\r\n<\/div> -->\r\n\r\n<div id=\"placeholder-toc\"><\/div>\r\n<div id=\"toc\">\r\n    <div class=\"header\">\r\n\t<span class=\"toc-title\" id=\"toc-title\">Table of Content<\/span>\t\r\n\t <i class=\"toc-icon\">\r\n        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"30\" height=\"30\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#000\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"header-icon\">\r\n          <path d=\"m6 9 6 6 6-6\" \/>\r\n        <\/svg>\r\n      <\/i>\r\n\t<\/div>\r\n    <div class=\"list\">\r\n      <ul id=\"toc-list\"><\/ul>\r\n    <\/div>\r\n <\/div>\r\n\r\n<style>\r\n\t@media (max-width: 992px) {\r\n\t\t#toc_group_article {\r\n\t\t\tpadding-top: 24px;\r\n\t\t}\r\n\t}\r\n\t\r\n\t#list_toc_float {\r\n\t\tmax-height: calc(100vh - 250px);\r\n\t\toverflow-y: auto;\r\n\t}\r\n\t\r\n\t#list_toc_top {\r\n\t\tdisplay: none;\r\n\t\tbackground: #fff;\r\n\t\tmargin-bottom: 4px;\r\n\t}\r\n\t\r\n\t#list_toc_top li {\r\n\t\tdisplay: block;\r\n\t\tmargin-left: 0;\r\n\t\tlist-style: none;\r\n\t}\r\n\t\r\n\t#list_toc_top a {\r\n\t\tpadding: 5px;\r\n\t\tdisplay: block;\r\n\t}\r\n\t\r\n\t#list_toc_top.show {\r\n\t\tdisplay: block;\r\n\t}\r\n\r\n\t#list_toc_top a {\r\n\t\tcolor: #434343;\r\n\t\tborder-bottom: 1px solid #bbb;\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top {\r\n\t\tposition: fixed;\r\n\t\ttop: 59px;\r\n\t\twidth: 100%;\r\n\t\tz-index: 99;\r\n\t\tborder-bottom: 2px solid #9c171e;\r\n\t\tpadding: 12px;\r\n\t\tbackground: #fff;\r\n\t\twidth: 100%;\r\n\t\tcursor: pointer;\r\n\t\tdisplay: none;\r\n\t\tleft: 0;\r\n\t\tbox-shadow: 0 -2px 7px 6px rgba(0, 0, 0, 0.17);\r\n\t}\r\n\t\r\n\t#dropdown-fixed-top.show {\r\n\t\tanimation: showAnim 0.5s ease;\r\n\t\tdisplay: block;\r\n\t\topacity: 1;\r\n\t}\r\n\t\r\n\t@keyframes showAnim {\r\n\t\tfrom {\r\n\t\t\tdisplay: none;\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t\tto {\r\n\t\t\tdisplay: block;\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top #list_toc_top {\r\n\t\tmax-height: calc(50vh - 110px);\r\n\t\toverflow-y: scroll;\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top .row {\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: space-between\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top .row p {\r\n\t\tmargin-bottom: 0;\r\n\t}\r\n\t\r\n\t#pilihDaftarIsi {\r\n\t\tmax-width: 100%;\r\n\t\toverflow: hidden;\r\n\t\twhite-space: nowrap;\r\n\t}\r\n\t\r\n\t@media (min-width: 1018px) {\r\n\t\t.dropdown-fixed-top {\r\n\t\t\tdisplay: none;\r\n\t\t}\r\n\t}\r\n\t\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc > li > ul {padding-left: 20px;margin-bottom: 0;}\r\n\t#list_toc{height:max-content;transition:ease-in-out}\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc_float li.active > a {color:#b1252d;background: #ffe1e3;}\r\n\t#list_toc_top li.active > a {color:#b1252d;background: #ffe1e3;}\r\n\t#list_toc_float li a {padding:3px 7px}\r\n\t#list_toc_float li a {\r\n\t\tdisplay: block;\r\n\t\tcolor: #000;\r\n\t\tmargin-bottom: 6px;\r\n\t\tpadding-top: 2px;\r\n\t\tpadding-bottom: 2px;\r\n\t\ttransition: all 0.2s ease-in-out;\r\n\t\tfont-size: 15px;\r\n\t\tline-height: 18px;\r\n\t}\r\n\t#list_toc_float li{list-style:none;list-style-position:inside; margin-left:0;}\r\n\t#list_toc_float a:hover{color:#b1252d;}\r\n\t\r\n\t#toc_group_float{\r\n\t\tline-height: 24px;\r\n\t\tmax-height: calc(100vh - 100px);\r\n\t\toverflow: auto;\r\n\t\tz-index: 99;\r\n\t\tdisplay:none!important;\r\n\t\tbackground:#fff;\r\n\t\ttransition:all 0.5s linear\r\n\t}\r\n\t\r\n\t@media (min-width:1019px){\r\n\t\t#toc_group_float {\r\n\t\t\tdisplay:block!important;\r\n\t\t\t}\r\n\t\t\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\r\n\t}\r\n\r\n<\/style>\r\n\r\n<!-- ToC styling  -->\r\n<style>\r\n\t\/* Simple styling for the TOC *\/\r\n\t\r\n\t#toc ul li:last-child {\r\n    padding-bottom: 16px; \/* Adjust the value as needed *\/\r\n}\r\n\r\n.td-fix-index {\r\n\t transform: unset !important;\r\n     -webkit-transform: unset !important; \r\n}\r\n.footer-contact .td-fix-index {\r\n\t transform: translateZ(0) !important;\r\n     -webkit-transform: translateZ(0) !important; \r\n}\r\n\t.tdb_single_content .tdb-block-inner.td-fix-index{\r\n\t\tposition: static;\r\n\t}\r\n\t\r\n\r\n\t\r\n#toc {\r\n  background-color: #FFF;\r\n\tpadding: 17px 24px 0px 24px !important;\r\n  margin-bottom: 20px;\r\n\/*   border: 1px solid #9C171E; *\/\r\n  border-radius: 6px;\r\n\tdisplay: none;\r\n  max-width: 100%;\r\n  transition: .4s ease height;\r\n\tmargin-left: 0;\r\n\toverflow: hidden;\r\n}\r\n\r\n#toc .header{\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: space-between;\r\n\tbackground-color: transparent;\r\n}\r\n\t\r\n\t#toc.sticky .header{\r\n\t\tpadding: 4px 0;\r\n\t}\r\n\t\r\n.header p{\r\n  font-size: 18px !important;\r\n  font-weight: 600 !important;\r\n  color: #393939;\r\n   margin-bottom: 0;\r\n  \/* margin-top: 20px; *\/\r\n}\r\n\r\n.toc-icon{\r\n  float: right;\r\n\/*   visibility: hidden; *\/\r\n}\r\n\r\n\t.toc-title{\r\n\t\tmargin-right: auto;\r\n\/* \t\tpadding-left: 20px; *\/\r\n\t\tfont-weight: 600;\r\n\t\talign-self: center;\t}\t\r\n\r\n#toc ul {\r\n  list-style-type: none;\r\n  padding-left: 0;\r\n}\r\n\t\r\n#toc.sticky ul{\r\n\toverflow-y: auto;\r\n\tmax-height: 250px;\r\n\tmargin-top: 0px;\r\n\tpadding-top: 20px;\r\n\/* \tborder-top: 1px solid #d3d3d3; *\/\r\n}\r\n\t\r\n#toc ul li {\r\n\/*   margin-bottom: 10px; *\/\r\n  margin-bottom: 10px;\r\n\tmargin-left: 0;\r\n\ttransition: .2s ease;\r\n\tcursor: pointer;\r\n}\r\n\t\r\n\t#toc.sticky ul li {\r\n\t  margin-right: 10px;\r\n\t}\r\n\t\r\n.td-post-content #toc-list li a:hover, .td-post-content #toc-list a.active{\r\n\tbackground-color: #FFF;\r\n\/* \tpadding: 8px 16px 8px 16px; *\/\r\n\tpadding: 4px 16px 4px 16px;\r\n\tborder-radius: 6px;\r\n\tcolor: #9c171e !important;\r\n\tfont-weight: 600 !important;\r\n}\r\n\t\r\n\t.td-post-content #toc-list li:hover a, .td-post-content #toc-list a.active{\r\n\t\tcolor: #9C171E !important;\r\n\t\tfont-weight: 600 !important;\r\n\t}\r\n\t\r\n.td-post-content #toc-list a.active{\r\n\tfont-weight: bold !important;\r\n\tcolor: #9C171E !important;\r\n}\r\n\t\r\n#toc a, .td-post-content #toc-list a {\r\n  text-decoration: none;\r\n  color: #ea1717 !important;\r\n  transition: .2s ease;\r\n\tfont-weight: 400 !important;\r\n\tdisplay: block;\r\n\t\r\n\tpadding: 4px 16px 4px 0;\r\n}\r\n\r\n#toc.sticky {\r\n  position: fixed;\r\n\/*   top: 73px; *\/\r\n\tbottom: 0;\r\n  z-index: 100; \r\n  box-shadow: 0 2px 5px rgba(0,0,0,0.1); \r\n\twidth: 100%; \r\n\tbackground-color: #FFF;\r\n\/* \tbackground-color: #FFF1F1; *\/\r\n\tborder-bottom: 1px solid #ea1717;\r\n\/*   border: 1px solid #393939; *\/\r\n  box-shadow: 0px 0px 14px 0px #00000040;\r\n  cursor: pointer;\r\n\tanimation: fadein .3s ease;\r\n\tpadding: 12px 16px !important;\r\n}\r\n\t\r\n\t.fadein{\r\n\t\tanimation: fadein .3s ease;\r\n\t}\r\n\t\r\n\t.fadeout{\r\n\t\tanimation: fadeout .3s ease;\r\n\t}\r\n\t\r\n\t\r\n\t@keyframes fadein{\r\n\t\t0% {\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t\t100%{\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@keyframes fadeout{\r\n\t\t0% {\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t\t100%{\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t}\r\n\r\n\t\r\n#toc.sticky .header p{\r\n\tmargin-bottom: 10px;\r\n\tmargin-top: 10px;\r\n}\r\n\r\n#toc.sticky .toc-icon{\r\n  visibility: visible;\r\n\/* \ttransition: 0.4s ease; *\/\r\n}\r\n\t\r\n\t.toc-icon{\r\n\t\talign-items: center;\r\n    \tdisplay: flex;\r\n\t}\r\n\t\r\n\tsvg.header-icon{\r\n\/* \t\tbackground-color: #9c171e; *\/\r\n\t\tbackground-color: #FFF;\r\n\t\tborder-radius: 30px;\r\n\t\tpadding: 5px;\r\n\t}\r\n\r\n#toc.sticky .list{\r\n\/*   max-height: 0; *\/\r\n  transition: height 0.4s ease;\r\n}\r\n\t\r\n\t#toc .list{\r\n\/*   max-height: 0; *\/\r\n  transition: height 0.4s ease;\r\n}\r\n\r\n#toc .header.active .toc-icon{\r\n\ttransform: rotate(0deg); \r\n\topacity: 1;\r\n}\r\n\r\n\t#toc .header.active + .list {\r\n\t  max-height: 200px; \/* Adjust this value as needed *\/\r\n\t  opacity: 1;\r\n\t}\r\n\t\r\n\t#placeholder-toc{\r\n\/* \t\tdisplay: none; *\/\r\n\t}\r\n\t\r\n\t@media (min-width: 768px) and (max-width: 991px){\r\n\t\t#toc.sticky{\r\n\/* \t\t\ttop: 104px; *\/\r\n\t\t\tbottom: 0px;\r\n\t\t}\r\n\t\t\r\n\t\t#toc{\r\n\t\t\twidth: unset !important;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@media (max-width: 767px){\r\n\t\t#toc{\r\n\t\t\twidth: 100% !important;\r\n\t\t\tdisplay: inline-block;\r\n\t\t}\r\n\t\t\r\n\t\t#toc.sticky{\r\n\t\t\twidth: 90% !important;\r\n\/* \t\t\ttop: 81px; *\/\r\n\t\t\tbottom: 60px;\r\n\t\t\tmargin-left: auto;\r\n\t\t\tmargin-right: auto;\r\n\t\t\tpadding: 0 16px;\r\n\t\t\tright: 5%;\r\n\t\t}\r\n\t}\r\n\t\r\n\t<\/style>\r\n\r\n<!-- ToC List for mobile -->\r\n<script>\r\n \/\/ Generate TOC based on headings\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  \/\/ Get the element that will contain the TOC\r\n  const tocList = document.getElementById('toc-list');\r\n\r\n  \/\/ Get the element with the ID 'article-left'\r\n  const article = document.querySelector('.td-post-content');\r\n\r\n  \/\/ Find all h2 elements within 'myarticle'\r\n  const headers = article.getElementsByTagName('h2');\r\n\r\n  \/\/ Loop through the h2 elements and create a list item for each one\r\n  for (let i = 0; i < headers.length; i++) {\r\n    const header = headers[i];\r\n    const headerText = header.textContent;\r\n\/\/     const headerId = 'header-' + i;\r\n    const headerId = headerText\r\n    .toLowerCase()\r\n    .trim()\r\n    .replace(\/[^\\w\\s-]\/g, '')  \/\/ hapus tanda baca\r\n    .replace(\/\\s+\/g, '-'); \/\/ ganti spasi jadi \"-\"\r\n\r\n    \/\/ Set an ID for the header if it doesn't have one\r\n    header.setAttribute('id', headerId);\r\n\r\n    \/\/ Create a list item for the TOC\r\n    const listItem = document.createElement('li');\r\n\r\n    \/\/ Create a link for the list item\r\n    const link = document.createElement('a');\r\n    link.setAttribute('href', '#' + headerId);\r\n    link.textContent = headerText;\r\n\r\n    \/\/ Append the link to the list item\r\n    listItem.appendChild(link);\r\n\r\n    \/\/ Append the list item to the TOC list\r\n    tocList.appendChild(listItem);\r\n  }\r\n});\r\n\r\n\/\/ Keep height and placement of content using placeholder in place of TOC\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  const toc = document.querySelector('#toc');\r\n  const placeholderToc = document.querySelector('#placeholder-toc');\r\n\r\n  function setPlaceholderHeight() {\r\n    placeholderToc.style.height = `${toc.offsetHeight}px`;\r\n  }\r\n\r\n  \/\/ Set the initial height of the placeholder\r\n  setPlaceholderHeight();\r\n\r\n  \/\/ Update the height on window resize\r\n  window.addEventListener('resize', setPlaceholderHeight);\r\n});\r\n  const tocTitle = document.querySelector('#toc-title'); \/\/ Assuming header-faq is the element for TOC title\r\n\r\n\/\/ Sticky TOC and update heading\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  const toc = document.querySelector('#toc');\r\n  const footer = document.querySelector('.td-footer-template-wrap');\r\n  const tocParent = toc.parentElement;\r\n  const divTop = tocParent.getBoundingClientRect().top + window.pageYOffset;\r\n  const tocHeight = toc.offsetHeight;\r\n  const triggerPoint = divTop + tocHeight + 700;\r\n  const footerHeight = footer.offsetHeight;\r\n  const triggerFooterPoint = footer.getBoundingClientRect().top + window.pageYOffset - footerHeight - footerHeight - footerHeight;\r\n  const phtoc = document.querySelector('#placeholder-toc');\r\n  const headers = document.querySelectorAll('.td-post-content h2');\r\n  const navLinks = document.querySelectorAll('#toc-list a');\r\n\t\r\n\tconst panel2 = document.querySelector(\"#toc .list\");\r\n\tvar icon = document.querySelector(\".toc-icon\");\r\n\r\n  let activeLink = null; \/\/ Declare activeLink outside the loop\r\n\t\r\n  \/\/ Function to handle scroll and add\/remove .sticky class\r\n  function handleScroll() {\r\n    const windowTop = window.pageYOffset || document.documentElement.scrollTop;\r\n    let currentHeader = '';\r\n\r\n    \/\/ Highlight user progress as the heading comes\r\n    headers.forEach(header => {\r\n\t\tconst headerTop = header.offsetTop;\r\n\t\tconst headerHeight = header.clientHeight;\r\n\t\tif (window.scrollY >= (headerTop - headerHeight + 700)) {\r\n\t\t\tconst currentHeaderId = header.getAttribute('id');\r\n\t\t\tconst currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n\/\/ \t\t\tconsole.log(\"current header text:\", currentHeaderText);\r\n\t\t\ttocTitle.textContent = currentHeaderText;\r\n\t\t\tcurrentHeader = currentHeaderId;\r\n\t\t\t\r\n\t\t\tif(window.innerWidth < 767){\r\n\t\t\t\ttocTitle.textContent = 'Table of Content';\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n    navLinks.forEach(link => {\r\n      link.classList.remove('active');\r\n      if(currentHeader != '') {\r\n\t\t  if (link.getAttribute('href').includes(currentHeader)) {\r\n\t\t\t  link.classList.add('active');\r\n\t\t  }\r\n\t  }\r\n    });\r\n\/\/     if (windowTop < triggerFooterPoint) {\r\n\/\/         toc.style.display = 'block';\r\n\/\/ \t}else{\r\n\/\/         toc.style.display = 'none';\r\n\/\/ \t}\r\n    \/\/ Update TOC title if sticky\r\n    if (windowTop > triggerPoint) {\r\n      if (!toc.classList.contains('sticky')) {\r\n        phtoc.style.display = \"block\";\r\n        toc.classList.add('sticky');\r\n        toc.style.width = `${tocParent.offsetWidth}px`; \/\/ Set width to match the parent element\r\n        toc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n        toc.style.backgroundColor = \"#FFF\";\r\n\t\tpanel2.style.height = '0px';\r\n\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\t\t  if(window.innerWidth < 767){\r\n\/\/ \t\t\t  const tocs = document.querySelector('#toc.sticky');\r\n\t\t\t  tocTitle.textContent = 'Table of Content'; \/\/ Reset title\r\n       \t\t  toc.style.width = '150px'; \/\/ Set width to match the parent element\r\n\t\t  }\r\n      }\r\n      if (currentHeader) {\r\n\/\/         console.log(\"activeLink:\", activeLink);\r\n        if (activeLink) {\r\n\/\/           tocTitle.textContent = activeLink.textContent; \/\/ Update TOC title\r\n          tocTitle.textContent = activeLink ? activeLink.textContent : \"\"; \/\/ Update title only if activeLink exists\r\n        }\r\n      }\r\n    } else {\r\n      toc.classList.remove('sticky');\r\n      phtoc.style.display = \"none\";\r\n      toc.style.width = 'unset'; \/\/ Reset to original width\r\n      toc.style.backgroundColor = \"#FFF\";\r\n      tocTitle.textContent = 'Table of Content'; \/\/ Reset title\r\n\t\tpanel2.style.height = panel2.scrollHeight + \"px\";\r\n\t\ticon.style.transform = \"rotate(180deg)\";\r\n    }\r\n  }\r\n\r\n    \/\/ Attach the scroll event listener to the window\r\n    window.addEventListener('scroll', handleScroll);\r\n\r\n    \/\/ Initial call to handleScroll to set the correct state on load\r\n    handleScroll();\r\n});\r\n\t\r\n\t\/\/ Open toggle TOC\r\n\t  document.addEventListener(\"DOMContentLoaded\", function() {\r\n\t\tvar tocHeader = document.querySelector(\"#toc .header\");\r\n\t\tvar toc = document.querySelector(\"#toc\");\r\n\t\tvar icon = document.querySelector(\".toc-icon\");\r\n\t\tconst tocTitle = document.querySelector('#toc-title');\r\n\t\tconst tocs = document.querySelector('#toc.sticky');\r\n \t\tconst tocParent = toc.parentElement;\t\t  \r\n\r\n\t\t  tocHeader.addEventListener(\"click\", function() {\r\n\t\t\tvar panel = this.nextElementSibling;\r\n\t\t\tif (panel.style.height !== '0px') { \/\/ Check if height is not 0px\r\n\t\t\t  panel.style.height = '0px'; \/\/ Set height to 0 for full collapse\r\n\t\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\/\/ \t\t\t\ttoc.style.paddingBottom = '6px'; \r\n\t\t\t\tif(window.innerWidth > 768){\r\n\t\t\t\t\tif(!toc.classList.contains('sticky')){\r\n\t\t\t\t\t\ttoc.style.width = \"unset\";\r\n\/\/ \t\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (toc.classList.contains('sticky')){\r\n\t\t\t\t\t\ttoc.style.width = '${tocParent.offsetWidth}px';\r\n\t\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tif(window.innerWidth < 767){\r\n\t\t\t\t\ttoc.style.width = \"unset\"; \/\/ Reset width\r\n\t\t\t\t}\r\n\t\t\t\ttoc.style.backgroundColor = \"#FFF1F1\";\r\n\t\t\t} else {\r\n\t\t\t  panel.style.height = panel.scrollHeight + \"px\";\r\n\t\t\t  icon.style.transform = \"rotate(0deg)\";\r\n\t\t\t  toc.style.backgroundColor = \"#FFF\";\r\n\t\t\t  tocTitle.textContent = 'Table of Content'; \/\/ Reset title\r\n\t\t\t\ttoc.style.paddingBottom = '24px';\r\n\t\t\t \tif(window.innerWidth < 767){\r\n\t\t\t\t\ttoc.style.width = `${tocParent.offsetWidth}px`; \/\/ Set width to match the parent element\r\n\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t  });\r\n\r\n\t\t  \/\/ Close TOC when a link inside it is clicked\r\n\t\t  var tocLinks = document.querySelectorAll(\"#toc .list a\");\r\n\t\t  tocLinks.forEach(function(link) {\r\n\t\t\tlink.addEventListener(\"click\", function() {\r\n\t\t\t  var panel = document.querySelector(\"#toc .list\");\r\n\t\t\t  panel.style.height = '0px'; \/\/ Set height to 0 for full collapse\r\n\t\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\t\t\t  toc.style.backgroundColor = \"#FFF\";\r\n\t\t\t});\r\n\t\t  });\r\n\t\t});\r\n\r\n\r\n\r\n\t\r\n\/\/ \tmake the heading at the center of the viewport\r\n\/\/ \tdocument.addEventListener('DOMContentLoaded', function() {\r\n\/\/     \/\/ Add click event listener to all links in the TOC list\r\n\/\/     document.querySelectorAll('#toc-list a').forEach(anchor => {\r\n\/\/         anchor.addEventListener('click', function (e) {\r\n\/\/             e.preventDefault(); \/\/ Prevent the default behavior of jumping to the anchor\r\n\/\/ \/\/ \t\t\tconsole.log(\"prevent default\");\r\n\/\/             const targetId = this.getAttribute('href').substring(1); \/\/ Get the ID of the target element\r\n\/\/             const targetElement = document.getElementById(targetId); \/\/ Get the target element\r\n\r\n\/\/             if (targetElement) {\r\n\/\/                 const headerHeight = document.querySelector('#toc .header').offsetHeight; \/\/ Get the height of the fixed header\r\n\/\/                 const windowHeight = window.innerHeight; \/\/ Get the height of the viewport\r\n\/\/                 const targetOffset = targetElement.offsetTop; \/\/ Get the top offset of the target element\r\n\/\/                 const scrollTo = targetOffset + (windowHeight \/ 2) + (headerHeight); \/\/ Calculate the scroll position to center the target element\r\n\r\n\/\/                 \/\/ Scroll to the calculated position smoothly\r\n\/\/                 window.scrollTo({\r\n\/\/                     top: scrollTo,\r\n\/\/                     behavior: 'smooth'\r\n\/\/                 });\r\n\/\/             }\r\n\/\/         });\r\n\/\/     });\r\n\/\/ });\r\n<\/script>\r\n\r\n<!-- START script lama -->\r\n<!-- <script>\r\n\/\/ \tvar pilihDaftarIsi = document.getElementById('pilihDaftarIsi');\r\n\t\r\n\/\/ \tdocument.addEventListener('DOMContentLoaded', function() {\r\n\/\/ \t\tvar dropdownFixedTop = document.querySelector('.dropdown-fixed-top');\r\n\r\n\/\/ \t\tdropdownFixedTop.addEventListener('click', function() {\r\n\/\/ \t\t\tvar dropdownContent = this.querySelector('.list_toc');\r\n\/\/ \t\t\tdropdownContent.classList.toggle('show');\r\n\/\/ \t\t});\r\n\r\n\/\/ \t\twindow.addEventListener('click', function(event) {\r\n\/\/ \t\t\tvar listTocTop = document.getElementById('list_toc_top');\r\n\r\n\/\/ \t\t\tif (!dropdownFixedTop.contains(event.target)) {\r\n\/\/ \t\t\t\tlistTocTop.classList.remove('show');\r\n\/\/ \t\t\t}\r\n\/\/ \t\t});\r\n\/\/ \t});\r\n\t\r\n\/\/ \tvar daftarIsiContainer = document.getElementById('toc_group_article');\r\n\/\/ \tvar dropdownFixedTop = document.getElementById('dropdown-fixed-top');\r\n\/\/     var triggered = false; \/\/ Flag to keep track of whether the function has been triggered\r\n\r\n\/\/     window.addEventListener('scroll', function() {\r\n\/\/         if (!triggered && isCompletelyScrolledPast(daftarIsiContainer)) {\r\n\/\/             showSectionDropdownFixedTop(false);\r\n\/\/             triggered = true;\r\n\/\/         } else if (triggered && !isCompletelyScrolledPast(daftarIsiContainer)) {\r\n\/\/             showSectionDropdownFixedTop(true);\r\n\/\/             triggered = false;\r\n\/\/         }\r\n\/\/     });\r\n\r\n\/\/     function isCompletelyScrolledPast(element) {\r\n\/\/         var elementTop = element.getBoundingClientRect().top;\r\n\/\/         var elementBottom = element.getBoundingClientRect().bottom;\r\n\/\/         return elementTop < 0 && elementBottom < 0;\r\n\/\/     }\r\n\r\n\/\/     function showSectionDropdownFixedTop(show) {\r\n\/\/ \t\tif (show) {\r\n\/\/ \t\t\tdropdownFixedTop.classList.remove(\"show\");\r\n\/\/ \t\t} else {\r\n\/\/ \t\t\tdropdownFixedTop.classList.add(\"show\");\r\n\/\/ \t\t}\r\n\/\/     }\r\n<\/script> -->\r\n<!-- <script>\r\n    \/\/ Scrollspy function to highlight the active TOC item based on the scroll position\r\n  function scrollSpy(tocClass) {\r\n    const scrollPosition = window.scrollY;\r\n\r\n    \/\/ Find the active h2 and h3 headings based on their position in the corresponding TOC\r\n    let activeH2 = null;\r\n    let activeH3 = null;\r\n\r\n    const tocItems = document.querySelectorAll(`.${tocClass} li`);\r\n    tocItems.forEach(item => {\r\n      const a = item.querySelector('a');\r\n      if (!a) return;\r\n      const href = a.getAttribute('href');\r\n      const targetId = href.substring(1); \/\/ Remove the '#' from the href to get the target ID\r\n      const targetElement = document.getElementById(targetId);\r\n      if (!targetElement) return;\r\n\r\n      const targetTop = targetElement.getBoundingClientRect().top + scrollPosition;\r\n      const nextItem = item.nextElementSibling;\r\n      const nextTop = nextItem ? nextItem.getBoundingClientRect().top + scrollPosition : Infinity;\r\n\r\n      if (targetTop <= scrollPosition + 150) {\r\n        if (a.parentElement.parentElement === tocItems) {\r\n          \/\/ The h2 heading is at the root level of the TOC\r\n          activeH2 = { id: targetId, level: 'h2' };\r\n        } else {\r\n          \/\/ The h3 heading is nested under an h2 heading\r\n          const parentH2 = a.parentElement.parentElement.previousElementSibling;\r\n          if (parentH2) {\r\n            const h2Link = parentH2.querySelector('a');\r\n            if (h2Link) {\r\n              const h2Href = h2Link.getAttribute('href');\r\n              const h2Id = h2Href.substring(1);\r\n              activeH2 = { id: h2Id, level: 'h2' };\r\n            }\r\n          }\r\n          activeH3 = { id: targetId, level: 'h3' };\r\n        }\r\n      }\r\n\r\n      if (targetTop > scrollPosition + 150 && nextTop > scrollPosition + 150 && !activeH3) {\r\n        \/\/ Reset the activeH2 when there are no more active h3 headings\r\n        activeH2 = null;\r\n      }\r\n    });\r\n\r\n    \/\/ Update the active state for the TOC items\r\n    tocItems.forEach(item => {\r\n      item.classList.remove('active');\r\n      const a = item.querySelector('a');\r\n      if (a) {\r\n        const href = a.getAttribute('href');\r\n        const targetId = href.substring(1);\r\n        if ((activeH2 && activeH2.id === targetId) || (activeH3 && activeH3.id === targetId)) {\r\n          item.classList.add('active');\r\n\t\t  pilihDaftarIsi.innerHTML = a.textContent;\r\n        }\r\n      }\r\n    });\r\n  }\r\n\r\n  \/\/ Call scrollSpy for each TOC on window scroll\r\n  const tocClasses = ['list_toc', 'list_toc_float', 'list_toc_top']; \/\/ Add other TOC class names here if you have more than two instances\r\n  tocClasses.forEach(tocClass => {\r\n    window.addEventListener('scroll', () => scrollSpy(tocClass));\r\n  });\r\n<\/script> -->\r\n<!-- END script lama -->\r\n\t\r\n<script>\r\n    \/\/ Scrollspy function to highlight the active TOC item based on the scroll position\r\n  function scrollSpy(tocClass) {\r\n    const scrollPosition = window.scrollY;\r\n\r\n    \/\/ Find the active h2 and h3 headings based on their position in the corresponding TOC\r\n    let activeH2 = null;\r\n    let activeH3 = null;\r\n\r\n    const tocItems = document.querySelectorAll(`.${tocClass} li`);\r\n    tocItems.forEach(item => {\r\n      const a = item.querySelector('a');\r\n      if (!a) return;\r\n      const href = a.getAttribute('href');\r\n      const targetId = href.substring(1); \/\/ Remove the '#' from the href to get the target ID\r\n      const targetElement = document.getElementById(targetId);\r\n      if (!targetElement) return;\r\n\r\n      const targetTop = targetElement.getBoundingClientRect().top + scrollPosition;\r\n      const nextItem = item.nextElementSibling;\r\n      const nextTop = nextItem ? nextItem.getBoundingClientRect().top + scrollPosition : Infinity;\r\n\r\n      if (targetTop <= scrollPosition + 150) {\r\n        if (a.parentElement.parentElement === tocItems) {\r\n          \/\/ The h2 heading is at the root level of the TOC\r\n          activeH2 = { id: targetId, level: 'h2' };\r\n        } else {\r\n          \/\/ The h3 heading is nested under an h2 heading\r\n          const parentH2 = a.parentElement.parentElement.previousElementSibling;\r\n          if (parentH2) {\r\n            const h2Link = parentH2.querySelector('a');\r\n            if (h2Link) {\r\n              const h2Href = h2Link.getAttribute('href');\r\n              const h2Id = h2Href.substring(1);\r\n              activeH2 = { id: h2Id, level: 'h2' };\r\n            }\r\n          }\r\n          activeH3 = { id: targetId, level: 'h3' };\r\n        }\r\n      }\r\n\r\n      if (targetTop > scrollPosition + 150 && nextTop > scrollPosition + 150 && !activeH3) {\r\n        \/\/ Reset the activeH2 when there are no more active h3 headings\r\n        activeH2 = null;\r\n      }\r\n    });\r\n\r\n    \/\/ Update the active state for the TOC items\r\n    tocItems.forEach(item => {\r\n      item.classList.remove('active');\r\n      const a = item.querySelector('a');\r\n      if (a) {\r\n        const href = a.getAttribute('href');\r\n        const targetId = href.substring(1);\r\n        if ((activeH2 && activeH2.id === targetId) || (activeH3 && activeH3.id === targetId)) {\r\n          item.classList.add('active');\r\n        }\r\n      }\r\n    });\r\n  }\r\n\r\n  \/\/ Call scrollSpy for each TOC on window scroll\r\n  const tocClasses = ['list_toc', 'list_toc_float']; \/\/ Add other TOC class names here if you have more than two instances\r\n  tocClasses.forEach(tocClass => {\r\n    window.addEventListener('scroll', () => scrollSpy(tocClass));\r\n  });\r\n<\/script>\r\n\t\r\n\r\n<!-- ToC List for desktop side bar, diganti jadi inject by php, di code snippet \"Sidebar Accordion\" -->\r\n<!--  <script>\r\n\tdocument.addEventListener(\"DOMContentLoaded\", function() {\r\nToC List for desktop side bar, diganti jadi inject by php, di code snippet \"Sidebar Accordion\"\r\n        Fungsi untuk mengubah teks menjadi format id\r\n        function formatId(text) {\r\n            return text.trim().replace(\/[^\\w\\d]+\/g, '_');\r\n        }\r\n\r\n        \/\/ Fungsi untuk membuat nested list\r\n        function createNestedList(parentNode, children) {\r\n            if (children.length === 0) return;\r\n\r\n            const nestedUl = document.createElement('ul');\r\n            children.forEach(child => {\r\n                const nestedLi = document.createElement('li');\r\n                const nestedA = document.createElement('a');\r\n                nestedA.textContent = child.title;\r\n                nestedA.href = `#${child.id}`;\r\n                nestedLi.appendChild(nestedA);\r\n                nestedUl.appendChild(nestedLi);\r\n\r\n                if (child.children.length > 0) {\r\n                    createNestedList(nestedLi, child.children);\r\n                }\r\n            });\r\n\r\n            parentNode.appendChild(nestedUl);\r\n        }\r\n\r\n        \/\/ Membuat objek untuk menyimpan daftar h2 dan h3 beserta judulnya\r\n        const headings = [];\r\n\r\n           \/\/ Mengambil semua elemen h2 dan h3\r\n        const elements = document.querySelectorAll('.td-post-content h2');\r\n\t\t\t\/\/, .td-post-content h3\r\n\r\n        elements.forEach(element => {\r\n            if (element.tagName === 'H2') {\r\n                const id = formatId(element.textContent);\r\n                element.id = id;\r\n\t\t\t\tif (element.textContent.toLowerCase() === \"key takeaways\") {return;} \/\/ Kalau Key Takeaways, jangan dimasukin\r\n                headings.push({ level: 'h2', id: id, title: element.textContent, children: [] });\r\n            } else if (element.tagName === 'H3') {\r\n                const id = formatId(element.textContent);\r\n                element.id = id;\r\n                if (headings.length > 0) {\r\n                    headings[headings.length - 1].children.push({ level: 'h3', id: id, title: element.textContent, children: [] });\r\n                }\r\n            }\r\n        });\r\n\r\n        \/\/ Membuat list HTML dari objek headings\r\n        const ul = document.getElementById('list_toc');\r\n        let currentUl = ul;\r\n        headings.forEach(heading => {\r\n            const li = document.createElement('li');\r\n            const a = document.createElement('a');\r\n            a.textContent = heading.title;\r\n            a.href = `#${heading.id}`;\r\n            li.appendChild(a);\r\n\r\n            if (heading.level === 'h2') {\r\n                \/\/ Menyimpan ul saat ini untuk menambahkan nested ul\r\n                currentUl = li;\r\n                ul.appendChild(li);\r\n            } else if (heading.level === 'h3') {\r\n                if (!currentUl.lastElementChild || currentUl.lastElementChild.tagName !== 'UL') {\r\n                    \/\/ Jika belum ada nested ul, buat satu\r\n                    const nestedUl = document.createElement('ul');\r\n                    currentUl.appendChild(nestedUl);\r\n                    currentUl = nestedUl;\r\n                }\r\n                currentUl.appendChild(li);\r\n            }\r\n\r\n            createNestedList(li, heading.children);\r\n        });\r\n\t\tDapatkan elemen ul dengan id 'list_toc_float'\r\nconst ulFloat = document.getElementById('list_toc');\r\nconst ulJourney = document.getElementById('list_journey');\r\n\r\nDapatkan isi (child elements) dari ul dengan id 'list_toc_float'\r\n\tif (ulFloat !== null) {\r\n\t\tconst clonedChildren = ulFloat.cloneNode(true).children;\r\n\t\tconst ulToc = document.getElementById('list_toc_float');\r\n\t\tconst ulTocTop = document.getElementById('list_toc_top');\r\n\t\tif ((ulToc !== null || ulToc !== undefined) && window.innerWidth > 1018){\r\n\t\t\tulToc.append(...clonedChildren);\r\n\t\t} else {\r\n\t\t\tulTocTop.append(...clonedChildren);\r\n\t\t}\r\n\t} \r\n\r\n\tif (ulJourney !== null) {\r\n\t\tconst clonedChildrenJourney = ulJourney.cloneNode(true).children;\r\n\t\tconst ulTocJourney = document.getElementById('list_toc_journey');\r\n\t\tulTocJourney.append(...clonedChildrenJourney);\r\n\t} \r\n\t\r\n        Fungsi untuk mengambil tinggi navbar\r\n        function getNavbarHeight() {\r\n            const navbar = document.getElementById('tdi_34');\r\n            return navbar ? navbar.offsetHeight : 0;\r\n        }\r\n\r\n        \/\/ Fungsi untuk menambahkan offset posisi scroll\r\n        function scrollToElementWithOffset(elementId) {\r\n            const element = document.getElementById(elementId);\r\n            if (element) {\r\n                const offset = getNavbarHeight();\r\n                const elementPosition = element.getBoundingClientRect().top;\r\n                const offsetPosition = elementPosition - offset-40;\r\n\r\n                window.scrollBy({\r\n                    top: offsetPosition,\r\n                    behavior: 'smooth'\r\n                });\r\n            }\r\n        }\r\n\r\n        \/\/ Fungsi untuk menangani klik pada tautan judul\r\n        function handleTitleClick(event) {\r\n            event.preventDefault();\r\n            const href = event.target.getAttribute('href').substr(1);\r\n            scrollToElementWithOffset(href);\r\n        }\r\n\r\n        \/\/ Tambahkan event listener untuk semua tautan judul\r\n        const titleLinks = document.querySelectorAll('a[href^=\"#\"]');\r\n        titleLinks.forEach(link => {\r\n            link.addEventListener('click', handleTitleClick);\r\n        });\r\n\t});\r\n    <\/script> -->\r\n\n\r\n    <div class=\"adjustable-banner-wrap\">\r\n        <a href=\"https:\/\/www.hashmicro.com\/au\/inventory?medium=moneysite-banner\" target=\"_blank\">\r\n            <img decoding=\"async\" loading=\"lazy\"\r\n                 src=\"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/03\/inventory_desktop_1.webp\"\r\n                 data-desktop-src=\"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/03\/inventory_desktop_1.webp\"\r\n                 data-mobile-src=\"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/03\/inventory_mobile_1.webp\"\r\n                 alt=\"Inventory1\"\r\n                 class=\"responsive-image-banner\">\r\n\r\n            \r\n            <div class=\"adjustable-banner-overlay\" style=\"width: 55%\">\r\n                <p class=\"adjustable-banner-text\">Reduce stock, boost cash flow. Get your <span class=\"adjustable-highlight\">free consultation today.<\/span><\/p>\r\n                <div class=\"adjustable-banner-btn\">Schedule a Consultation<\/div>\r\n            <\/div>\r\n\r\n        <\/a>\r\n    <\/div>\r\n<script>\r\n    \/\/ check which image to use based on screensize\r\n    document.addEventListener(\"DOMContentLoaded\", function() {\r\n        function updateImageSource() {\r\n            var images = document.querySelectorAll('.responsive-image-banner');\r\n            var screenWidth = window.innerWidth;\r\n\r\n            images.forEach(function(img) {\r\n                var mobileSrc = img.getAttribute('data-mobile-src');\r\n                var desktopSrc = img.getAttribute('data-desktop-src');\r\n\r\n                if (screenWidth < 576 && mobileSrc) {\r\n                    img.setAttribute('src', mobileSrc);\r\n                } else {\r\n                    img.setAttribute('src', desktopSrc);\r\n                }\r\n            });\r\n        }\r\n\r\n        \/\/ Initial check\r\n        updateImageSource();\r\n\r\n        \/\/ Update on resize\r\n        window.addEventListener('resize', updateImageSource);\r\n    });\r\n<\/script>\n<h2 id=\"what-is-just-in-time-jit-inventory\"><strong>What Is Just-in-Time (JIT) Inventory?<\/strong><\/h2>\n<p data-start=\"819\" data-end=\"1045\">Just in time inventory, often called JIT, aligns material orders directly with production schedules. Instead of holding surplus stock, businesses order items only when needed. This reduces storage costs and improves cash flow.<\/p>\n<p data-start=\"1047\" data-end=\"1246\">Traditional systems rely on forecasts and maintain extra inventory as a buffer. However, this often leads to waste, higher costs, and unused stock. JIT removes that buffer and focuses on real demand.<\/p>\n<p data-start=\"1248\" data-end=\"1486\">The concept started in Japan, particularly within Toyota\u2019s production system. By observing how supermarkets restock shelves, manufacturers applied a demand-driven approach. As a result, production became more efficient and cost-effective.<\/p>\n<p data-start=\"1488\" data-end=\"1730\">Today, JIT applies across industries such as retail, manufacturing, and food services. It combines process improvement with waste reduction and efficient resource use. Therefore, businesses treat it as both a strategy and a long-term mindset.<\/p>\n<p data-start=\"1049\" data-end=\"1295\"><strong><span style=\"color: #111111; font-family: Roboto, sans-serif; font-size: 27px;\">The Core Idea Behind JIT<\/span><\/strong><\/p>\n<p data-start=\"1049\" data-end=\"1295\"><span data-sheets-root=\"1\"><style>\r\n    #custom-quote {\r\n        background-color: #f0f0f0;\r\n        padding: 20px;\r\n        border-radius: 12px;\r\n        margin: 20px;\r\n        display: flex;\r\n        flex-direction: column;\r\n    }\r\n\r\n    #custom-quote .quote-body {\r\n        display: flex;\r\n        flex-direction: row;\r\n        align-items: flex-start;\r\n        gap: 15px;\r\n        font-size: 16px;\r\n        line-height: 1.5;\r\n        font-style: italic;\r\n    }\r\n\r\n    #custom-quote .quote-icon {\r\n        width: 40px;\r\n        height: 40px;\r\n        flex-shrink: 0;\r\n    }\r\n\r\n    #custom-quote .quote-author-wrapper {\r\n        margin-top: 15px;\r\n        align-self: flex-start;\r\n        margin-left: 55px; \r\n\t\tmargin-bottom: 0px;\r\n    }\r\n\r\n    #custom-quote em {\r\n        font-family: 'Roboto Serif', serif !important;\r\n        font-size: 12px;\r\n        font-weight: bold;\r\n        font-style: normal;\r\n    }\r\n\r\n    @media screen and (max-width: 768px) {\r\n        #custom-quote {\r\n            margin: 15px 0;\r\n            padding: 15px;\r\n        }\r\n        \r\n        #custom-quote .quote-body {\r\n            gap: 12px;\r\n        }\r\n\r\n        #custom-quote .quote-author-wrapper {\r\n            margin-left: 52px;\r\n        }\r\n    }\r\n\r\n    @media screen and (max-width: 480px) {\r\n        #custom-quote {\r\n            margin: 10px 0;\r\n            padding: 12px;\r\n        }\r\n\r\n        #custom-quote .quote-body {\r\n            font-size: 14px;\r\n            gap: 10px;\r\n        }\r\n\r\n        #custom-quote .quote-icon {\r\n            width: 32px;\r\n            height: 32px;\r\n        }\r\n\r\n        #custom-quote .quote-author-wrapper {\r\n            margin-top: 10px;\r\n            margin-left: 42px;\r\n        }\r\n    }\r\n<\/style>\r\n\r\n<div id=\"custom-quote\">\r\n    <div class=\"quote-body\">\r\n        <img decoding=\"async\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/12\/quote.webp\" alt=\"Quote Icon\" class=\"quote-icon\">\r\n        <div>\r\n            Just in time inventory forces businesses to stay efficient, responsive, and focused on real demand rather than assumptions.        <\/div>\r\n    <\/div>\r\n    <p class=\"quote-author-wrapper\">\r\n        <em>Kaia Lockwood, Senior Product Manager<\/em>\r\n    <\/p>\r\n<\/div><\/span><\/p>\n<p data-start=\"1766\" data-end=\"1936\">This section explains how just in time inventory works at a practical level. Each concept connects closely, so understanding them together helps you see the full picture.<\/p>\n<h3 id=\"producing-actual-demand\">Producing based on actual demand<\/h3>\n<p data-start=\"239\" data-end=\"443\">JIT uses a pull system for <a href=\"https:\/\/www.hashmicro.com\/au\/blog\/demand-forecasting\/\">demand-based stock handling<\/a>, where production begins only after real demand appears. This prevents overproduction and reduces unnecessary stock. As a result, businesses avoid tying up capital in unsold goods.<\/p>\n<p data-start=\"445\" data-end=\"648\">Each stage requests materials only when needed, which keeps the supply chain flowing smoothly. Therefore, companies reduce delays and stay aligned with customer demand while focusing on delivering value.<\/p>\n<h3 id=\"minimizing-inventory-levels\">Minimizing inventory levels<\/h3>\n<p data-start=\"690\" data-end=\"908\">Reducing inventory remains a key goal of just in time inventory. Excess stock ties up capital and limits flexibility, so businesses keep inventory lean to improve cash flow. This also helps reduce financial pressure.<\/p>\n<p data-start=\"910\" data-end=\"1098\">Holding inventory creates hidden costs such as storage, insurance, and damage risks. Therefore, companies rely on accurate data and supplier timing to maintain balance and avoid shortages.<\/p>\n<p data-start=\"2831\" data-end=\"3005\"><span style=\"color: #111111; font-family: Roboto, sans-serif; font-size: 22px;\">Eliminating waste in operations<\/span><\/p>\n<p data-start=\"1144\" data-end=\"1351\">JIT focuses on removing waste from every process. Waste includes any activity that does not add value to the customer, so businesses regularly review and improve workflows. This keeps operations efficient.<\/p>\n<p data-start=\"1353\" data-end=\"1575\" data-is-last-node=\"\" data-is-only-node=\"\">Overproduction and waiting time often create the biggest inefficiencies. JIT limits production to actual demand and ensures materials arrive when needed. As a result, companies improve flow and reduce unnecessary movement.<\/p>\n<p data-start=\"3551\" data-end=\"3728\"><strong style=\"color: #111111; font-family: Roboto, sans-serif; font-size: 27px;\">How JIT Works Across the Supply Chain<\/strong><\/p>\n<p data-start=\"4299\" data-end=\"4470\">To make JIT effective, businesses must coordinate every part of the supply chain. The following points explain how materials move efficiently from suppliers to production.<\/p>\n<h3 id=\"demand-triggers-replenishment\">Demand triggers replenishment<\/h3>\n<p data-start=\"231\" data-end=\"455\">JIT systems rely on signals to trigger inventory replenishment. In the past, businesses used manual cards, while modern <a href=\"https:\/\/www.hashmicro.com\/au\/inventory\">real-time stock control software<\/a> automates this process. As a result, stock updates happen instantly and align with real demand.<\/p>\n<p data-start=\"457\" data-end=\"716\">When inventory drops to a set level, software generates new orders automatically. Accurate data remains critical, as errors can delay or duplicate orders. Therefore, companies use tracking tools and real-time systems to improve visibility and decision-making.<\/p>\n<p><span style=\"color: #111111; font-family: Roboto, sans-serif; font-size: 22px;\">Supplier coordination and timing<\/span><\/p>\n<p data-start=\"763\" data-end=\"1002\">Suppliers play a key role in JIT success, as businesses depend on timely and accurate deliveries. Even small delays can disrupt operations, so reliability becomes essential. Strong partnerships help reduce risks and improve coordination.<\/p>\n<p data-start=\"1004\" data-end=\"1234\">Companies often share forecasts and schedules with suppliers to improve planning. In addition, supplier location affects delivery speed and consistency. Clear agreements on timing and quality ensure both parties meet expectations.<\/p>\n<p><span style=\"color: #111111; font-family: Roboto, sans-serif; font-size: 22px;\">Continuous flow of goods<\/span><\/p>\n<div class=\"\" data-turn-id-container=\"request-WEB:74c30a4a-ccf2-44e8-921c-5e5522743f65-3\" data-is-intersecting=\"true\">\n<section class=\"text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" data-turn-id=\"request-WEB:74c30a4a-ccf2-44e8-921c-5e5522743f65-3\" data-testid=\"conversation-turn-8\" data-scroll-anchor=\"false\" data-turn=\"assistant\">\n<div class=\"text-base my-auto mx-auto pb-10 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm\/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg\/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)\">\n<div class=\"[--thread-content-max-width:40rem] @w-lg\/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\">\n<div class=\"flex max-w-full flex-col gap-4 grow\">\n<div class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&amp;]:mt-1\" dir=\"auto\" tabindex=\"0\" data-message-author-role=\"assistant\" data-message-id=\"cfa230af-f975-4a2f-82e9-b58dbe1584e1\" data-message-model-slug=\"gpt-5-3\" data-turn-start-message=\"true\">\n<div class=\"flex w-full flex-col gap-1 empty:hidden\">\n<div class=\"markdown prose dark:prose-invert w-full wrap-break-word dark markdown-new-styling\">\n<p data-start=\"1273\" data-end=\"1461\">JIT aims to create a continuous flow of goods across production. Instead of large batches, products move steadily through each stage. This reduces delays and improves overall efficiency.<\/p>\n<p data-start=\"1463\" data-end=\"1705\" data-is-last-node=\"\" data-is-only-node=\"\">Traditional systems create bottlenecks when items wait between processes. JIT removes these gaps by balancing production speed with demand. Therefore, businesses must stay flexible and update processes regularly to maintain smooth operations.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/section>\n<\/div>\n<h2 id=\"where-jit-creates-the-most-value\"><strong>Where JIT Creates the Most Value<\/strong><\/h2>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-3039\" src=\"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Value.webp\" alt=\"Which JIT Brings the Most Value\" width=\"800\" height=\"400\" srcset=\"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Value.webp 800w, https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Value-300x150.webp 300w, https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Value-768x384.webp 768w, https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Value-150x75.webp 150w, https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Value-696x348.webp 696w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/p>\n<p data-start=\"4938\" data-end=\"5075\">Not every business benefits equally from just in time inventory. However, certain conditions make it more effective and easier to manage.<\/p>\n<h3 id=\"predictable-demand\">Businesses with predictable demand<\/h3>\n<p data-start=\"5117\" data-end=\"5300\">JIT works best when demand remains stable and predictable. Businesses can plan production accurately and reduce the need for safety stock. Therefore, operations become more efficient.<\/p>\n<p data-start=\"5302\" data-end=\"5494\">Historical data helps improve forecasting and supports better planning. Seasonal demand can also fit this model if trends are clear. As a result, businesses avoid overstock after peak periods.<\/p>\n<p><span style=\"color: #111111; font-family: Roboto, sans-serif; font-size: 22px;\">High-value or perishable products<\/span><\/p>\n<p data-start=\"5540\" data-end=\"5746\">JIT suits high-value and perishable goods where holding stock increases risk. Expensive items tie up capital, while perishable goods can spoil quickly. Therefore, ordering only when needed protects margins.<\/p>\n<p data-start=\"5748\" data-end=\"5917\">This approach ensures products remain fresh and relevant. Businesses avoid waste and maintain quality. As a result, they improve profitability and customer satisfaction.<\/p>\n<h3 id=\"limited-storage-capacity\">Limited storage capacity<\/h3>\n<p data-start=\"5954\" data-end=\"6112\">Some businesses operate with limited storage space. Large inventories become impractical in these cases. JIT helps manage stock without requiring extra space.<\/p>\n<p data-start=\"6114\" data-end=\"6274\">Frequent deliveries replace the need for storage areas. Products move directly to shelves or production lines. Therefore, businesses use space more efficiently.<\/p>\n<p><strong><span style=\"color: #111111; font-family: Roboto, sans-serif; font-size: 27px;\">The Trade-Offs of Running Lean Inventory<\/span><\/strong><\/p>\n<p data-start=\"8088\" data-end=\"8213\">While JIT offers benefits, it also introduces risks. Understanding these trade-offs helps businesses make informed decisions.<\/p>\n<h3 id=\"lower-costs-faster-turnover\">Lower costs and faster turnover<\/h3>\n<p data-start=\"235\" data-end=\"503\">JIT reduces storage and handling costs, which improves profitability and lowers overhead. It also increases inventory turnover, so products move faster and improve cash flow. Therefore, businesses can reinvest sooner while improving quality control and reducing waste.<\/p>\n<p><span style=\"color: #111111; font-family: Roboto, sans-serif; font-size: 22px;\">Higher risk of stockouts<\/span><\/p>\n<p data-start=\"536\" data-end=\"803\">JIT lowers safety stock, which increases the risk of shortages when delays occur. Stockouts can lead to lost sales and reduced customer trust, especially when demand spikes unexpectedly. Therefore, businesses must monitor supply and demand closely to respond quickly.<\/p>\n<h3 data-section-id=\"12ow847\" data-start=\"9261\" data-end=\"9288\">Supply chain dependency<\/h3>\n<div class=\"\" data-turn-id-container=\"request-WEB:74c30a4a-ccf2-44e8-921c-5e5522743f65-2\" data-is-intersecting=\"true\">\n<section class=\"text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" data-turn-id=\"request-WEB:74c30a4a-ccf2-44e8-921c-5e5522743f65-2\" data-testid=\"conversation-turn-6\" data-scroll-anchor=\"false\" data-turn=\"assistant\">\n<div class=\"text-base my-auto mx-auto pb-10 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm\/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg\/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)\">\n<div class=\"[--thread-content-max-width:40rem] @w-lg\/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\">\n<div class=\"flex max-w-full flex-col gap-4 grow\">\n<div class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&amp;]:mt-1\" dir=\"auto\" tabindex=\"0\" data-message-author-role=\"assistant\" data-message-id=\"413a6b50-65dc-4c7f-bb90-ba336aa64a47\" data-message-model-slug=\"gpt-5-3\" data-turn-start-message=\"true\">\n<div class=\"flex w-full flex-col gap-1 empty:hidden\">\n<div class=\"markdown prose dark:prose-invert w-full wrap-break-word dark markdown-new-styling\">\n<p data-start=\"835\" data-end=\"1106\" data-is-last-node=\"\" data-is-only-node=\"\">JIT increases reliance on suppliers, so any delay can disrupt operations. Strong relationships and clear expectations help improve coordination and consistency. In addition, diversifying suppliers and reviewing performance regularly helps businesses maintain reliability.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/section>\n<\/div>\n<p><strong><span style=\"color: #111111; font-family: Roboto, sans-serif; font-size: 27px;\">Industry Use Cases: Who Benefits Most from JIT?<\/span><\/strong><\/p>\n<p data-start=\"9830\" data-end=\"9938\">Different industries apply JIT in unique ways. The following examples show where it delivers strong results.<\/p>\n<ul data-start=\"9940\" data-end=\"10505\">\n<li data-section-id=\"1ug1k3g\" data-start=\"9940\" data-end=\"10145\"><strong data-start=\"9942\" data-end=\"9970\">Automotive manufacturing<\/strong><br data-start=\"9970\" data-end=\"9973\" \/>Car manufacturers rely on precise delivery schedules for parts. Components arrive just before assembly, reducing storage needs. This improves efficiency and lowers costs.<\/li>\n<li data-section-id=\"gpqnl\" data-start=\"10147\" data-end=\"10335\"><strong data-start=\"10149\" data-end=\"10188\">Technology and consumer electronics<\/strong><br data-start=\"10188\" data-end=\"10191\" \/>Tech companies deal with short product lifecycles. JIT helps them avoid outdated inventory. Therefore, they reduce losses from obsolete stock.<\/li>\n<li data-section-id=\"gcp7k4\" data-start=\"10337\" data-end=\"10505\"><strong data-start=\"10339\" data-end=\"10361\">Retail and fashion<\/strong><br data-start=\"10361\" data-end=\"10364\" \/>Retailers adjust production based on real-time demand. Smaller batches reduce unsold products. This improves profitability and flexibility.<\/li>\n<\/ul>\n<h2><strong>Implementating Just in Time Inventory<\/strong><\/h2>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-3042\" src=\"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Integration.webp\" alt=\"JIT Integration\" width=\"1600\" height=\"872\" srcset=\"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Integration.webp 1600w, https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Integration-300x164.webp 300w, https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Integration-1024x558.webp 1024w, https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Integration-768x419.webp 768w, https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Integration-1536x837.webp 1536w, https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Integration-771x420.webp 771w, https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Integration-150x82.webp 150w, https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Integration-696x379.webp 696w, https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/JIT-Integration-1068x582.webp 1068w\" sizes=\"(max-width: 1600px) 100vw, 1600px\" \/><\/p>\n<p>Transitioning to a JIT system is a major operational overhaul. It requires a methodical approach to ensure that the reduction of safety stock does not lead to crippling stockouts or production halts.<\/p>\n<h3>1. Review supply chain performance<\/h3>\n<p>Analyse inventory data, demand patterns, and supplier reliability. Identify suitable products for JIT. This helps reduce risks early.<\/p>\n<h3>2. Build strong supplier relationships<\/h3>\n<p>Work closely with trusted suppliers. Set clear delivery expectations and quality standards. This ensures consistent performance.<\/p>\n<h3>3. Adopt inventory management systems<\/h3>\n<p>Use an <a href=\"https:\/\/www.hashmicro.com\/au\/blog\/inventory-management-system\">inventory tracking system<\/a> to monitor stock in real time. Automated systems improve accuracy. Therefore, businesses respond faster.<\/p>\n\r\n    <div class=\"hashy-banner-wrap\" data-catimg=\"Inventory\">\r\n        <a class=\"hashy-banner-link\" href=\"https:\/\/www.hashmicro.com\/au\/free-product-tour\/?medium=moneysite-banner&promocampaign=hashy-ai\" target=\"_blank\" rel=\"noopener\" aria-label=\"See It Live\">\r\n        <div class=\"hashy-banner-frame\">\r\n            <div class=\"hashy-banner-stage\">\r\n                <!-- Background stack -->\r\n                <div class=\"hashy-card-bg\" aria-hidden=\"true\">\r\n                    <span class=\"hashy-card-bg-fill\"><\/span>\r\n                    <img decoding=\"async\" class=\"hashy-card-bg-stars\" src=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/banner-bg-texture.webp\" alt=\"\" loading=\"lazy\" aria-hidden=\"true\">\r\n                    <img decoding=\"async\" class=\"hashy-card-bg-light\" src=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/banner-light-beam-787912.webp\" alt=\"\" loading=\"lazy\" aria-hidden=\"true\">\r\n                    <span class=\"hashy-card-bg-glow\"><\/span>\r\n                <\/div>\r\n\r\n                <!-- Sparkle decorations -->\r\n                <span class=\"hashy-card-deco hashy-card-deco-1\" aria-hidden=\"true\">\r\n                    <svg viewBox=\"0 0 121 35\" preserveAspectRatio=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                        <g opacity=\".48\" filter=\"url(#hcd1)\"><rect width=\"102\" height=\"24\" transform=\"matrix(-1.006 0 0 1.006 115.66 5.34)\" fill=\"url(#hcd1g)\"\/><\/g>\r\n                        <path d=\"M15.27 9.03 13.35 4.34l-1.92 4.69a13.2 13.2 0 0 1-6.77 6.61L0 17.56l4.66 1.88a13.2 13.2 0 0 1 6.77 6.81l1.92 4.66 1.92-4.66a13.2 13.2 0 0 1 6.77-6.81l4.66-1.88-4.66-1.92a13.2 13.2 0 0 1-6.77-6.61z\" fill=\"#fff\"\/>\r\n                        <defs>\r\n                            <filter id=\"hcd1\" x=\"7.7\" y=\"0\" width=\"113.27\" height=\"34.82\" filterUnits=\"userSpaceOnUse\"><feGaussianBlur stdDeviation=\"2.66\"\/><\/filter>\r\n                            <linearGradient id=\"hcd1g\" x1=\"175.31\" y1=\"12\" x2=\"0\" y2=\"12\" gradientUnits=\"userSpaceOnUse\"><stop stop-color=\"#fff\"\/><stop offset=\"1\" stop-color=\"#0B0B0F\"\/><\/linearGradient>\r\n                        <\/defs>\r\n                    <\/svg>\r\n                <\/span>\r\n                <span class=\"hashy-card-deco hashy-card-deco-2\" aria-hidden=\"true\">\r\n                    <svg viewBox=\"0 0 121 35\" preserveAspectRatio=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                        <g opacity=\".48\" filter=\"url(#hcd2)\"><rect x=\"5.34\" y=\"5.34\" width=\"102.59\" height=\"24.14\" fill=\"url(#hcd2g)\"\/><\/g>\r\n                        <path d=\"M105.73 9.03 107.65 4.34l1.92 4.69a13.2 13.2 0 0 0 6.77 6.61L121 17.56l-4.66 1.88a13.2 13.2 0 0 0-6.77 6.81l-1.92 4.66-1.92-4.66a13.2 13.2 0 0 0-6.77-6.81l-4.66-1.88 4.66-1.92a13.2 13.2 0 0 0 6.77-6.61z\" fill=\"#fff\"\/>\r\n                        <defs>\r\n                            <filter id=\"hcd2\" x=\"0\" y=\"0\" width=\"113.27\" height=\"34.82\" filterUnits=\"userSpaceOnUse\"><feGaussianBlur stdDeviation=\"2.66\"\/><\/filter>\r\n                            <linearGradient id=\"hcd2g\" x1=\"181.66\" y1=\"17.47\" x2=\"5.34\" y2=\"17.47\" gradientUnits=\"userSpaceOnUse\"><stop stop-color=\"#fff\"\/><stop offset=\"1\" stop-color=\"#232126\"\/><\/linearGradient>\r\n                        <\/defs>\r\n                    <\/svg>\r\n                <\/span>\r\n                <span class=\"hashy-card-deco hashy-card-deco-3\" aria-hidden=\"true\">\r\n                    <svg viewBox=\"0 0 35 95\" preserveAspectRatio=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                        <g opacity=\".48\" filter=\"url(#hcd3)\"><rect x=\"29.52\" y=\"5.35\" width=\"76.56\" height=\"24.18\" transform=\"rotate(90 29.52 5.35)\" fill=\"url(#hcd3g)\"\/><\/g>\r\n                        <path d=\"M26.26 79.7 30.96 81.63 26.26 83.55a8.7 8.7 0 0 0-6.62 6.78L17.72 95l-1.89-4.67a8.7 8.7 0 0 0-4.72-4.62L4.34 81.63 9.01 79.7a8.7 8.7 0 0 0 4.72-4.62l1.89-4.67 1.92 4.67a8.7 8.7 0 0 0 6.62 6.78z\" fill=\"#fff\"\/>\r\n                        <defs>\r\n                            <filter id=\"hcd3\" x=\"0\" y=\"0\" width=\"34.88\" height=\"87.26\" filterUnits=\"userSpaceOnUse\"><feGaussianBlur stdDeviation=\"2.66\"\/><\/filter>\r\n                            <linearGradient id=\"hcd3g\" x1=\"161.1\" y1=\"17.5\" x2=\"29.52\" y2=\"17.5\" gradientUnits=\"userSpaceOnUse\"><stop stop-color=\"#fff\"\/><stop offset=\"1\" stop-color=\"#232126\"\/><\/linearGradient>\r\n                        <\/defs>\r\n                    <\/svg>\r\n                <\/span>\r\n\r\n                <div class=\"hashy-card-inner\">\r\n                    <!-- Left column: logo + headline + CTA -->\r\n                    <div class=\"hashy-card-left\">\r\n                        <img decoding=\"async\" class=\"hashy-card-logo\" src=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/hashmicro-logo-f0090c.webp\" alt=\"HashMicro\" width=\"240\" height=\"32\" loading=\"lazy\">\r\n                        <div class=\"hashy-card-text-block\">\r\n                            <p class=\"hashy-card-title\"><span class=\"hashy-fg-grad\">Hashy AI<\/span> reorders the right stock before you even notice<\/p>\r\n                            <span class=\"hashy-card-cta\">\r\n                                <span class=\"hashy-card-cta-label\">See It Live<\/span>\r\n                                <span class=\"hashy-card-cta-spark\" aria-hidden=\"true\">\r\n                                    <svg viewBox=\"0 0 20 21\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20\" height=\"21\">\r\n                                        <path d=\"M6.87 6.43 8.02 3.62l1.14 2.81a7 7 0 0 0 4.07 4.07l2.8 1.14-2.8 1.14a7 7 0 0 0-4.07 4.07l-1.14 2.81-1.14-2.81A7 7 0 0 0 2.8 12.78L0 11.64l2.8-1.14a7 7 0 0 0 4.07-4.07z\" fill=\"#fff\"\/>\r\n                                        <path d=\"m15.1 1.5.61-1.5.61 1.5a3.7 3.7 0 0 0 2.07 2.18l1.5.61-1.5.61a3.7 3.7 0 0 0-2.07 2.18l-.61 1.5-.61-1.5a3.7 3.7 0 0 0-2.07-2.18l-1.5-.61 1.5-.61A3.7 3.7 0 0 0 15.1 1.5z\" fill=\"#fff\"\/>\r\n                                        <path d=\"m14.66 15.76.4-.98.4.98a2.4 2.4 0 0 0 1.42 1.42l.98.4-.98.4a2.4 2.4 0 0 0-1.42 1.42l-.4.98-.4-.98a2.4 2.4 0 0 0-1.42-1.42l-.98-.4.98-.4a2.4 2.4 0 0 0 1.42-1.42z\" fill=\"#fff\"\/>\r\n                                    <\/svg>\r\n                                <\/span>\r\n                            <\/span>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <!-- Right column: mascot + chat window -->\r\n                    <div class=\"hashy-card-right\" aria-hidden=\"true\">\r\n                        <img decoding=\"async\" class=\"hashy-card-mascot\" src=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/hashy-mascot-af02ad.webp\" alt=\"\" width=\"128\" height=\"194\" loading=\"lazy\">\r\n                        <div class=\"hashy-card-chat-window\">\r\n                            <div class=\"hashy-card-chat-header\">\r\n                                <div class=\"hashy-card-chat-id\">\r\n                                    <div class=\"hashy-card-chat-avatar\">\r\n                                        <img decoding=\"async\" src=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/avatar-hashy.webp\" alt=\"\" width=\"36\" height=\"36\" loading=\"lazy\">\r\n                                    <\/div>\r\n                                    <div class=\"hashy-card-chat-meta\">\r\n                                        <p class=\"hashy-card-chat-name\">Hashy AI<\/p>\r\n                                        <p class=\"hashy-card-chat-role\">Your AI Assistant<\/p>\r\n                                    <\/div>\r\n                                <\/div>\r\n                                <div class=\"hashy-card-chat-dots\" aria-hidden=\"true\">\r\n                                    <span><\/span><span><\/span><span><\/span>\r\n                                <\/div>\r\n                            <\/div>\r\n                            <div class=\"hashy-card-chat-body\">\r\n                                <div class=\"hashy-card-chat-stream\"\r\n                                     data-avatar-hashy=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/avatar-hashy.webp\"\r\n                                     data-avatar-user=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/avatar-hannah.webp\">\r\n                                <!-- 1. Hashy: Low Stock Warning card (Light Switch W324) -->\r\n                                <div class=\"hashy-msg is-incoming\" data-step=\"1\">\r\n                                    <img decoding=\"async\" class=\"hashy-msg-avatar\" src=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/avatar-hashy.webp\" alt=\"\" width=\"40\" height=\"40\" loading=\"lazy\">\r\n                                    <div class=\"hashy-bubble hashy-bubble-white hashy-bubble-card\">\r\n                                        <div class=\"hashy-stock-card\">\r\n                                            <div class=\"hashy-stock-head\">\r\n                                                <span>Low Stock Warning<\/span>\r\n                                                <svg class=\"hashy-warn-icon\" viewBox=\"0 0 20 20\" width=\"20\" height=\"20\" aria-hidden=\"true\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4.43 8.97C6.86 4.66 8.07 2.5 10 2.5s3.14 2.16 5.57 6.47l.3.54c2.02 3.58 3.03 5.37 2.12 6.68-.91 1.31-3.17 1.31-7.69 1.31H9.7c-4.52 0-6.78 0-7.69-1.31-.92-1.31.09-3.1 2.11-6.68l.3-.54zM10 6.04a.62.62 0 0 1 .62.63v4.16a.62.62 0 0 1-1.25 0V6.67a.62.62 0 0 1 .63-.63zm0 8.13a.83.83 0 1 0 0-1.67.83.83 0 0 0 0 1.67z\" fill=\"#BD1E2D\"\/><\/svg>\r\n                                            <\/div>\r\n                                            <div class=\"hashy-stock-divider\"><\/div>\r\n                                            <div class=\"hashy-stock-row\">\r\n                                                <div class=\"hashy-stock-thumb\">\r\n                                                    <img decoding=\"async\" src=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/product-lightswitch.webp\" alt=\"\" loading=\"lazy\">\r\n                                                <\/div>\r\n                                                <div class=\"hashy-stock-info\">\r\n                                                    <p class=\"hashy-stock-name\">Light Switch W324<\/p>\r\n                                                    <p class=\"hashy-stock-sku\">LS-2852<\/p>\r\n                                                    <span class=\"hashy-stock-pill hashy-stock-pill-ok\">Last Updated: 2 Seconds Ago<\/span>\r\n                                                <\/div>\r\n                                            <\/div>\r\n                                            <div class=\"hashy-stock-progress\">\r\n                                                <div class=\"hashy-stock-bar\"><span style=\"width:20%\"><\/span><\/div>\r\n                                                <span class=\"hashy-stock-pill hashy-stock-pill-low\">92 pcs<\/span>\r\n                                            <\/div>\r\n                                        <\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                                <!-- 2. Projection -->\r\n                                <div class=\"hashy-msg is-incoming hashy-msg-narrow\" data-step=\"2\">\r\n                                    <img decoding=\"async\" class=\"hashy-msg-avatar\" src=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/avatar-hashy.webp\" alt=\"\" width=\"40\" height=\"40\" loading=\"lazy\">\r\n                                    <div class=\"hashy-bubble hashy-bubble-white\"><span class=\"hashy-text-purple\"><strong>Light Switch W324<\/strong><\/span> is projected to run out in 3 days.<\/div>\r\n                                <\/div>\r\n                                <!-- 3. PO draft prepared + document card -->\r\n                                <div class=\"hashy-msg is-incoming hashy-msg-narrow\" data-step=\"3\">\r\n                                    <img decoding=\"async\" class=\"hashy-msg-avatar\" src=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/avatar-hashy.webp\" alt=\"\" width=\"40\" height=\"40\" loading=\"lazy\">\r\n                                    <div class=\"hashy-bubble hashy-bubble-white hashy-bubble-card hashy-bubble-doc\">\r\n                                        <div class=\"hashy-doc-tag\">\r\n                                            <svg viewBox=\"0 0 15 15\" width=\"15\" height=\"15\" aria-hidden=\"true\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15 7.5A7.5 7.5 0 1 1 0 7.5a7.5 7.5 0 0 1 15 0zm-4.48-2.27a.55.55 0 0 1 0 .8L6.77 9.77a.55.55 0 0 1-.8 0l-1.5-1.5a.55.55 0 0 1 .8-.8l1.1 1.1 3.36-3.34a.55.55 0 0 1 .79 0z\" fill=\"#2FB71C\"\/><\/svg>\r\n                                            <p><span class=\"hashy-text-purple\"><strong>Purchase order<\/strong><\/span> draft prepared<\/p>\r\n                                        <\/div>\r\n                                        \r\n                                        <div class=\"hashy-doc-card\">\r\n                                            <div class=\"hashy-doc-preview\">\r\n                                                <div class=\"hashy-doc-head\">\r\n                                                    <div class=\"hashy-doc-head-text\">\r\n                                                        <p class=\"hashy-doc-title\">Purchase order<\/p>\r\n                                                        <p class=\"hashy-doc-num\">Purchase order Number #PO-3162-01<\/p>\r\n                                                    <\/div>\r\n                                                    <img decoding=\"async\" class=\"hashy-doc-logo\" src=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/doc-logo-inventory.webp\" alt=\"\" loading=\"lazy\">\r\n                                                <\/div>\r\n                                                <div class=\"hashy-doc-divider\"><\/div>\r\n                                                <div class=\"hashy-doc-fromto\">\r\n                                                    <div>\r\n                                                        <p class=\"hashy-doc-label\">From:<\/p>\r\n                                                        <p class=\"hashy-doc-co\">TerraCore Materials<\/p>\r\n                                                        <p class=\"hashy-doc-addr\">789 Enterprise Avenue, Floor 2,<br>Metropolis, Stockholm<\/p>\r\n                                                    <\/div>\r\n                                                    <div>\r\n                                                        <p class=\"hashy-doc-label\">to:<\/p>\r\n                                                        <p class=\"hashy-doc-co\">Buildronix Materials<\/p>\r\n                                                        <p class=\"hashy-doc-addr\">45 Evergreen Lane, Suite 102,<br>Brookfield, NY, 11234<\/p>\r\n                                                    <\/div>\r\n                                                <\/div>\r\n                                            <\/div>\r\n                                            <div class=\"hashy-doc-attach\">\r\n                                                <span class=\"hashy-doc-pdf-badge\" aria-hidden=\"true\">\r\n                                                    <svg viewBox=\"0 0 20 25\" width=\"20\" height=\"25\"><path d=\"M2 0h12l4 5v18a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\" fill=\"#E5252A\"\/><path d=\"M14 0v5h4z\" fill=\"#FF5757\"\/><text x=\"4\" y=\"22\" font-family=\"Arial,sans-serif\" font-weight=\"700\" font-size=\"6\" fill=\"#fff\">PDF<\/text><\/svg>\r\n                                                <\/span>\r\n                                                <div class=\"hashy-doc-attach-meta\">\r\n                                                    <p class=\"hashy-doc-file\">Purchase order [21\/04\/2026].pdf<\/p>\r\n                                                    <p class=\"hashy-doc-size\">1MB, PDF File<\/p>\r\n                                                <\/div>\r\n                                            <\/div>\r\n                                            <span class=\"hashy-doc-cta\">View Document<\/span>\r\n                                        <\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                                <!-- 4. User question (right) -->\r\n                                <div class=\"hashy-msg is-outgoing\" data-step=\"4\">\r\n                                    <div class=\"hashy-bubble hashy-bubble-purple\">Is the quantity <strong>already optimized?<\/strong><\/div>\r\n                                    <img decoding=\"async\" class=\"hashy-msg-avatar hashy-msg-avatar-bordered\" src=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/avatar-hannah.webp\" alt=\"\" width=\"40\" height=\"40\" loading=\"lazy\">\r\n                                <\/div>\r\n                                <!-- 5. Hashy answer -->\r\n                                <div class=\"hashy-msg is-incoming hashy-msg-narrow\" data-step=\"5\">\r\n                                    <img decoding=\"async\" class=\"hashy-msg-avatar\" src=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/avatar-hashy.webp\" alt=\"\" width=\"40\" height=\"40\" loading=\"lazy\">\r\n                                    <div class=\"hashy-bubble hashy-bubble-white\">Yes, based on <span class=\"hashy-text-purple\"><strong>demand trend &amp; lead time.<\/strong><\/span><\/div>\r\n                                <\/div>\r\n                                <!-- 6. User approval (right) -->\r\n                                <div class=\"hashy-msg is-outgoing\" data-step=\"6\">\r\n                                    <div class=\"hashy-bubble hashy-bubble-purple\">Approved. Please<strong> inform the supplier.<\/strong><\/div>\r\n                                    <img decoding=\"async\" class=\"hashy-msg-avatar hashy-msg-avatar-bordered\" src=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/avatar-hannah.webp\" alt=\"\" width=\"40\" height=\"40\" loading=\"lazy\">\r\n                                <\/div>\r\n                                <!-- 7. RFQ confirmation -->\r\n                                <div class=\"hashy-msg is-incoming hashy-msg-narrow\" data-step=\"7\">\r\n                                    <img decoding=\"async\" class=\"hashy-msg-avatar\" src=\"https:\/\/www.hashmicro.com\/assets\/images\/hashy-ai-banner\/figma\/avatar-hashy.webp\" alt=\"\" width=\"40\" height=\"40\" loading=\"lazy\">\r\n                                    <div class=\"hashy-bubble hashy-bubble-white\">\r\n                                        <span class=\"hashy-inline-icon\">\r\n                                            <svg viewBox=\"0 0 18 18\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M16.5 9A7.5 7.5 0 1 1 1.5 9a7.5 7.5 0 0 1 15 0zm-4.48-2.27a.55.55 0 0 1 0 .8L8.27 11.27a.55.55 0 0 1-.8 0l-1.5-1.5a.55.55 0 0 1 .8-.8l1.1 1.1 3.4-3.34a.55.55 0 0 1 .76 0z\" fill=\"#2FB71C\"\/><\/svg>\r\n                                        <\/span>\r\n                                        Request for Quotation is <span class=\"hashy-text-purple\"><strong>sent to 15 vendors.<\/strong><\/span>\r\n                                    <\/div>\r\n                                <\/div><\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n        <\/a>\r\n    <\/div>\r\n\r\n    <style>\r\n        \/* ============================================================\r\n         * Hashy banner \u2014 Figma 5181:2678 (1440 \u00d7 508). Stage rendered\r\n         * at exact Figma px values; outer wrapper scales it to fit any\r\n         * body-post container width via container queries.\r\n         * ============================================================ *\/\r\n        .hashy-banner-wrap {\r\n            container-type: inline-size !important;\r\n            container-name: hashybnr !important;\r\n            position: relative !important;\r\n            display: block !important;\r\n            width: 100% !important;\r\n            max-width: 860px !important;        \/* locks the banner at the \"wider\r\n                                        blog 860px\" preview proportions\r\n                                        regardless of body-post width *\/\r\n            margin: 16px auto !important;\r\n            font-family: Poppins, \"Helvetica Neue\", Arial, sans-serif !important;\r\n        }\r\n\r\n        \/* Whole-banner link \u2014 wraps the entire frame so any click on the\r\n           card (background, mascot, chat preview) routes to the CTA URL.\r\n           The inner CTA is now a non-anchor span styled as a button. *\/\r\n        .hashy-banner-link {\r\n            display: block !important;\r\n            color: inherit !important;\r\n            text-decoration: none !important;\r\n            cursor: pointer !important;\r\n        }\r\n\r\n        .hashy-banner-frame {\r\n            position: relative !important;\r\n            width: 100% !important;\r\n            aspect-ratio: 1440 \/ 508 !important;\r\n            border-radius: 16px !important;\r\n            overflow: hidden !important;\r\n            background: #111 !important;\r\n            box-shadow: 0 12px 40px rgba(0, 0, 0, .35) !important;\r\n        }\r\n\r\n        \/* The stage is rendered at the exact Figma frame size. The\r\n           transform: scale() shrinks it proportionally to fit the\r\n           container while preserving every pixel-level token.\r\n           tan(atan2(y, x)) is the standard CSS trig trick to turn the\r\n           length ratio (100cqw \/ 1440px) into a unitless number that\r\n           scale() will accept. *\/\r\n        .hashy-banner-stage {\r\n            position: absolute !important;\r\n            top: 0 !important; left: 0 !important;\r\n            width: 1440px !important;\r\n            height: 508px !important;\r\n            transform-origin: top left !important;\r\n            transform: scale(tan(atan2(100cqw, 1440px))) !important;\r\n        }\r\n        \/* Fallback for browsers without CSS Trig support (pre-2023): the\r\n           stage simply renders left-aligned at design size with overflow\r\n           clipped, which is still readable. *\/\r\n        @supports not (transform: scale(tan(atan2(1px, 1px)))) {\r\n            .hashy-banner-stage { transform: none !important; }\r\n        }\r\n        .hashy-banner-stage * { box-sizing: border-box !important; }\r\n        \/* Defensive overrides \u2014 Hashmicro WP theme rules like\r\n           `.tagdiv-type img { margin-bottom: 21px }` (specificity 0,1,1)\r\n           push our avatars \/ mascot \/ logo out of alignment. Selectors\r\n           below repeat the wrapper class so specificity is (0,2,1) and\r\n           wins regardless of theme load order. *\/\r\n        .hashy-banner-wrap.hashy-banner-wrap img,\r\n        .hashy-banner-stage.hashy-banner-stage img {\r\n            margin: 0 !important;\r\n            padding: 0 !important;\r\n            border: 0 !important;\r\n            max-width: none !important;\r\n            background: transparent !important;\r\n            vertical-align: middle !important;\r\n            box-shadow: none !important;\r\n        }\r\n        .hashy-banner-wrap.hashy-banner-wrap p,\r\n        .hashy-banner-wrap.hashy-banner-wrap h1, .hashy-banner-wrap.hashy-banner-wrap h2,\r\n        .hashy-banner-wrap.hashy-banner-wrap h3, .hashy-banner-wrap.hashy-banner-wrap h4,\r\n        .hashy-banner-wrap.hashy-banner-wrap h5, .hashy-banner-wrap.hashy-banner-wrap h6 {\r\n            margin: 0 !important;\r\n            padding: 0 !important;\r\n            text-indent: 0 !important;\r\n            background: transparent !important;\r\n        }\r\n        .hashy-banner-wrap.hashy-banner-wrap a { text-decoration: none !important; }\r\n\r\n        \/* \u2500\u2500 Background layers \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n        .hashy-card-bg {\r\n            position: absolute !important; inset: 0 !important;\r\n            border-radius: 16px !important;\r\n            overflow: hidden !important;\r\n            pointer-events: none !important;\r\n            z-index: 0 !important;\r\n        }\r\n        .hashy-card-bg-fill { position: absolute !important; inset: 0 !important; background: #111 !important; }\r\n        .hashy-card-bg-stars {\r\n            position: absolute !important; inset: 0 !important;\r\n            width: 100% !important; height: 100% !important;\r\n            object-fit: cover !important;\r\n            mix-blend-mode: screen !important;\r\n            opacity: .56 !important;\r\n        }\r\n        .hashy-card-bg-light {\r\n            position: absolute !important;\r\n            inset: -6px 0 auto 0 !important;\r\n            width: 100% !important;\r\n            height: calc(100% + 12px) !important;\r\n            object-fit: cover !important;\r\n            mix-blend-mode: plus-lighter !important;\r\n            opacity: .54 !important;\r\n            filter: blur(16px) !important;\r\n        }\r\n        .hashy-card-bg-glow {\r\n            position: absolute !important;\r\n            left: calc(50% - 480px) !important;\r\n            bottom: -110px !important;\r\n            width: 961px !important;\r\n            height: 222px !important;\r\n            border-radius: 50% !important;\r\n            background: radial-gradient(ellipse 480px 111px at center, rgba(160,102,242,1) 0%, rgba(77,77,77,0) 100%) !important;\r\n            filter: blur(80px) !important;\r\n            opacity: .8 !important;\r\n            pointer-events: none !important;\r\n        }\r\n\r\n        \/* \u2500\u2500 Sparkle decorations (Figma px positions) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n        .hashy-card-deco {\r\n            position: absolute !important;\r\n            display: block !important;\r\n            pointer-events: none !important;\r\n            z-index: 1 !important;\r\n            animation: hashyDecoFloat 4s ease-in-out infinite !important;\r\n        }\r\n        .hashy-card-deco svg { width: 100% !important; height: 100% !important; display: block !important; }\r\n        .hashy-card-deco-1 { left: 334px !important; top: 399px !important; width: 121px !important; height: 35px !important; }\r\n        .hashy-card-deco-2 { left: 615px !important; top: 72px !important;  width: 121px !important; height: 35px !important; animation-delay: 1.3s !important; }\r\n        .hashy-card-deco-3 { right: 50.57px !important; top: -6px !important; width: 35px !important;  height: 95px !important; animation-delay: 2.4s !important; }\r\n        @keyframes hashyDecoFloat {\r\n            0%, 100% { transform: translateY(0)    scale(1);    opacity: .9; }\r\n            50%      { transform: translateY(-3px) scale(1.05); opacity: 1;  }\r\n        }\r\n\r\n        \/* \u2500\u2500 Inner row \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n        .hashy-card-inner {\r\n            position: relative !important;\r\n            z-index: 2 !important;\r\n            display: flex !important;\r\n            align-items: center !important;\r\n            justify-content: space-between !important;\r\n            gap: 48px !important;\r\n            padding: 64px 70px !important;\r\n            height: 100% !important;\r\n        }\r\n\r\n        \/* \u2500\u2500 Left column \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n        .hashy-card-left {\r\n            flex: 0 0 auto !important;\r\n            display: flex !important;\r\n            flex-direction: column !important;\r\n            align-items: flex-start !important;\r\n            gap: 32px !important;             \/* logo\u2192text tightened from 64 *\/\r\n            max-width: 660px !important;      \/* fits the longer Accounting copy on 3 lines *\/\r\n        }\r\n        .hashy-card-logo {\r\n            display: block !important;\r\n            height: 31.28px !important;\r\n            width: auto !important;\r\n        }\r\n        .hashy-card-text-block {\r\n            display: flex !important;\r\n            flex-direction: column !important;\r\n            align-items: flex-start !important;\r\n            gap: 32px !important;             \/* text\u2192button tightened from 56,\r\n                                                 brings CTA up + farther from\r\n                                                 banner bottom edge *\/\r\n        }\r\n        .hashy-card-title {\r\n            margin: 0 !important;\r\n            font-family: Poppins, \"Helvetica Neue\", Arial, sans-serif !important;\r\n            font-weight: 600 !important;\r\n            font-size: 46px !important;\r\n            line-height: 1.25 !important;\r\n            color: #fff !important;\r\n            letter-spacing: -0.005em !important;\r\n            max-width: 660px !important;      \/* match left-column widening *\/\r\n        }\r\n        .hashy-banner-stage .hashy-fg-grad {\r\n            display: inline-block !important;\r\n            background: linear-gradient(65deg, #8839E7 0%, #E391F4 74%, #8839E7 100%) !important;\r\n            -webkit-background-clip: text !important;\r\n            background-clip: text !important;\r\n            -webkit-text-fill-color: transparent !important;\r\n            color: transparent !important;\r\n            font-weight: 700 !important;\r\n        }\r\n\r\n        \/* CTA \u2014 bumped up from Figma (14\u00d748 \/ 20px) so it stays visually\r\n           prominent after the stage scale-down (~0.44\u00d7 at 628 container).\r\n           Now: padding 22\u00d772, font 30, gap 14, sparkle 28. *\/\r\n        .hashy-card-cta {\r\n            display: inline-flex !important;\r\n            align-items: center !important;\r\n            justify-content: center !important;\r\n            gap: 14px !important;\r\n            padding: 22px 72px !important;\r\n            background:\r\n                linear-gradient(#8839E7, #8839E7) padding-box,\r\n                linear-gradient(129deg, #fff 5%, rgba(255,255,255,0) 28%, rgba(255,255,255,0) 72%, #fff 94%) border-box !important;\r\n            border: 3px solid transparent !important;\r\n            border-radius: 99px !important;\r\n            color: #fff !important;\r\n            font-family: Poppins, \"Helvetica Neue\", Arial, sans-serif !important;\r\n            font-weight: 600 !important;\r\n            font-size: 30px !important;\r\n            line-height: 1.2 !important;\r\n            text-decoration: none !important;\r\n            box-shadow: 0 8px 28px rgba(136, 57, 231, .45) !important;\r\n            transition: transform .25s ease, box-shadow .25s ease, filter .25s ease !important;\r\n        }\r\n        .hashy-card-cta:hover {\r\n            transform: translateY(-2px) !important;\r\n            filter: brightness(1.08) !important;\r\n            color: #fff !important;\r\n            text-decoration: none !important;\r\n            box-shadow: 0 14px 36px rgba(136, 57, 231, .6) !important;\r\n        }\r\n        .hashy-card-cta-spark { display: inline-flex !important; }\r\n        .hashy-card-cta-spark svg { display: block !important; width: 28px !important; height: 29px !important; }\r\n\r\n        \/* \u2500\u2500 Right column (mascot + chat) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n        .hashy-card-right {\r\n            position: relative !important;\r\n            flex: 0 0 auto !important;\r\n            width: 562px !important;\r\n            display: flex !important;\r\n            flex-direction: column !important;\r\n            align-items: center !important;\r\n            padding-bottom: 24px !important;\r\n        }\r\n        .hashy-banner-wrap.hashy-banner-wrap img.hashy-card-mascot,\r\n        .hashy-banner-stage.hashy-banner-stage img.hashy-card-mascot,\r\n        .hashy-card-mascot {\r\n            display: block !important;\r\n            width: 128px !important;\r\n            height: 194.4px !important;\r\n            margin: 0 0 -28px !important;        \/* overlap chat-window by 28px *\/\r\n            position: relative !important;\r\n            z-index: 1 !important;               \/* sits BEHIND chat window so the\r\n                                         bottom edge is hidden, giving\r\n                                         the peek-from-behind effect *\/\r\n            animation: hashyMascotBounce 3.5s ease-in-out infinite !important;\r\n            filter: drop-shadow(0 8px 24px rgba(0,0,0,.45)) !important;\r\n        }\r\n        @keyframes hashyMascotBounce {\r\n            0%, 100% { transform: translateY(0)    rotate(-2deg); }\r\n            50%      { transform: translateY(-6px) rotate( 2deg); }\r\n        }\r\n\r\n        .hashy-card-chat-window {\r\n            position: relative !important;\r\n            z-index: 2 !important;               \/* on top of mascot so the bottom\r\n                                         edge of the mascot is hidden\r\n                                         behind it (peek-through effect) *\/\r\n            width: 100% !important;\r\n            height: 278px !important;\r\n            background: rgba(255, 255, 255, 0.24) !important;\r\n            border-radius: 12px !important;\r\n            display: flex !important;\r\n            flex-direction: column !important;\r\n            gap: 20px !important;\r\n            padding: 0 0 10px !important;\r\n            overflow: hidden !important;\r\n            box-shadow:\r\n                0 0 24px rgba(255,255,255,0.08),\r\n                0 0 40px rgba(255,255,255,0.08) !important;\r\n            backdrop-filter: blur(4px) !important;\r\n            -webkit-backdrop-filter: blur(4px) !important;\r\n        }\r\n        .hashy-card-chat-window::before {\r\n            content: \"\" !important;\r\n            position: absolute !important; inset: 0 !important;\r\n            border-radius: inherit !important;\r\n            padding: 3px !important;\r\n            background: linear-gradient(134deg, #fff 0%, rgba(255,255,255,0.16) 26%, rgba(255,255,255,0.16) 77%, #fff 100%) !important;\r\n            -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0) !important;\r\n            -webkit-mask-composite: xor !important;\r\n                    mask-composite: exclude !important;\r\n            pointer-events: none !important;\r\n            z-index: 3 !important;\r\n        }\r\n\r\n        \/* Chat header \u2014 increased top\/bottom padding (10\u219216) to keep\r\n           the avatar visibly clear of the dark header edges. *\/\r\n        .hashy-card-chat-header {\r\n            display: flex !important;\r\n            align-items: center !important;\r\n            justify-content: space-between !important;\r\n            padding: 16px 20px !important;\r\n            background: #111 !important;\r\n            border-radius: 13.474px 13.474px 0 0 !important;\r\n            flex-shrink: 0 !important;\r\n            position: relative !important;\r\n            z-index: 1 !important;\r\n        }\r\n        .hashy-card-chat-id {\r\n            display: flex !important;\r\n            align-items: center !important;\r\n            gap: 11px !important;\r\n        }\r\n        .hashy-card-chat-avatar {\r\n            width: 40px !important; height: 40px !important;\r\n            border-radius: 50% !important;\r\n            display: block !important;\r\n            flex-shrink: 0 !important;\r\n            overflow: hidden !important;\r\n        }\r\n        .hashy-card-chat-avatar img {\r\n            display: block !important;\r\n            width: 100% !important; height: 100% !important;\r\n            border-radius: 50% !important;\r\n            object-fit: cover !important;\r\n        }\r\n        \/* Two-line meta block \u2014 height locked to avatar so flex-center\r\n           on the parent aligns avatar mid-Y with text mid-Y exactly. *\/\r\n        .hashy-card-chat-meta {\r\n            display: flex !important;\r\n            flex-direction: column !important;\r\n            justify-content: center !important;\r\n            align-items: flex-start !important;\r\n            height: 40px !important;\r\n            text-align: left !important;\r\n            line-height: 1.15 !important;\r\n        }\r\n        .hashy-card-chat-name {\r\n            margin: 0 !important;\r\n            color: #fff !important;\r\n            font-weight: 500 !important;\r\n            font-size: 17px !important;\r\n            line-height: 1.2 !important;\r\n            text-align: left !important;\r\n        }\r\n        .hashy-card-chat-role {\r\n            margin: 2px 0 0 !important;\r\n            color: #fff !important;\r\n            font-weight: 400 !important;\r\n            font-size: 11.5px !important;\r\n            line-height: 1.2 !important;\r\n            text-align: left !important;\r\n            opacity: .85 !important;\r\n        }\r\n        .hashy-card-chat-dots { display: inline-flex !important; align-items: center !important; gap: 8px !important; padding: 0 4px !important; }\r\n        .hashy-card-chat-dots span { width: 10.12px !important; height: 10.12px !important; border-radius: 50% !important; background: #d9d9d9 !important; }\r\n\r\n        \/* Chat body \/ stream *\/\r\n        .hashy-card-chat-body { position: relative !important; flex: 1 1 auto !important; min-height: 0 !important; overflow: hidden !important; }\r\n        .hashy-card-chat-stream {\r\n            display: flex !important;\r\n            flex-direction: column !important;\r\n            gap: 20px !important;\r\n            will-change: transform !important;\r\n            transition: transform .9s cubic-bezier(.2,.7,.2,1) !important;\r\n        }\r\n        .hashy-card-chat-stream.no-transition,\r\n        .hashy-card-chat-stream.no-transition .hashy-msg { transition: none !important; }\r\n\r\n        \/* Message rows \u2014 softened easing + longer transitions for a calmer\r\n           reveal cadence. Bubble drops in from -10px with fade. *\/\r\n        .hashy-msg {\r\n            display: flex !important;\r\n            align-items: flex-end !important;\r\n            gap: 18px !important;\r\n            padding: 0 28px !important;\r\n            opacity: 0 !important;\r\n            transform: translateY(-10px) !important;\r\n            transition: opacity .55s cubic-bezier(.16,.84,.32,1),\r\n                        transform .65s cubic-bezier(.18,.86,.34,1.04) !important;\r\n            flex-shrink: 0 !important;\r\n        }\r\n        .hashy-msg.is-revealed { opacity: 1 !important; transform: translateY(0) !important; }\r\n        .hashy-msg.is-incoming { justify-content: flex-start !important; }\r\n        .hashy-msg.is-outgoing { justify-content: flex-end !important; padding: 0 28px 0 0 !important; }\r\n        .hashy-msg.hashy-msg-narrow { padding: 0 24px !important; }\r\n\r\n        .hashy-msg-avatar {\r\n            display: block !important;\r\n            width: 40px !important; height: 40px !important;\r\n            border-radius: 50% !important;\r\n            object-fit: cover !important;\r\n            flex-shrink: 0 !important;\r\n            background: #fff !important;\r\n        }\r\n        .hashy-msg-avatar-bordered {\r\n            border: 1.82px solid #fff !important;\r\n            background: #8839E7 !important;\r\n        }\r\n\r\n        \/* Bubbles *\/\r\n        .hashy-bubble {\r\n            position: relative !important;\r\n            padding: 10px 14px !important;\r\n            border-radius: 5px !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 500 !important;\r\n            font-size: 14.5px !important;\r\n            line-height: 1.4 !important;\r\n            box-shadow: 0 1px 2px rgba(0,0,0,.18) !important;\r\n            max-width: 320px !important;\r\n        }\r\n        .hashy-bubble strong { font-weight: 700 !important; }\r\n\r\n        .hashy-bubble-white { background: #fff !important; color: #353535 !important; }\r\n        .hashy-bubble-white::before {\r\n            content: \"\" !important;\r\n            position: absolute !important;\r\n            left: -7px !important; top: 0 !important;\r\n            width: 0 !important; height: 0 !important;\r\n            border-style: solid !important;\r\n            border-width: 0 17px 16px 0 !important;\r\n            border-color: transparent #fff transparent transparent !important;\r\n        }\r\n        .hashy-text-purple { color: #8839E7 !important; font-weight: 800 !important; }\r\n\r\n        .hashy-bubble-purple { background: #8839E7 !important; color: #fff !important; }\r\n        .hashy-bubble-purple::after {\r\n            content: \"\" !important;\r\n            position: absolute !important;\r\n            right: -7px !important; top: 0 !important;\r\n            width: 0 !important; height: 0 !important;\r\n            border-style: solid !important;\r\n            border-width: 0 0 16px 17px !important;\r\n            border-color: transparent transparent #8839E7 transparent !important;\r\n        }\r\n        .hashy-bubble-wide { width: 380px !important; max-width: 100% !important; }\r\n\r\n        .hashy-bubble-typing {\r\n            display: inline-flex !important;\r\n            align-items: center !important;\r\n            justify-content: center !important;\r\n            gap: 4px !important;\r\n            padding: 9px 14px !important;\r\n            min-width: 50px !important;\r\n        }\r\n        .hashy-bubble-typing .hashy-dot {\r\n            width: 6px !important; height: 6px !important;\r\n            border-radius: 50% !important;\r\n            background: #fff !important;\r\n            opacity: .9 !important;\r\n            animation: hashyDot 1.2s ease-in-out infinite !important;\r\n        }\r\n        \/* White bubble typing dots \u2014 purple to be visible on white bg *\/\r\n        .hashy-bubble-white.hashy-bubble-typing .hashy-dot {\r\n            background: #8839E7 !important;\r\n            opacity: .55 !important;\r\n        }\r\n        .hashy-bubble-typing .hashy-dot:nth-child(2) { animation-delay: .18s !important; }\r\n        .hashy-bubble-typing .hashy-dot:nth-child(3) { animation-delay: .36s !important; }\r\n        @keyframes hashyDot {\r\n            0%, 60%, 100% { transform: translateY(0);   opacity: .55; }\r\n            30%           { transform: translateY(-4px); opacity: 1;   }\r\n        }\r\n        \/* Typing rows are dynamically injected by JS before each real\r\n           message; remove them from the natural flow when fading out\r\n           (gives the impression the bubble morphs into the real text).\r\n           Center-align so the small typing bubble sits vertically\r\n           against the avatar instead of dropping to flex-end. *\/\r\n        .hashy-typing-row {\r\n            align-items: center !important;\r\n            transition: opacity .4s ease, transform .45s ease, max-height .45s ease !important;\r\n        }\r\n        .hashy-typing-row.is-fading {\r\n            opacity: 0 !important;\r\n            transform: translateY(-4px) !important;\r\n            max-height: 0 !important;\r\n            margin: 0 !important;\r\n            overflow: hidden !important;\r\n        }\r\n\r\n        .hashy-bubble-card { padding: 10px !important; }\r\n\r\n        \/* Sales: Bright Technology contact card *\/\r\n        .hashy-contact-card { display: flex !important; flex-direction: column !important; gap: 5px !important; width: 256px !important; }\r\n        .hashy-contact-row {\r\n            display: flex !important; align-items: center !important; gap: 8px !important;\r\n            border-bottom: 0.5px solid #d9d9d9 !important;\r\n            padding-bottom: 12px !important;\r\n            height: 57px !important;\r\n        }\r\n        .hashy-contact-logo {\r\n            width: 45px !important; height: 45px !important;\r\n            border-radius: 50% !important;\r\n            overflow: hidden !important;\r\n            flex-shrink: 0 !important;\r\n            background: #fff !important;\r\n            display: flex !important; align-items: center !important; justify-content: center !important;\r\n        }\r\n        .hashy-contact-logo img { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important; }\r\n        .hashy-contact-meta {\r\n            flex: 1 1 auto !important;\r\n            min-width: 0 !important;\r\n            display: flex !important;\r\n            flex-direction: column !important;\r\n            justify-content: center !important;\r\n        }\r\n        .hashy-contact-name {\r\n            margin: 0 !important;\r\n            font-weight: 600 !important;\r\n            font-size: 14px !important;\r\n            color: #353535 !important;\r\n            line-height: 20px !important;\r\n            white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important;\r\n        }\r\n        .hashy-contact-email {\r\n            margin: 0 !important;\r\n            font-weight: 400 !important;\r\n            font-size: 12px !important;\r\n            color: #353535 !important;\r\n            line-height: 20px !important;\r\n            white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important;\r\n        }\r\n        .hashy-contact-cog {\r\n            width: 16px !important; height: 16px !important;\r\n            display: inline-flex !important; align-items: center !important; justify-content: center !important;\r\n            flex-shrink: 0 !important;\r\n        }\r\n        .hashy-contact-actions { display: flex !important; gap: 8px !important; padding-top: 6px !important; }\r\n        .hashy-contact-actions span {\r\n            flex: 1 1 0 !important;\r\n            min-width: 0 !important;\r\n            height: 28px !important;\r\n            background: #f6f6f6 !important;\r\n            border-radius: 4px !important;\r\n            display: inline-flex !important; align-items: center !important; justify-content: center !important;\r\n        }\r\n        .hashy-contact-actions svg { display: block !important; }\r\n\r\n        \/* Inventory: Low Stock card \u2014 Figma 5311:1473 (171px content) *\/\r\n        .hashy-stock-card {\r\n            display: flex !important; flex-direction: column !important;\r\n            gap: 8px !important;\r\n            width: 171px !important;\r\n        }\r\n        .hashy-stock-head {\r\n            display: flex !important;\r\n            align-items: center !important;\r\n            justify-content: space-between !important;\r\n            gap: 11px !important;\r\n            font-weight: 600 !important;\r\n            font-size: 14px !important;\r\n            color: #353535 !important;\r\n        }\r\n        .hashy-warn-icon { flex-shrink: 0 !important; }\r\n        .hashy-stock-divider { height: 0.5px !important; background: #d9d9d9 !important; }\r\n        .hashy-stock-row {\r\n            display: flex !important;\r\n            align-items: center !important;\r\n            justify-content: center !important;\r\n            gap: 10px !important;\r\n        }\r\n        .hashy-stock-thumb {\r\n            width: 42px !important; height: 42px !important;\r\n            border-radius: 3px !important;\r\n            border: 0.8px solid #ddd !important;\r\n            overflow: hidden !important;\r\n            flex-shrink: 0 !important;\r\n            background: #fff !important;\r\n        }\r\n        .hashy-stock-thumb img { display: block !important; width: 100% !important; height: 100% !important; object-fit: contain !important; }\r\n        .hashy-stock-info { display: flex !important; flex-direction: column !important; gap: 3px !important; width: 119px !important; }\r\n        .hashy-stock-name {\r\n            margin: 0 !important; font-weight: 500 !important; font-size: 12.5px !important; color: #353535 !important; line-height: 1.25 !important;\r\n        }\r\n        .hashy-stock-sku {\r\n            margin: 0 !important; font-weight: 500 !important; font-size: 8px !important; color: #353535 !important; line-height: 1.4 !important;\r\n        }\r\n        .hashy-stock-progress {\r\n            display: flex !important;\r\n            align-items: center !important;\r\n            gap: 8px !important;\r\n            width: 100% !important;\r\n        }\r\n        .hashy-stock-bar {\r\n            flex: 1 1 auto !important;\r\n            min-width: 0 !important;\r\n            height: 7px !important;\r\n            border-radius: 24px !important;\r\n            background: rgba(196, 196, 196, .24) !important;\r\n            overflow: hidden !important;\r\n            position: relative !important;\r\n        }\r\n        .hashy-stock-bar span {\r\n            display: block !important;\r\n            height: 100% !important;\r\n            background: #BD1E2D !important;\r\n            border-radius: 24px !important;\r\n        }\r\n        .hashy-stock-pill {\r\n            display: inline-flex !important; align-items: center !important;\r\n            padding: 2px 4px !important;\r\n            border-radius: 2px !important;\r\n            font-weight: 500 !important;\r\n            font-size: 6px !important;\r\n            line-height: 1.4 !important;\r\n            white-space: nowrap !important;\r\n            flex-shrink: 0 !important;\r\n        }\r\n        .hashy-stock-pill-ok { background: #DDFCD4 !important; color: #1A8707 !important; }\r\n        .hashy-stock-pill-low {\r\n            background: #FFEBEB !important;\r\n            color: #90191C !important;\r\n            font-weight: 600 !important;\r\n            font-size: 7px !important;\r\n            padding: 1px 4px !important;\r\n        }\r\n\r\n        .hashy-check { vertical-align: -3px !important; margin-left: 3px !important; flex-shrink: 0 !important; }\r\n        .hashy-inline-icon { display: inline-flex !important; vertical-align: -3px !important; margin-right: 4px !important; }\r\n\r\n        \/* \u2500\u2500 Document card (Quotation\/Purchase order) \u2014 Figma 5298:2969\r\n           Sales \/ 5298:3099 Inventory. Bubble widened to 380px and\r\n           internal paddings\/gaps tightened so the full preview + From\/To\r\n           + attachment + CTA fit inside the 278px chat viewport\r\n           without the View Document button getting clipped. \u2500\u2500 *\/\r\n        .hashy-bubble-doc {\r\n            flex-direction: column !important;\r\n            align-items: stretch !important;\r\n            gap: 8px !important;\r\n            width: 380px !important;\r\n            padding: 9px 12px !important;\r\n        }\r\n        .hashy-doc-tag {\r\n            display: flex !important;\r\n            align-items: center !important;\r\n            gap: 4px !important;\r\n        }\r\n        .hashy-doc-tag p,\r\n        .hashy-doc-tag-text {\r\n            margin: 0 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 500 !important;\r\n            font-size: 13.5px !important;\r\n            line-height: 1.35 !important;\r\n            color: #353535 !important;\r\n        }\r\n        .hashy-doc-card {\r\n            background: #FAFAFA !important;\r\n            border-radius: 2.6px !important;\r\n            padding: 6px !important;\r\n            display: flex !important;\r\n            flex-direction: column !important;\r\n            gap: 5px !important;\r\n            width: 100% !important;\r\n        }\r\n        .hashy-doc-preview {\r\n            background: #fff !important;\r\n            border: 0.7px solid rgba(0,0,0,.1) !important;\r\n            border-radius: 4.8px 4.8px 0 0 !important;\r\n            padding: 5px 6px !important;\r\n            overflow: hidden !important;\r\n            display: flex !important;\r\n            flex-direction: column !important;\r\n            gap: 2.5px !important;\r\n        }\r\n        .hashy-doc-head {\r\n            display: flex !important;\r\n            align-items: flex-start !important;\r\n            justify-content: space-between !important;\r\n            gap: 6px !important;\r\n        }\r\n        .hashy-doc-head-text { display: flex !important; flex-direction: column !important; }\r\n        .hashy-doc-title {\r\n            margin: 0 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 700 !important;\r\n            font-size: 10.9px !important;\r\n            line-height: 1.4 !important;\r\n            color: #353535 !important;\r\n        }\r\n        .hashy-doc-num {\r\n            margin: 0 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 500 !important;\r\n            font-size: 5.4px !important;\r\n            line-height: 1.2 !important;\r\n            color: #353535 !important;\r\n            opacity: .5 !important;\r\n        }\r\n        .hashy-doc-logo {\r\n            width: 20px !important;\r\n            height: 17px !important;\r\n            object-fit: contain !important;\r\n            flex-shrink: 0 !important;\r\n        }\r\n        .hashy-doc-divider {\r\n            height: 0.7px !important;\r\n            background: rgba(0,0,0,.1) !important;\r\n        }\r\n        .hashy-doc-fromto {\r\n            display: flex !important;\r\n            justify-content: space-between !important;\r\n            gap: 8px !important;\r\n        }\r\n        .hashy-doc-fromto > div {\r\n            display: flex !important;\r\n            flex-direction: column !important;\r\n        }\r\n        .hashy-doc-label {\r\n            margin: 0 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 400 !important;\r\n            font-size: 5.4px !important;\r\n            line-height: 1.4 !important;\r\n            color: #353535 !important;\r\n            opacity: .5 !important;\r\n        }\r\n        .hashy-doc-co {\r\n            margin: 0 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 700 !important;\r\n            font-size: 5.4px !important;\r\n            line-height: 1.4 !important;\r\n            color: #2C2C2C !important;\r\n        }\r\n        .hashy-doc-addr {\r\n            margin: 0 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 500 !important;\r\n            font-size: 5.4px !important;\r\n            line-height: 1.4 !important;\r\n            color: #2C2C2C !important;\r\n        }\r\n        .hashy-doc-attach {\r\n            display: flex !important;\r\n            align-items: center !important;\r\n            gap: 6px !important;\r\n            padding: 0 2px !important;\r\n        }\r\n        .hashy-doc-pdf-badge {\r\n            display: inline-flex !important;\r\n            flex-shrink: 0 !important;\r\n        }\r\n        .hashy-doc-pdf-badge svg { display: block !important; width: 20px !important; height: 25px !important; }\r\n        .hashy-doc-attach-meta { display: flex !important; flex-direction: column !important; min-width: 0 !important; }\r\n        .hashy-doc-file {\r\n            margin: 0 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 500 !important;\r\n            font-size: 10px !important;\r\n            line-height: 1.4 !important;\r\n            color: #353535 !important;\r\n            white-space: nowrap !important;\r\n            overflow: hidden !important;\r\n            text-overflow: ellipsis !important;\r\n        }\r\n        .hashy-doc-size {\r\n            margin: 0 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 500 !important;\r\n            font-size: 10px !important;\r\n            line-height: 1.4 !important;\r\n            color: #ABAAAA !important;\r\n        }\r\n        .hashy-doc-cta {\r\n            display: flex !important;\r\n            align-items: center !important;\r\n            justify-content: center !important;\r\n            background: #8839E7 !important;\r\n            color: #fff !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 600 !important;\r\n            font-size: 10px !important;\r\n            line-height: 1.4 !important;\r\n            padding: 5px 8px !important;\r\n            border-radius: 3.4px !important;\r\n        }\r\n\r\n        \/* \u2500\u2500 Accounting: XLSX Financial Report card \u2014 Figma 5316:1700 \u2500\u2500 *\/\r\n        .hashy-bubble-xlsx {\r\n            flex-direction: column !important;\r\n            align-items: stretch !important;\r\n            gap: 8px !important;\r\n            width: 280px !important;\r\n            padding: 10px !important;\r\n        }\r\n        .hashy-xlsx-row {\r\n            display: flex !important;\r\n            align-items: center !important;\r\n            gap: 10px !important;\r\n        }\r\n        .hashy-xlsx-icon {\r\n            display: inline-flex !important;\r\n            flex-shrink: 0 !important;\r\n        }\r\n        .hashy-xlsx-icon svg { display: block !important; width: 24px !important; height: 28px !important; }\r\n        .hashy-xlsx-meta { display: flex !important; flex-direction: column !important; min-width: 0 !important; }\r\n        .hashy-xlsx-name {\r\n            margin: 0 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 600 !important;\r\n            font-size: 13px !important;\r\n            line-height: 1.3 !important;\r\n            color: #353535 !important;\r\n        }\r\n        .hashy-xlsx-size {\r\n            margin: 0 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 500 !important;\r\n            font-size: 10.5px !important;\r\n            line-height: 1.4 !important;\r\n            color: #888 !important;\r\n        }\r\n        .hashy-xlsx-actions { display: flex !important; gap: 8px !important; }\r\n        .hashy-xlsx-actions span {\r\n            flex: 1 1 0 !important;\r\n            display: inline-flex !important;\r\n            align-items: center !important;\r\n            justify-content: center !important;\r\n            background: #F1F1F1 !important;\r\n            color: #353535 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 500 !important;\r\n            font-size: 12px !important;\r\n            padding: 6px 10px !important;\r\n            border-radius: 4px !important;\r\n        }\r\n\r\n        \/* \u2500\u2500 HR: Attendance Report card \u2014 Figma 5287:1171 \u2500\u2500 *\/\r\n        .hashy-bubble-attendance {\r\n            flex-direction: column !important;\r\n            align-items: stretch !important;\r\n            gap: 10px !important;\r\n            width: 270px !important;\r\n            padding: 10px 12px !important;\r\n        }\r\n        .hashy-att-head {\r\n            display: flex !important;\r\n            align-items: center !important;\r\n            justify-content: space-between !important;\r\n        }\r\n        .hashy-att-title {\r\n            margin: 0 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 700 !important;\r\n            font-size: 13px !important;\r\n            color: #353535 !important;\r\n        }\r\n        .hashy-att-month {\r\n            display: inline-flex !important;\r\n            align-items: center !important;\r\n            gap: 4px !important;\r\n            background: #F1F1F1 !important;\r\n            color: #353535 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 500 !important;\r\n            font-size: 10px !important;\r\n            padding: 3px 8px !important;\r\n            border-radius: 4px !important;\r\n        }\r\n        .hashy-att-month svg { display: inline-block !important; }\r\n        .hashy-att-body {\r\n            display: flex !important;\r\n            align-items: center !important;\r\n            gap: 12px !important;\r\n            padding: 4px 0 !important;\r\n        }\r\n        .hashy-donut {\r\n            position: relative !important;\r\n            width: 80px !important;\r\n            height: 80px !important;\r\n            border-radius: 50% !important;\r\n            background: conic-gradient(\r\n                #8839E7 0deg 315deg,        \/* 21\/24 = 87.5% = 315deg \u2014 Present *\/\r\n                #FEA110 315deg 345deg,      \/* 2\/24  = 8.3%  = 30deg  \u2014 Annual Leave *\/\r\n                #BD1E2D 345deg 360deg       \/* 1\/24  = 4.2%  = 15deg  \u2014 Sick Leave *\/\r\n            ) !important;\r\n            flex-shrink: 0 !important;\r\n        }\r\n        .hashy-donut::before {\r\n            content: \"\" !important;\r\n            position: absolute !important;\r\n            inset: 12px !important;\r\n            background: #fff !important;\r\n            border-radius: 50% !important;\r\n        }\r\n        .hashy-donut-center {\r\n            position: absolute !important;\r\n            inset: 0 !important;\r\n            display: flex !important;\r\n            flex-direction: column !important;\r\n            align-items: center !important;\r\n            justify-content: center !important;\r\n            text-align: center !important;\r\n            z-index: 1 !important;\r\n        }\r\n        .hashy-donut-num {\r\n            margin: 0 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 700 !important;\r\n            font-size: 18px !important;\r\n            line-height: 1 !important;\r\n            color: #353535 !important;\r\n        }\r\n        .hashy-donut-label {\r\n            margin: 1px 0 0 !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-weight: 500 !important;\r\n            font-size: 7.5px !important;\r\n            line-height: 1.2 !important;\r\n            color: #888 !important;\r\n        }\r\n        .hashy-att-legend {\r\n            display: flex !important;\r\n            flex-direction: column !important;\r\n            gap: 6px !important;\r\n            font-family: Poppins, sans-serif !important;\r\n            font-size: 10.5px !important;\r\n            color: #353535 !important;\r\n        }\r\n        .hashy-att-legend > div {\r\n            display: flex !important;\r\n            align-items: flex-start !important;\r\n            gap: 6px !important;\r\n            line-height: 1.25 !important;\r\n        }\r\n        .hashy-att-legend strong { font-weight: 700 !important; font-size: 11px !important; }\r\n        .hashy-att-dot {\r\n            width: 10px !important; height: 10px !important;\r\n            border-radius: 2px !important;\r\n            margin-top: 2px !important;\r\n            flex-shrink: 0 !important;\r\n        }\r\n        .hashy-att-dot-1 { background: #8839E7 !important; }\r\n        .hashy-att-dot-2 { background: #FEA110 !important; }\r\n        .hashy-att-dot-3 { background: #BD1E2D !important; }\r\n\r\n        \/* \u2500\u2500 Mobile (< 480px container): unscale + stack vertically.\r\n           Layout order: text on TOP, chat card on BOTTOM. Text\/button\r\n           rendered center-aligned. Above 480 the desktop side-by-side\r\n           layout stays \u2014 it just scales down via transform. \u2500\u2500\u2500 *\/\r\n        @container hashybnr (max-width: 479.99px) {\r\n            .hashy-banner-frame {\r\n                aspect-ratio: auto !important;\r\n                border-radius: 14px !important;\r\n            }\r\n            .hashy-banner-stage {\r\n                position: static !important;\r\n                width: 100% !important;\r\n                height: auto !important;\r\n                transform: none !important;\r\n            }\r\n            .hashy-card-deco-1, .hashy-card-deco-2 { display: none !important; }\r\n            .hashy-card-deco-3 { right: 12px !important; top: 0 !important; width: 24px !important; height: 70px !important; }\r\n            .hashy-card-bg-glow { left: 50% !important; transform: translateX(-50%) !important; width: 90% !important; }\r\n\r\n            .hashy-card-inner {\r\n                flex-direction: column !important;        \/* text first, card second *\/\r\n                align-items: center !important;\r\n                text-align: center !important;\r\n                gap: 28px !important;\r\n                padding: 32px 22px !important;\r\n                height: auto !important;\r\n            }\r\n            .hashy-card-left {\r\n                width: 100% !important;\r\n                max-width: 460px !important;\r\n                gap: 24px !important;\r\n                align-items: center !important;           \/* center logo, title, CTA *\/\r\n                text-align: center !important;\r\n            }\r\n            .hashy-card-logo { height: 24px !important; }\r\n            .hashy-card-text-block {\r\n                gap: 20px !important;\r\n                align-items: center !important;\r\n                text-align: center !important;\r\n                width: 100% !important;\r\n            }\r\n            .hashy-card-title { font-size: 22px !important; line-height: 1.3 !important; text-align: center !important; }\r\n            .hashy-card-cta { font-size: 15px !important; padding: 11px 28px !important; align-self: center !important; }\r\n            .hashy-card-cta-spark svg { width: 16px !important; height: 17px !important; }\r\n\r\n            .hashy-card-right {\r\n                width: 100% !important;\r\n                max-width: 420px !important;\r\n                padding-bottom: 0 !important;\r\n                text-align: left !important;     \/* reset center inheritance\r\n                                                    so chat content stays\r\n                                                    left-aligned on mobile *\/\r\n            }\r\n            .hashy-card-chat-meta,\r\n            .hashy-card-chat-name,\r\n            .hashy-card-chat-role,\r\n            .hashy-bubble,\r\n            .hashy-stock-card,\r\n            .hashy-contact-card,\r\n            .hashy-doc-card { text-align: left !important; }\r\n            .hashy-banner-wrap.hashy-banner-wrap img.hashy-card-mascot,\r\n            .hashy-banner-stage.hashy-banner-stage img.hashy-card-mascot,\r\n            .hashy-card-mascot { width: 96px !important; height: auto !important; margin: 0 0 -22px !important; }\r\n            .hashy-card-chat-window { height: 232px !important; }\r\n            .hashy-card-chat-name { font-size: 14px !important; }\r\n            .hashy-card-chat-role { font-size: 10.5px !important; }\r\n            .hashy-card-chat-avatar { width: 32px !important; height: 32px !important; }\r\n            .hashy-card-chat-avatar img { width: 28px !important; height: 28px !important; }\r\n            .hashy-bubble { font-size: 12.5px !important; padding: 8px 10px !important; max-width: 240px !important; }\r\n            .hashy-bubble-wide { width: auto !important; max-width: 260px !important; }\r\n            .hashy-bubble-doc { width: auto !important; max-width: 280px !important; padding: 8px 10px !important; }\r\n            .hashy-bubble-xlsx { width: auto !important; max-width: 260px !important; }\r\n            .hashy-bubble-attendance { width: auto !important; max-width: 260px !important; }\r\n            .hashy-msg-avatar { width: 30px !important; height: 30px !important; }\r\n            .hashy-msg, .hashy-msg.is-outgoing { padding-left: 14px !important; padding-right: 14px !important; }\r\n            .hashy-card-chat-stream { gap: 14px !important; }\r\n            .hashy-card-chat-dots span { width: 8px !important; height: 8px !important; }\r\n            .hashy-contact-card { width: 220px !important; }\r\n            .hashy-stock-card { width: 210px !important; }\r\n        }\r\n\r\n        @media (prefers-reduced-motion: reduce) {\r\n            .hashy-card-deco,\r\n            .hashy-card-mascot,\r\n            .hashy-bubble-typing .hashy-dot { animation: none !important; }\r\n            .hashy-card-cta:hover { transform: none !important; filter: none !important; }\r\n            .hashy-msg, .hashy-card-chat-stream { transition: opacity .2s ease !important; transform: none !important; }\r\n        }\r\n    <\/style>\r\n\r\n    <script>\r\n        \/* Sequential message reveal with chat-loading indicator.\r\n           For each real message the JS injects a temporary typing bubble\r\n           in the matching side, animates it for ~1100ms, then fades it\r\n           out and reveals the actual bubble. The stream glides upward\r\n           when the new content would push past the visible body. *\/\r\n        (function () {\r\n            var TYPING_MS = 1100;   \/\/ how long the dots pulse before bubble appears\r\n            var FADE_MS   = 320;    \/\/ typing-row collapse duration\r\n            var GAP_MS    = 1700;   \/\/ pause after bubble is shown, before next typing\r\n            var LOOP_PAUSE = 2500;  \/\/ pause at end of conversation before restart loop\r\n\r\n            function startHashyChat(stream) {\r\n                if (!stream || stream.dataset.hashyChatStarted === \"1\") return;\r\n                stream.dataset.hashyChatStarted = \"1\";\r\n                var body = stream.parentElement;\r\n                var msgs = Array.prototype.slice.call(stream.querySelectorAll(\".hashy-msg\"));\r\n                if (!msgs.length) return;\r\n\r\n                var avatarHashy = stream.dataset.avatarHashy || \"\";\r\n                var avatarUser  = stream.dataset.avatarUser  || \"\";\r\n\r\n                function makeTyping(isIncoming) {\r\n                    var row = document.createElement(\"div\");\r\n                    row.className = \"hashy-msg hashy-typing-row \" + (isIncoming ? \"is-incoming\" : \"is-outgoing\");\r\n                    var bubble =\r\n                        '<div class=\"hashy-bubble hashy-bubble-typing ' +\r\n                        (isIncoming ? 'hashy-bubble-white' : 'hashy-bubble-purple') +\r\n                        '\"><span class=\"hashy-dot\"><\/span><span class=\"hashy-dot\"><\/span><span class=\"hashy-dot\"><\/span><\/div>';\r\n                    var avatar = isIncoming\r\n                        ? '<img decoding=\"async\" class=\"hashy-msg-avatar\" src=\"' + avatarHashy + '\" alt=\"\" width=\"40\" height=\"40\">'\r\n                        : '<img decoding=\"async\" class=\"hashy-msg-avatar hashy-msg-avatar-bordered\" src=\"' + avatarUser + '\" alt=\"\" width=\"40\" height=\"40\">';\r\n                    row.innerHTML = isIncoming ? avatar + bubble : bubble + avatar;\r\n                    return row;\r\n                }\r\n\r\n                function scrollIntoView(node) {\r\n                    requestAnimationFrame(function () {\r\n                        requestAnimationFrame(function () {\r\n                            var viewportH = body.clientHeight;\r\n                            var nodeBottom = node.offsetTop + node.offsetHeight;\r\n                            var currentY = parseFloat(\r\n                                (stream.style.transform.match(\/-?\\d+(?:\\.\\d+)?\/) || [0])[0]\r\n                            );\r\n                            var visibleBottom = -currentY + viewportH;\r\n                            if (nodeBottom > visibleBottom) {\r\n                                stream.style.transform = \"translateY(\" + (-node.offsetTop) + \"px)\";\r\n                            }\r\n                        });\r\n                    });\r\n                }\r\n\r\n                function reset() {\r\n                    stream.classList.add(\"no-transition\");\r\n                    msgs.forEach(function (m) { m.classList.remove(\"is-revealed\"); });\r\n                    Array.prototype.slice.call(stream.querySelectorAll(\".hashy-typing-row\")).forEach(function (n) {\r\n                        if (n.parentNode) n.parentNode.removeChild(n);\r\n                    });\r\n                    stream.style.transform = \"translateY(0)\";\r\n                    void stream.offsetWidth;\r\n                    stream.classList.remove(\"no-transition\");\r\n                }\r\n\r\n                var i = 0;\r\n                reset();\r\n\r\n                function tick() {\r\n                    if (i >= msgs.length) {\r\n                        setTimeout(function () { reset(); i = 0; setTimeout(tick, 800); }, LOOP_PAUSE);\r\n                        return;\r\n                    }\r\n                    var msg = msgs[i];\r\n                    var isIncoming = msg.classList.contains(\"is-incoming\");\r\n                    var typing = makeTyping(isIncoming);\r\n                    msg.parentNode.insertBefore(typing, msg);\r\n\r\n                    \/\/ Reveal typing on next frame for smooth fade-in\r\n                    requestAnimationFrame(function () {\r\n                        requestAnimationFrame(function () {\r\n                            typing.classList.add(\"is-revealed\");\r\n                            scrollIntoView(typing);\r\n                        });\r\n                    });\r\n\r\n                    setTimeout(function () {\r\n                        \/\/ Fade typing out, then reveal real message in its slot\r\n                        typing.classList.add(\"is-fading\");\r\n                        setTimeout(function () {\r\n                            if (typing.parentNode) typing.parentNode.removeChild(typing);\r\n                            msg.classList.add(\"is-revealed\");\r\n                            scrollIntoView(msg);\r\n                            i++;\r\n                            setTimeout(tick, GAP_MS);\r\n                        }, FADE_MS);\r\n                    }, TYPING_MS);\r\n                }\r\n\r\n                tick();\r\n            }\r\n\r\n            document.addEventListener(\"DOMContentLoaded\", function () {\r\n                document.querySelectorAll(\".hashy-card-chat-stream\").forEach(startHashyChat);\r\n            });\r\n        })();\r\n    <\/script>\n<h3>4. Improve operations and layout<\/h3>\n<p>Reduce movement and streamline processes. Efficient layouts support faster production. This improves overall flow.<\/p>\n<h3>5. Start with a pilot program<\/h3>\n<p>Test JIT on a small scale first. Monitor results and refine processes. Then expand gradually.<\/p>\n<h3><strong><span style=\"font-size: 27px;\">Common Pitfalls and How to Avoid Them<\/span><\/strong><\/h3>\n<p data-start=\"8401\" data-end=\"8542\">Despite its benefits, just in time inventory requires careful management. Without proper planning, disruptions can quickly affect operations.<\/p>\n<p data-start=\"8544\" data-end=\"8748\">External disruptions can impact supply chains without warning. Delays affect production and delivery timelines. Therefore, businesses should diversify suppliers and consider local sourcing to reduce risk.<\/p>\n<p data-start=\"8750\" data-end=\"8940\">Quality issues can also create major setbacks. Defective materials stop production when no backup stock exists. For this reason, suppliers must meet strict quality standards before delivery.<\/p>\n<p data-start=\"8942\" data-end=\"9127\">Forecasting errors present another challenge. Sudden demand changes can lead to shortages or delays. Businesses should use data insights and maintain strong communication between teams.<\/p>\n<p data-start=\"9129\" data-end=\"9294\">Regular reviews and flexible planning help address these risks. Companies that monitor performance closely can adapt quickly. This improves resilience and stability.<\/p>\n<h2><strong>Advanced JIT Practices: The Future of Lean Inventory<\/strong><\/h2>\n<p data-start=\"9358\" data-end=\"9522\">Just in time inventory continues to evolve as businesses adopt new technologies. Companies now combine lean principles with advanced systems for <a href=\"https:\/\/www.hashmicro.com\/au\/blog\/inventory-management\/\">smarter stock management <\/a>and better performance.<\/p>\n<p data-start=\"9524\" data-end=\"9698\">Artificial intelligence improves demand forecasting accuracy. It analyses large data sets and predicts trends earlier. Therefore, businesses can plan with greater confidence.<\/p>\n<p data-start=\"9700\" data-end=\"9869\">Automation also enhances operational speed and accuracy. Machines handle repetitive tasks efficiently, which reduces errors. As a result, processes become more reliable.<\/p>\n<p data-start=\"9871\" data-end=\"10052\">Businesses also adopt hybrid inventory models to balance risk. They combine JIT with limited buffer stock for critical items. This improves stability without sacrificing efficiency.<\/p>\n<p data-start=\"10054\" data-end=\"10189\" data-is-last-node=\"\" data-is-only-node=\"\">These advancements help companies stay competitive. By adapting to change, businesses build stronger and more responsive supply chains.<\/p>\n<h2 data-section-id=\"8dtpi\" data-start=\"64\" data-end=\"77\"><strong>Conclusion<\/strong><\/h2>\n<p data-start=\"79\" data-end=\"290\">Just in time inventory helps businesses reduce excess stock, improve cash flow, and run more efficient operations. By aligning supply with real demand, companies avoid waste and respond faster to market changes.<\/p>\n<p data-start=\"292\" data-end=\"608\">However, JIT requires strong supplier coordination and accurate data. Businesses must balance efficiency with risk to stay consistent. You can <a href=\"https:\/\/www.hashmicro.com\/au\/free-product-tour\/\">consult our experts<\/a> to assess and improve your JIT implementation.<\/p>\n<p data-start=\"292\" data-end=\"608\"><span data-sheets-root=\"1\"><a href=\"https:\/\/www.hashmicro.com\/au\/inventory?medium=moneysite-banner\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" width=\"712\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/06\/Inventory.webp\" alt=\"Inventory Management\"><\/a><\/span><\/p>\n<p data-start=\"3234\" data-end=\"4208\"><h2 class=\"faqTitle\">Frequently Asked Question<\/h2>\r\n<style>\r\n\t#main-article p.faqTitle{\r\n\t\ttext-align: center;\r\n\t\tmargin-bottom: 0;\r\n\t\tmargin-top: 50px;\r\n\t\tfont-weight: bold;\r\n\t}\r\n\t\r\n\t.accordion-wrapper{\r\n\t\tbackground-color: white;\r\n\t\tborder: 1px solid #9c171e;\r\n\t\tborder-radius: 6px;\r\n\t\ttransition: 0.4s ease;\r\n\t\tmargin-bottom: 20px;\r\n\t\toverflow: hidden;\r\n\t}\r\n\t\r\n\t.header-faq{\r\n\t\tdisplay: flex;\r\n\t\tborder: none;\r\n\t\tborder-radius: 6px 6px 6px 6px;\r\n\t\tbackground: #FFF;\r\n\t\talign-items: center;\r\n\t\tpadding: 18px;\r\n\t\ttransition: 0.4s;\r\n\t\tcursor: pointer;\r\n\t\tjustify-content: space-between;\r\n\t}\r\n\t\r\n\t.header-faq p{\r\n\t\tmargin-bottom: 0;\r\n\t}\r\n\t\r\n\t.question {\r\n\t\tcolor: #3C3C3C;\r\n\t\twidth: 100%;\r\n\t\ttext-align: left;\r\n\t\tfont-size: 16px;\r\n\t\tline-height: 20px;\r\n\t \ttransition: 0.4s;\r\n\t\tborder: none;\r\n\t\tborder-radius: 6px 6px 6px 6px;\r\n\t\tbackground: #FFF;\r\n\t\tpadding: 0;\r\n\t\ttext-transform: uppercase;\r\n\t\tfont-weight: 700;\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: space-between;\r\n\t\talign-items: center;\r\n\t}\r\n\r\n\t.header-faq.active {\r\n\t  background-color: #FFF;\r\n\t}\r\n\t\r\n\tbutton.question{\r\n\t\tcolor: unset;\r\n\t\tbackground-color: unset;\r\n\t}\r\n\t\r\n\tbutton.question::after{\r\n\t\tcontent: \"<\";\r\n\t\twidth: 2.2rem;\r\n\t\theight: 2.2rem;\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: center;\r\n\t\talign-items: center;\r\n\t\tborder-radius: 50%;\r\n\t\tcolor: #FFF;\r\n\t\tflex-shrink: 0;\r\n\t\tfloat: right;\r\n\t\ttransition: 0.4s;\r\n\t\topacity: 0.4;\r\n\t\tposition: relative;\r\n\t\ttransform: rotate(-90deg);\r\n\t\tbackground-color: #9c171e;\r\n\t\tfont-family: monospace;\r\n\t}\r\n\r\n\t.answer {\r\n\t  padding: 0 18px;\r\n\t  max-height: 0;\r\n\t  overflow: hidden;\r\n\t  background-color: white;\r\n\t  border-radius: 0 0 6px 6px;\r\n\t  transition: max-height 0.4s ease, opacity 0.4s ease;\r\n\t  opacity: 0;\r\n\t}\r\n\r\n\t.answer p{\r\n\t\tfont-size: 16px;\r\n\t\tfont-weight: 400;\r\n\t\tline-height: 28px;\r\n\t\ttext-align: left;\r\n\t\ttext-transform: none;\r\n\t\tcolor: #494949;\r\n\t}\r\n\t\r\n\t.accordion-wrapper.active{\r\n\t\tbox-shadow: 0px 0px 20px 0px #4034AB38;\r\n\t}\r\n\t\r\n\t.header-faq.active .accordion-icon .vLine{\r\n\t\ttransform: translateX(-50%) rotate(0deg);\r\n\t}\r\n\r\n\t.header-faq.active + .answer {\r\n\t  opacity: 1;\r\n\t}\r\n\t\r\n\t.header-faq.active button.question::after{\r\n\t\ttransform: rotate(90deg);\r\n\t\topacity: 1;\r\n\t}\r\n\t\r\n\t.header-faq:hover button.question::after{\r\n\t\topacity: 1;\r\n\t}\r\n\t\r\n\t.faq-h3-addition {\r\n\t\tmargin: 0 !important;\r\n\t\tpadding-right: 15px;\r\n\t\tmin-width: 0;\r\n\t}\r\n<\/style>\r\n\r\n    <div class=\"accordion-wrapper\">\r\n        <div class=\"header-faq\">\r\n            <button class=\"question\">What is just in time inventory?<\/button>\r\n        <\/div>\r\n        <div class=\"answer\">\r\n            <p>Just in time inventory is a system where businesses receive goods only when needed for production or sales. This reduces storage costs and improves cash flow.<\/p>\r\n        <\/div>\r\n    <\/div>\r\n    <div class=\"accordion-wrapper\">\r\n        <div class=\"header-faq\">\r\n            <button class=\"question\">What are the main benefits of JIT?<\/button>\r\n        <\/div>\r\n        <div class=\"answer\">\r\n            <p>JIT lowers inventory costs, improves efficiency, and increases turnover. It also helps businesses reduce waste and optimise operations.<\/p>\r\n        <\/div>\r\n    <\/div>\r\n    <div class=\"accordion-wrapper\">\r\n        <div class=\"header-faq\">\r\n            <button class=\"question\">What risks come with JIT?<\/button>\r\n        <\/div>\r\n        <div class=\"answer\">\r\n            <p>The main risk is stockouts due to supply delays or demand spikes. Therefore, businesses must rely on accurate data and reliable suppliers.<\/p>\r\n        <\/div>\r\n    <\/div>\r\n    <div class=\"accordion-wrapper\">\r\n        <div class=\"header-faq\">\r\n            <button class=\"question\">Which industries benefit most from JIT?<\/button>\r\n        <\/div>\r\n        <div class=\"answer\">\r\n            <p>Industries with predictable demand, perishable goods, or high-value products benefit the most. Examples include manufacturing, retail, and food services.<\/p>\r\n        <\/div>\r\n    <\/div>\r\n    <div class=\"accordion-wrapper\">\r\n        <div class=\"header-faq\">\r\n            <button class=\"question\">How can businesses implement JIT successfully?<\/button>\r\n        <\/div>\r\n        <div class=\"answer\">\r\n            <p>Businesses should improve supplier relationships, use inventory management systems, and start with a small pilot program. This helps reduce risks during implementation.<\/p>\r\n        <\/div>\r\n    <\/div>\r\n\r\n<script>\r\n    function toggleAccordion() {\r\n        var acc = document.getElementsByClassName(\"header-faq\");\r\n        for (var i = 0; i < acc.length; i++) {\r\n            acc[i].addEventListener(\"click\", function() {\r\n                for (var j = 0; j < acc.length; j++) {\r\n                    if (acc[j] !== this && acc[j].classList.contains(\"active\")) {\r\n                        acc[j].classList.remove(\"active\");\r\n                        acc[j].closest('.accordion-wrapper').classList.remove('active');\r\n                        var panel = acc[j].nextElementSibling;\r\n                        panel.style.maxHeight = null;\r\n                    }\r\n                }\r\n\r\n                this.classList.toggle(\"active\");\r\n                var accordionWrapper = this.closest('.accordion-wrapper');\r\n                var panel = this.nextElementSibling;\r\n                if (this.classList.contains(\"active\")) {\r\n                    panel.style.maxHeight = panel.scrollHeight + \"px\";\r\n                    accordionWrapper.classList.add('active');\r\n                } else {\r\n                    panel.style.maxHeight = null;\r\n                    accordionWrapper.classList.remove('active');\r\n                }\r\n            });\r\n        }\r\n    }\r\n\r\n    document.addEventListener('DOMContentLoaded', toggleAccordion);\r\n<\/script>\r\n\r\n<!-- <script>\r\n    document.addEventListener('DOMContentLoaded', function() {\r\n        document.querySelectorAll('.header-faq .question').forEach(btn => {\r\n            const text = btn.textContent.trim();\r\n            const h3 = document.createElement('h3');\r\n            h3.textContent = text;\r\n            h3.className = \"faq-h3-addition\";\r\n            btn.textContent = '';\r\n            btn.appendChild(h3);\r\n        });\r\n    });\r\n<\/script> --><\/p>\n<p><script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [\n    {\n      \"@type\": \"Question\",\n      \"name\": \"What is just in time inventory?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Just in time inventory is a system where businesses receive goods only when needed for production or sales. This reduces storage costs and improves cash flow.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"What are the main benefits of JIT?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"JIT lowers inventory costs, improves efficiency, and increases turnover. It also helps businesses reduce waste and optimise operations.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"What risks come with JIT?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"The main risk is stockouts due to supply delays or demand spikes. Therefore, businesses must rely on accurate data and reliable suppliers.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Which industries benefit most from JIT?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Industries with predictable demand, perishable goods, or high-value products benefit the most, including manufacturing, retail, and food services.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"How can businesses implement JIT successfully?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Businesses should improve supplier relationships, use inventory management systems, and start with a small pilot program to reduce risks.\"\n      }\n    }\n  ]\n}\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Just in time inventory management helps businesses reduce excess stock and keep operations lean. Instead of storing large quantities, companies receive goods only when needed. As a result, they free up cash and reduce storage costs. This approach reflects Australian modern stock solutions, shifting inventory from a static asset into a continuous flow. Materials arrive [&hellip;]<\/p>\n","protected":false},"author":51,"featured_media":3040,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"tdm_status":"","tdm_grid_status":"","footnotes":""},"categories":[56],"tags":[],"class_list":{"0":"post-2175","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-inventory"},"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.6 (Yoast SEO v27.5) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Just in Time Inventory: How It Works and Why It Matters<\/title>\n<meta name=\"description\" content=\"Just in time inventory helps businesses reduce costs, improve cash flow, and streamline operations with demand-based stock management.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Just in Time Inventory: How It Works and Why It Matters\" \/>\n<meta property=\"og:description\" content=\"Just in time inventory helps businesses reduce costs, improve cash flow, and streamline operations with demand-based stock management.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/\" \/>\n<meta property=\"og:site_name\" content=\"HashMicro Australia\" \/>\n<meta property=\"article:published_time\" content=\"2026-04-23T09:45:06+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-05T06:46:59+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/Just-in-Time-Inventory-Hashmicro.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"400\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Isla Avery Young\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Isla Avery Young\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/just-in-time-inventory\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/just-in-time-inventory\\\/\"},\"author\":{\"name\":\"Isla Avery Young\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/#\\\/schema\\\/person\\\/d6c3d199b3a724e06ff32dfd866ebdc3\"},\"headline\":\"Just in Time Inventory: How It Works and Why It Matters\",\"datePublished\":\"2026-04-23T09:45:06+00:00\",\"dateModified\":\"2026-05-05T06:46:59+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/just-in-time-inventory\\\/\"},\"wordCount\":1906,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/just-in-time-inventory\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/Just-in-Time-Inventory-Hashmicro.webp\",\"articleSection\":[\"Inventory\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/just-in-time-inventory\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/just-in-time-inventory\\\/\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/just-in-time-inventory\\\/\",\"name\":\"Just in Time Inventory: How It Works and Why It Matters\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/just-in-time-inventory\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/just-in-time-inventory\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/Just-in-Time-Inventory-Hashmicro.webp\",\"datePublished\":\"2026-04-23T09:45:06+00:00\",\"dateModified\":\"2026-05-05T06:46:59+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/#\\\/schema\\\/person\\\/d6c3d199b3a724e06ff32dfd866ebdc3\"},\"description\":\"Just in time inventory helps businesses reduce costs, improve cash flow, and streamline operations with demand-based stock management.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/just-in-time-inventory\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/just-in-time-inventory\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/just-in-time-inventory\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/Just-in-Time-Inventory-Hashmicro.webp\",\"contentUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/Just-in-Time-Inventory-Hashmicro.webp\",\"width\":800,\"height\":400,\"caption\":\"Just In Time Inventory\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/just-in-time-inventory\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Just in Time Inventory: How It Works and Why It Matters\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/\",\"name\":\"HashMicro Australia\",\"description\":\"Business Management Blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/#\\\/schema\\\/person\\\/d6c3d199b3a724e06ff32dfd866ebdc3\",\"name\":\"Isla Avery Young\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/cropped-Isla-Avery-Young-WP-96x96.webp\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/cropped-Isla-Avery-Young-WP-96x96.webp\",\"contentUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/cropped-Isla-Avery-Young-WP-96x96.webp\",\"caption\":\"Isla Avery Young\"},\"description\":\"As a business development staff, I spend my time listening to the real problems teams face on the inventory and warehouse operations. It gives me a clear view of what businesses usually miss, where errors start, which handoffs break, and what visibility leaders need to stop firefighting. I share that perspective in my articles.\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/au\\\/blog\\\/author\\\/isla-avery-young\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Just in Time Inventory: How It Works and Why It Matters","description":"Just in time inventory helps businesses reduce costs, improve cash flow, and streamline operations with demand-based stock management.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/","og_locale":"en_US","og_type":"article","og_title":"Just in Time Inventory: How It Works and Why It Matters","og_description":"Just in time inventory helps businesses reduce costs, improve cash flow, and streamline operations with demand-based stock management.","og_url":"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/","og_site_name":"HashMicro Australia","article_published_time":"2026-04-23T09:45:06+00:00","article_modified_time":"2026-05-05T06:46:59+00:00","og_image":[{"width":800,"height":400,"url":"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/Just-in-Time-Inventory-Hashmicro.webp","type":"image\/webp"}],"author":"Isla Avery Young","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Isla Avery Young","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/#article","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/"},"author":{"name":"Isla Avery Young","@id":"https:\/\/www.hashmicro.com\/au\/blog\/#\/schema\/person\/d6c3d199b3a724e06ff32dfd866ebdc3"},"headline":"Just in Time Inventory: How It Works and Why It Matters","datePublished":"2026-04-23T09:45:06+00:00","dateModified":"2026-05-05T06:46:59+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/"},"wordCount":1906,"commentCount":0,"image":{"@id":"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/Just-in-Time-Inventory-Hashmicro.webp","articleSection":["Inventory"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/","url":"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/","name":"Just in Time Inventory: How It Works and Why It Matters","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/au\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/Just-in-Time-Inventory-Hashmicro.webp","datePublished":"2026-04-23T09:45:06+00:00","dateModified":"2026-05-05T06:46:59+00:00","author":{"@id":"https:\/\/www.hashmicro.com\/au\/blog\/#\/schema\/person\/d6c3d199b3a724e06ff32dfd866ebdc3"},"description":"Just in time inventory helps businesses reduce costs, improve cash flow, and streamline operations with demand-based stock management.","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/#primaryimage","url":"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/Just-in-Time-Inventory-Hashmicro.webp","contentUrl":"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/04\/Just-in-Time-Inventory-Hashmicro.webp","width":800,"height":400,"caption":"Just In Time Inventory"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/au\/blog\/just-in-time-inventory\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/au\/blog\/"},{"@type":"ListItem","position":2,"name":"Just in Time Inventory: How It Works and Why It Matters"}]},{"@type":"WebSite","@id":"https:\/\/www.hashmicro.com\/au\/blog\/#website","url":"https:\/\/www.hashmicro.com\/au\/blog\/","name":"HashMicro Australia","description":"Business Management Blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.hashmicro.com\/au\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.hashmicro.com\/au\/blog\/#\/schema\/person\/d6c3d199b3a724e06ff32dfd866ebdc3","name":"Isla Avery Young","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/02\/cropped-Isla-Avery-Young-WP-96x96.webp","url":"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/02\/cropped-Isla-Avery-Young-WP-96x96.webp","contentUrl":"https:\/\/www.hashmicro.com\/au\/blog\/wp-content\/uploads\/2026\/02\/cropped-Isla-Avery-Young-WP-96x96.webp","caption":"Isla Avery Young"},"description":"As a business development staff, I spend my time listening to the real problems teams face on the inventory and warehouse operations. It gives me a clear view of what businesses usually miss, where errors start, which handoffs break, and what visibility leaders need to stop firefighting. I share that perspective in my articles.","url":"https:\/\/www.hashmicro.com\/au\/blog\/author\/isla-avery-young\/"}]}},"_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/au\/blog\/wp-json\/wp\/v2\/posts\/2175","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hashmicro.com\/au\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hashmicro.com\/au\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/au\/blog\/wp-json\/wp\/v2\/users\/51"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/au\/blog\/wp-json\/wp\/v2\/comments?post=2175"}],"version-history":[{"count":5,"href":"https:\/\/www.hashmicro.com\/au\/blog\/wp-json\/wp\/v2\/posts\/2175\/revisions"}],"predecessor-version":[{"id":4066,"href":"https:\/\/www.hashmicro.com\/au\/blog\/wp-json\/wp\/v2\/posts\/2175\/revisions\/4066"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/au\/blog\/wp-json\/wp\/v2\/media\/3040"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/au\/blog\/wp-json\/wp\/v2\/media?parent=2175"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/au\/blog\/wp-json\/wp\/v2\/categories?post=2175"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/au\/blog\/wp-json\/wp\/v2\/tags?post=2175"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}