PageSourceSearch

https://omnicard.in/_next/static/chunks/887-fee707764e6d3917.js

js omnicard.in collected 2026-10-02 07:30:45 UTC 49,520 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[887],{6284:(e,a,t)=>{t.d(a,{default:()=>o});var s=t(5155),l=t(2115),i=t(8089);function o(e){let{markup:a,scenes:t,withTicker:o=!1,solo:n=!1}=e,c=(0,l.useRef)(null),r=(0,l.useRef)(null);return(0,l.useEffect)(()=>{var e,a;let s=null!=(a=null==(e=c.current)?void 0:e.querySelector(".film"))?a:null;return(0,i.F)(s,{scenes:t,speed:.8,ticker:o?r.current:null})},[t,o]),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("div",{className:"wrap film-wrap".concat(n?" film-solo":""),ref:c,dangerouslySetInnerHTML:{__html:a}}),o&&(0,s.jsxs)("div",{className:"ticker","aria-label":"OmniCard activity today",children:[(0,s.jsxs)("div",{className:"tk-label",children:[(0,s.jsx)("span",{className:"dots"}),"OMNICARD AGENTS AT WORK TODAY"]}),(0,s.jsx)("div",{className:"tk-track",children:(0,s.jsx)("div",{className:"tk-run",ref:r})})]})]})}},7378:(e,a,t)=>{t.d(a,{EZ:()=>c,IP:()=>o,JO:()=>n,Lz:()=>p,eF:()=>m,nL:()=>d,nN:()=>r,zv:()=>l});let s=t(5704).env.NEXT_PUBLIC_SUPPORT_API||"https://api1.omnicard.co.in/opsAuth",l=["Expense Management","Motion","iFleet Pay","Reimburse360","FASTag","Flexi Benefits Basket","Other"];async function i(e,a,t){try{let l=a instanceof FormData,i=await fetch(s+e,{method:"POST",headers:l?void 0:{"Content-Type":"application/json"},body:l?a:JSON.stringify(a)}),o=await i.json().catch(()=>({}));return{ok:i.ok&&o.status===t,message:o.message||""}}catch(e){return{ok:!1,message:""}}}function o(e){return i("/opsauth/addContacts",{b1:e.name.trim(),b2:e.phone.trim(),b3:e.email.trim(),b4:e.message.trim().slice(0,250),b5:e.company.trim(),b6:e.products},"SUC4001")}async function n(){try{let e=await fetch(s+"/support/getComplaintReasons",{method:"POST",headers:{"Content-Type":"application/json"},body:"{}"}),a=await e.json();return"SUC5001"===a.status?a.resultObj:[]}catch(e){return[]}}function c(e){return i("/support/raiseComplaint",{mobileNumber:e.mobile,emailId:e.email,reason:e.reason,trxnId:e.trxnId.trim(),description:e.description.trim(),requestFrom:e.fromApp?"APP":"WEB"},"SUC5001")}function r(e){return i("/support/deactivateAccount",{mobileNumber:e.mobile,emailId:e.email,fraudType:e.fraudType,requestFrom:e.fromApp?"APP":"WEB"},"SUC5001")}function d(e){let a=new FormData;return a.append("mobileNumber",e.mobile),a.append("emailId",e.email),a.append("incidentDetails",e.incident.trim()),a.append("trxnId",e.trxnId.trim()),a.append("time",e.time),a.append("amount",e.amount),a.append("bankStatement",e.file),a.append("fraudType",e.fromApp?"FROM_OMNI":e.fraudType),a.append("requestFrom",e.fromApp?"APP":"WEB"),i("/support/notifyFraud",a,"SUC5001")}let p=/^[6-9]\d{9}$/,m=/^[A-Za-z ]{2,50}$/},8089:(e,a,t)=>{function s(e,a){let t;if(!e||e.dataset.init)return()=>{};e.dataset.init="1",e.dataset.owner="\xa9 2026 Eroute Technologies Pvt. Ltd. (OmniCard) \xb7 omnicard.in \xb7 not licensed for reuse";let s=[],i=a.scenes,o=a.speed||1,n=a=>e.querySelector(a),c=n("#cam"),r=n("#tilt"),d=n(".phone"),p=n(".stage"),m=n("#filmScale"),v=n("#phone"),h=n("#cursor"),u=n("#toast"),f=[...e.querySelectorAll(".scenes button")],y=[10200,10800,11400,12400,7600,9600,13200,11800,14200],g=matchMedia("(prefers-reduced-motion: reduce)").matches,b=()=>{let e=m.clientWidth,a=m.clientHeight;if(e<700){let t=Math.max(a/620,e/1200);p.style.transform="translateX(".concat((e-1200*t)/2,"px) scale(").concat(t,")")}else p.style.transform="scale(".concat(e/1200,")")},w=new ResizeObserver(b);w.observe(m),b(),s.push(()=>w.disconnect());let x={wide:{f:[600,310,0],rx:22,ry:-16,rz:2,z:-40},phone:{f:[1020,320,150],rx:6,ry:-24,rz:0,z:150},dash:{f:[380,250,0],rx:14,ry:12,rz:-1,z:120},receipt:{f:[770,350,0],rx:10,ry:-12,rz:0,z:190},fields:{f:[470,290,0],rx:12,ry:8,rz:0,z:170},erp:{f:[470,300,0],rx:14,ry:10,rz:-1,z:110},bills2:{f:[720,310,40],rx:8,ry:-12,rz:0,z:90},flow:{f:[770,300,0],rx:8,ry:-14,rz:0,z:260},cards:{f:[120,470,240],rx:16,ry:18,rz:-2,z:120},over:{f:[1215,290,110],rx:5,ry:14,rz:0,z:150},trail:{f:[430,400,0],rx:14,ry:10,rz:-1,z:170},shield:{f:[1200,290,120],rx:6,ry:16,rz:-1,z:140},control:{f:[660,330,40],rx:24,ry:-16,rz:2,z:-70}};function k(e,a){let t=x[e];a&&(c.style.transitionDuration=a+"ms"),c.style.transform=g?"":"translateZ(".concat(t.z,"px) rotateX(").concat(t.rx,"deg) rotateY(").concat(t.ry,"deg) rotateZ(").concat(t.rz,"deg) translate3d(").concat(600-t.f[0],"px,").concat(310-t.f[1],"px,").concat(-t.f[2],"px)"),a&&setTimeout(()=>c.style.transitionDuration="",a),n(".rcards").classList.toggle("tuck",!["wide","cards","control"].includes(e))}e.addEventListener("pointermove",a=>{if(g)return;let t=e.getBoundingClientRect();r.style.setProperty("--mx",((a.clientX-t.left)/t.width-.5)*6+"deg"),r.style.setProperty("--my",-(4*((a.clientY-t.top)/t.height-.5))+"deg")}),e.addEventListener("pointerleave",()=>{r.style.setProperty("--mx","0deg"),r.style.setProperty("--my","0deg")});let S=0,L=0,A=!0,M=(e,a)=>new Promise((t,s)=>setTimeout(()=>a===S?t():s("stop"),e*o)),C={fuel:{av:"RM",c:"#EE3B31",t:"Highway Fuels, Pune",s:"Fuel \xb7 ₹2,450"},wine:{av:"KJ",c:"#7C5CFF",t:"Metro Wines, Andheri",s:"Liquor \xb7 ₹1,900"}
1,km:{av:"AR",c:"#0EA5E9",t:"Mileage \xb7 Anita Rao",s:"58.4 km \xb7 ₹584"},store:{av:"KJ",c:"#7C5CFF",t:"Store supplies \xb7 Kunal Joshi",s:"Store 07 \xb7 ₹850"}};function E(e){n("#rowsNeed").innerHTML=e.map(e=>{let a=C[e.key];return'<div class="row'.concat(e.sel?" sel":"").concat(e.enter?" enter":"",'" data-k="').concat(e.key,'"><span class="av" style="--c:').concat(a.c,'">').concat(a.av,"</span><div><b>").concat(a.t,"</b><small>").concat(a.s,'</small></div><em class="st ').concat(e.cls||"",'">').concat(e.st,"</em></div>")}).join("")}function P(e,a){let t=n("#dStatus");t.textContent=e,t.className="chip-s "+(a||"")}function T(a){let t="fuel"===a;n("#dCrumb").textContent=t?"Expense \xb7 Field Sales":"Expense \xb7 Store Ops",n("#dTitle").textContent=t?"Highway Fuels, Pune":"Metro Wines, Andheri",n("#dAmt").textContent=t?"₹2,450.00":"₹1,900.00";let s=t?["Rahul Mehta \xb7 Field Sales","UPI \xb7 OmniCard wallet","Fuel","Pune Branch \xb7 1042","5102 \xb7 Conveyance","Read by OCR \xb7 matches UPI"]:["Kunal Joshi \xb7 Store 07","UPI \xb7 OmniCard wallet","Liquor \xb7 restricted","Store 07 \xb7 Andheri","—","—"];e.querySelectorAll("#dFields label").forEach((e,a)=>{let t=e.querySelector("span");t.dataset.v=s[a],t.textContent="",t.className="",e.classList.remove("fill")}),n("#dTrail").style.display=t?"":"none",e.querySelectorAll(".t-step").forEach(e=>e.classList.remove("done"))}function F(a){e.querySelectorAll("#dFields label").forEach((e,t)=>{t<a&&(e.querySelector("span").textContent=e.querySelector("span").dataset.v)})}function B(a){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1];e.querySelector('.t-step[data-s="'.concat(a,'"]')).classList.toggle("done",t)}function H(e){n("#receipt").classList.toggle("show",e),n("#docEmpty").style.opacity=+!e}function q(e){n("#docEmpty").textContent=e}let z=n(".doc"),I=document.createElement("div");async function N(e,a,t,s){let l=arguments.length>4&&void 0!==arguments[4]?arguments[4]:n("#receipt"),i=document.createElement("div");i.className="ocr-box",i.style.cssText="left:".concat(e.offsetLeft-4,"px;top:").concat(e.offsetTop-3,"px;width:").concat(e.offsetWidth+8,"px;height:").concat(e.offsetHeight+6,"px"),i.innerHTML="<b>".concat(a," \xb7 ").concat(t,"%</b>"),l.appendChild(i),await M(420,s),i.classList.add("done")}I.className="ocr-panel",I.innerHTML='<h6>EXTRACTED BY OCR</h6><div><span>Merchant</span><span>Highway Fuels</span></div><div><span>Date</span><span>25 Sep 2026</span></div><div><span>Item</span><span>Diesel \xb7 26.4 L</span></div><div><span>Amount</span><span>₹2,450.00</span></div><p class="match">✓ Matches UPI debit of ₹2,450</p>',z.appendChild(I);let O=n("#erp");function R(e){O.classList.toggle("on",!!e),O.querySelectorAll("[data-jv]").forEach(e=>e.classList.remove("in")),n("#erpBar").style.transition="none",n("#erpBar").style.width="0",n("#erpBar").offsetWidth,n("#erpBar").style.transition="",n("#erpStatus").textContent="Ready to post 1 voucher",n("#erpStatus").className="erp-status",n("#erpBtn").textContent="Push to Tally",n("#erpBtn").classList.remove("done"),O.querySelector(".pipe").classList.remove("go")}let D=n(".win"),j=(e,a)=>{let t=document.createElement("div");return t.className=e,t.innerHTML=a,c.appendChild(t),t},U=j("obj standee3d",'<b id="stName">HIGHWAY FUELS</b><div class="st-qr"></div><small>BHIM UPI \xb7 Scan &amp; pay</small><i class="st-foot"></i>'),W=j("obj paper3d",'<div class="pp" data-o="MERCHANT"><b>HIGHWAY FUELS</b><small>NH-48, Pune \xb7 Pump #2</small></div>\n    <div class="pp" data-o="DATE"><span>25/09/2026</span><span>10:42 AM</span></div>\n    <div class="pp" data-o="ITEM"><span>Diesel \xb7 26.4 L</span><span>₹2,450.00</span></div>\n    <div class="pp"><span>Rate / L</span><span>₹92.80</span></div>\n    <div class="pp" data-o="AMOUNT"><span><b>TOTAL</b></span><span><b>₹2,450.00</b></span></div>\n    <div class="pp muted"><span>UPI \xb7 4128 9931 0457</span></div><i class="pscan"></i>'),G=j("beam",""),K=j("shield",'<svg viewBox="0 0 24 24" width="30" height="30"><path d="M12 2l8 3v6c0 5-3.4 9.4-8 11-4.6-1.6-8-6-8-11V5z" fill="none" stroke="#fff" stroke-width="2"/><path d="M8.5 8.5l7 7M15.5 8.5l-7 7" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg><b>Blocked by policy</b><small>Liquor \xb7 restricted category</small>'),Y='<i class="s-ic ok">✓</i>',V='<i class="s-ic ai"><em></em><em></em><em></em><em></em></i>',X='<i class="s-ic wa"></i>',_='<i class="s-ic bell">!</i>',Z={};for(let[e,[a,t,s,l,i]]of Object.entries({merchant:[1300,58,150,-20,"".concat(Y,"<div><b>Verified merchant</b><small>Highway Fuels \xb7 MCC 5541 \xb7 Fuel</small></div>")],policy:[560,330,210,6,'<div class="s-col"><small class="s-k">FUEL POLICY \xb7 FIELD SALES</small><b>₹2,450 of ₹3,000 today</b><div class="s-bar"><i></i></div><small class="s-ok">Within limit \xb7 auto-approved</small></div>
1'],wallet:[1250,420,170,-16,'<div class="s-col"><small class="s-k">COMPANY WALLET \xb7 PUNE</small><b class="s-num" data-from="48200" data-to="45750">₹48,200</b><small>−₹2,450 \xb7 UPI \xb7 just now</small></div>'],aiCat:[1500,140,120,-18,"".concat(V,"<div><b>Category \xb7 Fuel</b><small>AI confidence 96%</small></div>")],aiGl:[1510,215,120,-18,"".concat(V,"<div><b>GL 5102 \xb7 Conveyance</b><small>Mapped from policy</small></div>")],dup:[1500,290,120,-18,"".concat(Y,"<div><b>Duplicate check</b><small>No match in last 90 days</small></div>")],gst:[1510,365,120,-18,"".concat(Y,"<div><b>Tax \xb7 GST not applicable</b><small>Fuel is outside GST</small></div>")],wa1:[1215,90,150,-14,"".concat(X,'<div><b>OmniCard Approvals</b><small>Rahul Mehta \xb7 Fuel \xb7 ₹2,450<br>Highway Fuels \xb7 within policy</small><span class="s-btns"><em id="waApprove">✓ Approve</em><em>Reject</em></span></div>')],wa2:[1235,250,140,-14,"".concat(X,"<div><b>OmniCard Approvals</b><small>Kunal Joshi \xb7 Store supplies \xb7 ₹850</small></div>")],wa3:[1255,340,130,-14,"".concat(X,"<div><b>OmniCard Approvals</b><small>Vikram S \xb7 FASTag \xb7 ₹310 \xb7 MH12</small></div>")],sap:[905,70,140,-8,'<b class="s-logo" style="--c:#0A6ED1">SAP</b>'],oracle:[925,170,170,-8,'<b class="s-logo" style="--c:#C74634">Oracle</b>'],zoho:[905,290,150,-8,'<b class="s-logo" style="--c:#E42527">Zoho</b>'],dyn:[930,400,120,-8,'<b class="s-logo" style="--c:#0B53CE">Dynamics</b>'],bank:[900,150,170,-10,"".concat(Y,"<div><b>Bank feed matched</b><small>IDFC First \xb7 UPI 4128…0457</small></div>")],gstl:[900,250,170,-10,"".concat(Y,"<div><b>Cost centre updated</b><small>Pune Branch \xb7 Sep spend ₹1.8 L</small></div>")],geo:[1300,60,150,-20,'<div class="s-col"><small class="s-k">GEO-FENCE \xb7 FIELD SALES</small><b>Highway Fuels zone \xb7 200 m</b><small>Card &amp; UPI work only inside approved zones</small></div>'],geoOk:[1320,440,150,-20,"".concat(Y,"<div><b>Payments unlocked</b><small>Entered zone 10:38 \xb7 auto-locks on exit</small></div>")],odoS:[1280,36,150,-20,'<i class="s-ic cam">▣</i><div><b>Odometer start \xb7 18,240 km</b><small>Photo verified \xb7 09:05</small></div>'],odoE:[1235,418,150,-20,'<i class="s-ic cam">▣</i><div><b>Odometer end \xb7 18,298 km</b><small>Photo verified \xb7 13:41</small></div>'],kmNum:[1560,30,140,-20,'<div class="s-col"><small class="s-k">DISTANCE \xb7 GPS</small><b class="s-big" id="kmNum">0.0 km</b><small>3 client visits \xb7 own car</small></div>'],kmMatch:[1505,392,140,-20,"".concat(Y,"<div><b>GPS 58.4 km \xb7 odometer 58 km</b><small>Matched within 1%</small></div>")],kmCalc:[1490,468,160,-20,'<div class="s-col"><small class="s-k">MILEAGE \xb7 POLICY BAND B</small><b>58.4 km \xd7 ₹10/km = ₹584</b><small class="s-ok">Auto-calculated \xb7 no claim form</small></div>'],apRule:[900,140,150,-10,'<div class="s-col"><small class="s-k">AUTOPAY RULE \xb7 ALL LOCATIONS</small><b>Pay 2 days before due</b><small>Up to ₹25,000 per bill \xb7 from each branch\'s wallet<br>Above cap → branch head approves</small></div>'],apFile:[910,290,140,-10,"".concat(Y,"<div><b>BBPS receipts auto-filed</b><small>Tagged to branch cost centre \xb7 synced to ERP</small></div>")],apHold:[900,400,150,-10,"".concat(_,"<div><b>1 bill held for approval</b><small>Tata Power \xb7 HQ BKC \xb7 ₹48,200 &gt; ₹25,000 cap</small></div>")],fRule:[900,120,160,-10,'<div class="s-col"><small class="s-k">AUTO TOP-UP RULE \xb7 1,240 VEHICLES</small><b>Below ₹500 → top up to ₹5,000</b><small>From the fleet wallet or UPI AutoPay on any bank \xb7 no driver cash</small></div>'],fBlk:[910,280,150,-10,"".concat(Y,"<div><b>0 tags blacklisted</b><small>KYC &amp; balance checked daily</small></div>")],fToll:[1290,60,150,-20,'<i class="s-ic toll">⛉</i><div><b>MH12 KT 7781 \xb7 −₹465</b><small>Khed Shivapur \xb7 6-axle \xb7 11:24</small></div>'],fRoute:[1330,440,150,-20,'<div class="s-col"><small class="s-k">TOLL SPEND \xb7 PUNE → BENGALURU</small><b>₹1,640,200 this month</b><small>180 trucks \xb7 2,960 crossings \xb7 per-trip in MIS</small></div>'],tagLow:[1300,60,150,-20,"".concat(_,"<div><b>FASTag balance ₹180</b><small>Below ₹500 threshold \xb7 MH12 AB 4410</small></div>")],tagRe:[1320,380,160,-20,"".concat(Y,"<div><b>Auto-recharged ₹2,000</b><small>From Fleet wallet \xb7 10:02</small></div>")],toll:[1330,465,150,-20,'<i class="s-ic toll">⛉</i><div><b>Khed Shivapur toll \xb7 −₹125</b><small>MH12 AB 4410 \xb7 10:12 \xb7 posted to trip</small></div>'],alert:[1310,400,140,-18,"".concat(_,"<div><b>Finance alerted</b><small>Store 07 \xb7 liquor purchase attempt</small></div>")],audit:[1330,480,120,-18,'<div class="s-col"><small class="s-k">AUDIT LOG \xb7 10:48 AM</small><b>Policy P-12 \xb7 Restricted MCC 5921</b><small>Blocked before debit \xb7 ₹0 moved</small></div>']})){let o=j("sat"+(i.startsWith('<b class="s-logo')?" sat-logo":""),i);o.style.setProperty("--t","translate3d(".concat(a,"px,").concat(t,"px,").concat(s,"px) rotateY(").concat(l,"deg)")),Z[e]=o}function J(e){let a=!(arguments.length>1)||void 0===arguments[1]||arguments[1];for(let t of[].concat(e))Z[t].classList.toggle("on",a)}
1function Q(){Object.values(Z).forEach(e=>e.classList.remove("on"))}async function $(e,a,t){for(let s of e)J(s),await M(a,t)}function ee(e,a,t,s,l){s*=o;let i=performance.now();return new Promise(o=>{let n=c=>{let r=Math.min(1,(c-i)/s);e.textContent=l(a+(t-a)*r),r<1?requestAnimationFrame(n):o()};requestAnimationFrame(n)})}let ea=j("obj map3d",'<svg viewBox="0 0 330 260"><rect width="330" height="260" rx="14" fill="#F3EEEA"/>\n      <g fill="#E6DED9"><rect x="30" y="20" width="70" height="50" rx="6"/><rect x="120" y="20" width="60" height="40" rx="6"/><rect x="250" y="30" width="60" height="60" rx="6"/><rect x="30" y="100" width="60" height="70" rx="6"/><rect x="250" y="170" width="60" height="70" rx="6"/><rect x="110" y="200" width="80" height="45" rx="6"/></g>\n      <path d="M0 250 C 80 240, 110 170, 160 150 S 250 100, 330 90" fill="none" stroke="#fff" stroke-width="16" stroke-linecap="round"/>\n      <path d="M200 0 C 210 80, 230 150, 240 260" fill="none" stroke="#fff" stroke-width="12"/>\n      <circle class="zone" cx="228" cy="112" r="56"/><circle class="zone-core" cx="228" cy="112" r="6"/>\n      <text x="228" y="182" text-anchor="middle" class="zone-t">HIGHWAY FUELS ZONE</text></svg>\n      <div class="m-pin" style="offset-path:path(\''.concat("M20 240 C 80 232, 110 170, 160 150 S 215 120, 228 112",'\')"><i></i></div><div class="map-chip" id="geoChip">\uD83D\uDD12 Outside approved zone \xb7 1.2 km</div>')),et="M24 226 C 70 220, 70 150, 120 140 S 170 60, 220 70 S 300 120, 306 40",es=j("obj map3d mot",'<svg viewBox="0 0 330 260"><rect width="330" height="260" rx="14" fill="#F3EEEA"/>\n      <g fill="#E6DED9"><rect x="20" y="20" width="80" height="60" rx="6"/><rect x="150" y="160" width="90" height="70" rx="6"/><rect x="250" y="160" width="60" height="70" rx="6"/><rect x="40" y="110" width="50" height="60" rx="6"/></g>\n      <path d="'.concat(et,'" fill="none" stroke="#fff" stroke-width="14" stroke-linecap="round"/>\n      <path class="m-route" d="').concat(et,'" fill="none"/>\n      <g class="stops"><circle cx="24" cy="226" r="7"/><circle cx="120" cy="140" r="7"/><circle cx="220" cy="70" r="7"/><circle cx="306" cy="40" r="7"/></g></svg>\n      <div class="m-car" style="offset-path:path(\'').concat(et,'\')"><i></i></div><div class="map-chip">Trip TRP-2290 \xb7 Anita Rao \xb7 own car</div>')),el=j("obj fastag3d",'<div class="ft-l"><b>FASTag</b><small>Powered by OmniCard</small><div class="ft-bar"></div></div><div class="ft-r"><small>VEHICLE</small><b>MH12 AB 4410</b><small>CLASS \xb7 VC4 \xb7 Tata Ace</small><small class="ft-bal">Balance <b id="tagBal">₹180</b></small></div>'),ei=j("obj plaza3d",'<div class="pz-sky"></div><div class="pz-sign"><b>KHED SHIVAPUR TOLL PLAZA</b><small>NH-48 \xb7 FASTag lanes</small></div>\n      <div class="pz-gantry"><i class="pz-reader"></i></div><div class="pz-booth"></div><div class="pz-arm"></div><div class="pz-road"><i></i></div>\n      <div class="pz-truck" id="truck"><svg viewBox="0 0 150 70"><rect x="2" y="8" width="96" height="44" rx="4" fill="#fff" stroke="#1F1715" stroke-width="2"/><rect x="2" y="36" width="96" height="6" fill="#EE3B31"/>\n      <text x="50" y="30" text-anchor="middle" font-family="Plus Jakarta Sans,sans-serif" font-weight="800" font-size="12" fill="#1F1715">OmniCard Fleet</text>\n      <path d="M100 18h26l18 18v16h-44z" fill="#EE3B31"/><path d="M106 22h18l12 13h-30z" fill="#BFE3F5"/><rect x="0" y="52" width="148" height="6" rx="2" fill="#3A302D"/>\n      <circle cx="22" cy="60" r="8" fill="#1F1715"/><circle cx="44" cy="60" r="8" fill="#1F1715"/><circle cx="122" cy="60" r="8" fill="#1F1715"/><circle cx="22" cy="60" r="3" fill="#aaa"/><circle cx="44" cy="60" r="3" fill="#aaa"/><circle cx="122" cy="60" r="3" fill="#aaa"/></svg><span class="pz-plate">MH12 KT 7781</span></div>\n      <div class="pz-read" id="pzRead">FASTag read ✓</div>');function eo(e){U.classList.toggle("in","standee"===e),W.classList.toggle("in","paper"===e),ea.classList.toggle("in","geo"===e),es.classList.toggle("in","motion"===e),el.classList.toggle("in","tag"===e),ei.classList.toggle("in","plaza"===e)}function en(e){d.classList.toggle("aim",e),D.classList.toggle("dim",e)}function ec(e,a){G.className="beam"+(e?" on "+a:"")}let er=e=>{let a=e.offsetWidth/2,t=e.offsetHeight/2;
1for(let s=e;s&&s!==c;s=s.offsetParent)a+=s.offsetLeft,t+=s.offsetTop;return[a,t]},ed=[1046,300,160];async function ep(e,a,t,s,l){let i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"",n=s*=o,c=j("token "+i,e),r=function(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return"translate3d(".concat(e[0],"px,").concat(e[1],"px,").concat(e[2],"px) translate(-50%,-50%) scale(").concat(a,")")};c.style.transform=r(a,.6),c.style.opacity=0,await M(30,l);let d=[(a[0]+t[0])/2,Math.min(a[1],t[1])-70,Math.max(a[2],t[2])+160];return c.style.transition="transform ".concat(s/2,"ms cubic-bezier(.3,.7,.4,1),opacity .25s"),c.style.opacity=1,c.style.transform=r(d,1.15),await M(n/2/o,l),c.style.transition="transform ".concat(s/2,"ms cubic-bezier(.6,0,.8,.4),opacity .3s"),c.style.transform=r(t,.9),await M(n/2/o,l),c.classList.add("land"),setTimeout(()=>c.remove(),450),c}let em=n("#bills");function ev(e){em.classList.toggle("on",!!e),em.querySelectorAll(".bt-row").forEach(e=>{e.className="bt-row",e.querySelector(".bt-st").textContent="Fetched"}),["#bsBr","#bsBi","#bsAp"].forEach(e=>n(e).textContent="0"),n("#bsDue").textContent="₹0",n("#blPay").textContent="Enable autopay for all",n("#blPay").classList.remove("done"),n("#blTotal").textContent="Auto-fetch from BBPS \xb7 every morning, all locations"}let eh=n("#fleet"),eu={"MH12 KT 7781":"340","MH12 AB 4410":"180","KA05 MN 3312":"420"};function ef(e){eh.classList.toggle("on",!!e),eh.querySelectorAll(".ft-row").forEach(e=>{e.classList.remove("in","ok","hit");let a=eu[e.dataset.v];a&&(e.classList.add("low"),e.querySelector(".ft-bal b").textContent=a,e.querySelector(".ft-st").textContent="Low balance")}),n("#fwBal").textContent="₹18,640,000",n("#fwToll").textContent="₹4,891,280",n("#fwLow").textContent="3",n("#fwTop").textContent="Auto top-up low tags",n("#fwTop").classList.remove("done");let a=n("#truck");a.style.transition="none",a.style.transform="translateX(-170px)",ei.classList.remove("up","read")}function ey(e,a){u.innerHTML="<i></i>".concat(e),u.className="toast show"+(a?" bad":""),clearTimeout(t),t=setTimeout(()=>u.classList.remove("show"),2600)}function eg(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";v.innerHTML='<div class="ps '.concat(a,'">').concat(e,"</div>")}function eb(){h.classList.remove("show")}async function ew(a,t){let s=e.querySelector(a);if(!s)return;let l=.55*s.offsetWidth,i=.5*s.offsetHeight;for(let e=s;e&&e!==c;e=e.offsetParent)l+=e.offsetLeft,i+=e.offsetTop;let o=s.closest(".phone")||s.closest(".sat")?152:2;h.classList.add("show"),h.style.transform="translate3d(".concat(l,"px,").concat(i,"px,").concat(o,"px)"),await M(950,t),h.classList.remove("click"),h.offsetWidth,h.classList.add("click"),s.classList.add("press"),await M(180,t),s.classList.remove("press")}let ex=(()=>{let e=[],a=7,t=()=>(a=16807*a%0x7fffffff)/0x7fffffff;for(let a=0;a<25;a++)for(let s=0;s<25;s++){let l=(e,t)=>s>=e&&s<e+7&&a>=t&&a<t+7;!(l(0,0)||l(18,0)||l(0,18))&&t()>.52&&e.push("M".concat(s," ").concat(a,"h1v1h-1z"))}let s=(e,a)=>'<path d="M'.concat(e," ").concat(a,"h7v7h-7z M").concat(e+1," ").concat(a+1,'v5h5v-5z" fill-rule="evenodd"/><path d="M').concat(e+2," ").concat(a+2,'h3v3h-3z"/>');return'<svg viewBox="-1 -1 27 27"><rect x="-1" y="-1" width="27" height="27" fill="#fff"/><g fill="#1F1715">'.concat(s(0,0)).concat(s(18,0)).concat(s(0,18),'<path d="').concat(e.join(""),'"/></g></svg>')})();U.querySelector(".st-qr").innerHTML=ex;let ek={home:'<div class="hm">\n      <div class="hm-top"><i class="hm-menu"><b></b><b></b><b></b></i><span class="hm-id"><img src="/img/glyph.svg" alt="">567429</span><i class="hm-ic"><svg viewBox="0 0 24 24"><path d="M11 4a7 7 0 1 0 0 14 7 7 0 0 0 0-14zM20 20l-4-4"/></svg></i><i class="hm-ic hm-bell"><svg viewBox="0 0 24 24"><path d="M6 16V11a6 6 0 1 1 12 0v5l2 2H4zM10 20a2 2 0 0 0 4 0"/></svg><em>3</em></i></div>\n      <div class="hm-band"><div class="hm-card"><img class="hm-g" src="/img/glyph.svg" alt=""><div class="hm-cd"><small>****&nbsp; 4410</small><span>Rahul Mehta</span><b>₹ 48,200.00 <i>↻</i></b></div><span class="hm-add">Add<br>Money</span><span class="hm-tr">
1TRANSIT</span></div></div>\n      <div class="hm-upi"><i class="hm-upi-ic"></i>UPI ID : rahul.sales@omni<i class="hm-cp"></i><em>›</em></div>\n      <div class="hm-key"><i class="hm-fob"></i><b>₹2,055 <i>↺</i></b><span>Add Money</span></div>\n      <div class="hm-box">\n        <h6>Quick Actions</h6>\n        <div class="hm-grid"><span><i><svg viewBox="0 0 24 24"><path d="M12 5v9M8 9l4-4 4 4M6 19h12"/></svg></i>Pay</span><span><i><svg viewBox="0 0 24 24"><path d="M4 8V5h3M17 5h3v3M20 16v3h-3M7 19H4v-3M8 8h3v3H8zM13 13h3v3h-3zM13 8h3M8 16h3"/></svg></i>Scan &amp; Pay</span><span><i><svg viewBox="0 0 24 24"><path d="M3 14h18v4H3zM6 14l2-5h8l2 5M7 18v2M17 18v2"/></svg></i>FASTag</span><span><i><svg viewBox="0 0 24 24"><path d="M6 4h12a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2zM4 11h16M8 20l2-3M16 20l-2-3"/></svg></i>Transit</span></div>\n        <div class="hm-rb"><h6>Recharge &amp; Bills</h6><em>View More</em></div>\n        <div class="hm-grid"><span><i class="bbps">B</i>Bill Pay</span><span><i><svg viewBox="0 0 24 24"><path d="M9 18h6M10 21h4M12 3a6 6 0 0 0-4 10.5c.7.7 1 1.5 1 2.5h6c0-1 .3-1.8 1-2.5A6 6 0 0 0 12 3z"/></svg></i>Electricity</span><span><i><svg viewBox="0 0 24 24"><path d="M8 3h8a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM11 18h2"/></svg></i>Mobile</span><span><i><svg viewBox="0 0 24 24"><path d="M4 18l16-6M6 6a10 10 0 0 1 12 12M9 9a6 6 0 0 1 6 6"/></svg></i>DTH</span></div>\n      </div>\n      <div class="hm-nav"><span class="on"><i><svg viewBox="0 0 24 24"><path d="M4 11l8-7 8 7v9h-5v-6H9v6H4z"/></svg></i>Home</span><span><i><svg viewBox="0 0 24 24"><path d="M3 6h18v12H3zM3 10h18"/></svg></i>Cards</span><span class="hm-scan"><i id="qaScan"><svg viewBox="0 0 24 24"><path d="M5 9V5h4M15 5h4v4M19 15v4h-4M9 19H5v-4M9 9h2v2H9zM13 13h2v2h-2z"/></svg></i></span><span><i><svg viewBox="0 0 24 24"><path d="M4 10h16v10H4zM2 7h20v3H2zM12 7v13M12 7c-2-4-6-3-5 0M12 7c2-4 6-3 5 0"/></svg></i>Offers</span><span><i><svg viewBox="0 0 24 24"><path d="M6 3h12v18H6zM9 8h6M9 12h6M9 16h3"/></svg></i>History</span></div>\n    </div>',scan:'<span class="muted">Scan any UPI QR</span><h5>Scan &amp; Pay</h5>\n      <div class="viewfinder"><div class="standee"><b>HIGHWAY FUELS</b>'.concat(ex,'<small>BHIM UPI \xb7 Scan &amp; pay</small></div>\n      <div class="brackets" id="brk"><i></i><i></i><i></i><i></i></div><div class="laser" id="laser"></div><div class="qr-hit" id="qrHit">UPI QR detected</div></div>\n      <div class="muted center">Paying from OmniCard \xb7 Company wallet</div>'),pay:'<span class="muted">Scan &amp; pay \xb7 UPI</span><h5>Paying</h5>\n      <div class="to"><span class="av" style="--c:#EE3B31">HF</span><div><b>Highway Fuels</b><div class="muted">highwayfuels@okaxis</div></div></div>\n      <div class="amt">₹2,450</div><div class="muted center">From: OmniCard \xb7 Company wallet</div>\n      <div class="muted center">Fuel policy \xb7 ₹3,000/day</div>\n      <div class="btn-p" id="payBtn">Pay ₹2,450</div>',pin:'<span class="muted">Enter UPI PIN</span><h5>₹2,450 to Highway Fuels</h5><div class="pin"><i></i><i></i><i></i><i></i><i></i><i></i></div>',paid:'<div class="ok-big"><svg width="30" height="30" viewBox="0 0 20 20"><path d="M5 10.5l3.2 3.2L15 7" fill="none" stroke="#fff" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"/></svg></div>\n      <h5 class="center">Paid ₹2,450</h5><div class="muted center">Highway Fuels, Pune \xb7 UPI</div><div class="muted center" style="margin-top:8px">Attach the bill to close this expense</div>\n      <div class="btn-p" id="snapBtn">Snap receipt</div>',appCam:'<div class="oa-h"><i>←</i><b>Add expense</b></div><div class="cam" id="vf"><div class="frame"></div><div class="receipt-mini"><p><b>HIGHWAY FUELS</b></p><p>25/09/2026 10:42</p><p>Diesel 26.4 L</p><p>Total ₹2,450.00</p></div></div><div class="muted center" id="vfHint">Hold steady \xb7 auto-capture</div>',appOcr:'<div class="oa-h"><i>←</i><b>Add expense</b></div>\n      <div class="oa-photo"><div class="receipt-mini"><p><b>HIGHWAY FUELS</b></p><p>25/09/2026 10:42</p><p>Diesel 26.4 L</p><p>Total ₹2,450.00</p></div><i class="oa-scan"></i><span class="oa-tag" id="oaTag">Reading bill…</span></div>\n      <div class="oa-card" id="oaFields">\n        <div class="oa-f"><span>Merchant</span><b>Highway Fuels</b><em>99%</em></div>\n        <div class="oa-f"><span>Date</span><b>25 Sep 2026</b><em>98%</em></div>\n        <div class="oa-f"><span>Item</span><b>Diesel \xb7 26.4 L</b><em>97%</em></div>\n        <div class="oa-f"><span>
1Amount</span><b>₹2,450.00</b><em>99%</em></div>\n      </div>\n      <div class="oa-ai" id="oaAi"><span>Fuel \xb7 AI 96%</span><span>GL 5102</span><span class="ok">✓ Matches UPI ₹2,450</span></div>\n      <div class="btn-p" id="ocrSubmit">Submit expense</div>',appSync:'<div class="oa-h"><i>←</i><b>Add expense</b></div>\n      <div class="oa-sync"><div class="oa-ring"><i></i></div><b id="syncT">Syncing to OmniCard</b><span class="muted" id="syncS">Bill photo + 4 fields \xb7 encrypted</span><div class="oa-bar"><i id="syncBar"></i></div></div>\n      <div class="oa-logo"><img src="/img/logo.svg" alt="OmniCard"></div>',appDone:'<div class="oa-top"><span class="muted">EXPENSE SUBMITTED</span><h5>₹2,450.00</h5><span class="muted">Highway Fuels, Pune \xb7 25 Sep</span></div>\n      <div class="oa-card"><div class="oa-f"><span>Expense ID</span><b>EXP-20931</b></div><div class="oa-f"><span>Sent to</span><b>Priya Shah \xb7 L1</b></div><div class="oa-f"><span>Status</span><b class="ok">Awaiting approval</b></div></div>\n      <div class="oa-logo"><img src="/img/logo.svg" alt="OmniCard"></div><div class="btn-p">Done</div>',approve:'<span class="muted">Manager \xb7 Priya Shah</span><h5>Approvals (1)</h5>\n      <div class="appr"><b>Rahul Mehta \xb7 Fuel</b><span class="muted">Highway Fuels, Pune \xb7 ₹2,450</span><span class="tagv">Within policy</span><span class="tagv">Bill read by OCR</span><span class="tagv">Receipt matched</span></div>\n      <div class="btn-p" id="apprBtn">Approve</div>',approved:'<div class="ok-big"><svg width="30" height="30" viewBox="0 0 20 20"><path d="M5 10.5l3.2 3.2L15 7" fill="none" stroke="#fff" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"/></svg></div><h5 class="center">Approved</h5><div class="muted center">Queued for posting to Tally</div>',closed:'<div class="ok-big"><svg width="30" height="30" viewBox="0 0 20 20"><path d="M5 10.5l3.2 3.2L15 7" fill="none" stroke="#fff" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"/></svg></div><h5 class="center">Expense closed</h5><div class="muted center">₹2,450 posted to the books</div><div class="appr" style="margin-top:14px"><b>No claim to file</b><span class="muted">Paid from the company wallet, so there is nothing to reimburse.</span></div>',locked:'<span class="muted">OmniCard \xb7 Rahul Mehta</span><h5>Payments</h5>\n      <div class="lockcard"><img src="/img/card-omni-red.webp" alt=""><span class="lk">\uD83D\uDD12</span></div>\n      <div class="state-pill bad" id="geoState">Locked \xb7 outside approved zone</div><div class="muted center">Nearest zone: Highway Fuels, Pune \xb7 1.2 km</div>',motion:'<span class="muted">OmniCard Motion</span><h5>Trip in progress</h5>\n      <div class="mo-km"><b id="moKm">0.0</b><span>km</span></div><div class="muted center">Anita Rao \xb7 3 client visits \xb7 own car</div>\n      <div class="appr"><b>Stops</b><span class="muted">✓ Wakad office \xb7 ✓ Hinjewadi Ph-2 \xb7 ✓ Baner client</span></div><div class="btn-p" id="endTrip">End trip</div>',motionDone:'<div class="ok-big"><svg width="30" height="30" viewBox="0 0 20 20"><path d="M5 10.5l3.2 3.2L15 7" fill="none" stroke="#fff" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"/></svg></div><h5 class="center">Trip closed \xb7 58.4 km</h5><div class="muted center">Mileage ₹584 added \xb7 no claim to file</div>',declined:'<div class="ok-big bad-big"><svg width="28" height="28" viewBox="0 0 20 20"><path d="M6 6l8 8M14 6l-8 8" fill="none" stroke="#fff" stroke-width="2.6" stroke-linecap="round"/></svg></div>\n      <h5 class="center">Payment declined</h5><div class="muted center">Metro Wines \xb7 ₹1,900</div><div class="muted center" style="margin-top:10px">Liquor is a restricted category under your company\'s spend policy.</div>'};function eS(a){var t;t=[0,0,1,2,2,3,3,3,4][a],u.classList.remove("show"),eb(),h.style.transform="translate3d(760px,580px,2px)",d.classList.remove("away"),eo(""),Q(),en(!1),ec(!1),K.classList.remove("on"),c.querySelectorAll(".token").forEach(e=>
1e.remove()),W.querySelectorAll(".ocr-box").forEach(e=>e.remove()),W.classList.remove("scanning"),n("#stName").textContent=4===t?"METRO WINES":"HIGHWAY FUELS",T("fuel"),H(!1),e.querySelectorAll(".ocr-box").forEach(e=>e.remove()),I.classList.remove("on"),R(!1),q("Receipt will appear here"),0===t&&(E([]),P("Awaiting payment",""),eg(ek.scan,"scan-ps")),1===t&&(E([{key:"fuel",st:"Receipt due",cls:"wait",sel:1}]),P("Within policy","ok"),F(2),B("policy"),eg(ek.paid)),2===t&&(E([{key:"fuel",st:"Approval",cls:"wait",sel:1}]),P("Awaiting approval",""),F(6),B("policy"),H(!0),eg(ek.approve)),3===t&&(E([{key:"fuel",st:"Approved",cls:"ok",sel:1}]),P("Approved","ok"),F(6),B("policy"),B("l1"),H(!0),eg(ek.approved)),4===t&&(E([{key:"fuel",st:"Posted",cls:"ok"}]),P("Posted","ok"),F(6),B("policy"),B("l1"),B("post"),H(!0),eg(ek.pay)),ev(!1),ef(!1),ea.querySelector(".m-pin").classList.remove("go"),ea.classList.remove("inside"),n("#geoChip").textContent="\uD83D\uDD12 Outside approved zone \xb7 1.2 km",es.classList.remove("go"),el.classList.remove("ok"),n("#tagBal").textContent="₹180",0===a&&eg(ek.locked),3===a&&(E([{key:"fuel",st:"Approval",cls:"wait"}]),eg(ek.motion)),4===a&&(E([{key:"fuel",st:"Approval",cls:"wait",sel:1},{key:"store",st:"Approval",cls:"wait"}]),eg(ek.appDone)),(5===a||6===a)&&E([{key:"fuel",st:"Approved",cls:"ok",sel:1},{key:"km",st:"Approved",cls:"ok"}]),7===a&&E([{key:"fuel",st:"Approved",cls:"ok",sel:1},{key:"store",st:"Approved",cls:"ok"}])}let eL=[async e=>{k("cards",1100),await M(1300,e),eo("geo"),en(!0),k("over"),J("geo"),await M(1300,e),ea.querySelector(".m-pin").classList.add("go"),n("#geoChip").textContent="Approaching zone…",await M(2300,e),ea.classList.add("inside"),n("#geoChip").textContent="✓ Inside Highway Fuels zone";let a=v.querySelector("#geoState");a.textContent="Enabled \xb7 inside Highway Fuels zone",a.className="state-pill ok",v.querySelector(".lockcard").classList.add("on"),J("geoOk"),ey("Geo-fence: card & UPI unlocked on arrival \xb7 locks again on exit"),await M(2600,e)},async e=>{for(let a of(eg(ek.home,"home-ps"),k("phone"),await M(900,e),await ew("#qaScan",e),eb(),eg(ek.scan,"scan-ps"),eo("standee"),en(!0),k("over"),await M(900,e),ec(!0,"qr"),await M(700,e),J("merchant"),v.querySelector("#laser").classList.add("off"),v.querySelector("#brk").classList.add("lock"),v.querySelector("#qrHit").classList.add("on"),await M(700,e),ec(!1),en(!1),eo(""),J("merchant",!1),k("phone"),eg(ek.pay),await M(400,e),await ew("#payBtn",e),eg(ek.pin),v.querySelectorAll(".pin i")))await M(80,e),a.classList.add("f");await M(200,e),eb(),eg(ek.paid),J("wallet"),function(e){let a=+e.dataset.from,t=+e.dataset.to,s=performance.now(),l=i=>{let o=Math.min(1,(i-s)/900);e.textContent="₹"+Math.round(a+(t-a)*o).toLocaleString("en-US"),o<1&&requestAnimationFrame(l)};requestAnimationFrame(l)}(Z.wallet.querySelector(".s-num")),await M(800,e),J("wallet",!1),k("dash",1200),await ep('<i class="tk-dot"></i>₹2,450 \xb7 UPI \xb7 Highway Fuels',ed,[...er(n("#rowsNeed")),0].map((e,a)=>1===a?e+18:e),1100,e,"money"),E([{key:"fuel",st:"Checking",sel:1,enter:1}]),P("Checking policy…",""),F(2),J("policy"),await M(700,e),P("Within policy","ok"),B("policy"),E([{key:"fuel",st:"Receipt due",cls:"wait",sel:1}]),ey("Policy check passed \xb7 fuel within ₹3,000/day limit"),await M(1400,e),J("policy",!1)},async a=>{k("phone"),await M(700,a),await ew("#snapBtn",a),eb(),eg(ek.appCam),eo("paper"),await M(250,a),en(!0),k("over"),await M(900,a),ec(!0,"paper"),W.classList.add("scanning"),await M(600,a);let t=[...v.querySelectorAll("#vf .receipt-mini p")],s=[["MERCHANT","Merchant",99],["DATE","Date",98],["ITEM","Item",97],["AMOUNT","Total",99]];for(let e=0;e<s.length;e++)t[e].classList.add("hl"),await N(W.querySelector('.pp[data-o="'.concat(s[e][0],'"]')),s[e][1],s[e][2],a,W);W.classList.remove("scanning"),ec(!1),v.querySelector("#vf").classList.add("flash"),v.querySelector("#vfHint").textContent="Captured ✓ \xb7 4 fields read",await M(600,a),en(!1),eo(""),k("phone"),eg(ek.appOcr),await M(300,a),v.querySelector(".oa-photo").classList.add("reading");let l=[...v.querySelectorAll(".oa-photo .receipt-mini p")],i=[...v.querySelectorAll(".oa-f")];for(let e=0;e<i.length;e++)l[e].classList.add("hl"),await M(250,a),i[e].classList.add("in");for(let e of(v.querySelector(".oa-photo").classList.remove("reading"),v.querySelector("#oaTag").textContent="Read by OCR ✓",await M(200,a),v.querySelector("#oaAi").classList.add("in"),await M(700,a),await ew("#ocrSubmit",a),eb(),eg(ek.appSync),v.querySelector("#syncBar").style.width="100%",k("receipt",1200),await ep('<i class="tk-doc"></i>EXP-20931 \xb7 bill + 4 fields',ed,[...er(n("#receipt")),0],1200,a,"doc"),H(!0),I.classList.add("on"),I.querySelectorAll("div,p").forEach(e
1=>e.style.opacity=0),I.querySelectorAll("div,p")))e.style.opacity=1,await M(120,a);eg(ek.appDone),await M(200,a),k("fields"),await M(300,a);for(let t=2;t<6;t++){let s=e.querySelectorAll("#dFields label")[t];s.classList.add("fill"),F(t+1),await M(200,a),s.classList.remove("fill")}E([{key:"fuel",st:"Approval",cls:"wait",sel:1}]),P("Awaiting approval",""),ey("Expense EXP-20931 synced \xb7 OCR by app \xb7 sent to Priya Shah for approval"),await M(1400,a)},async a=>{eo("motion"),en(!0),k("over"),J("odoS"),await M(1300,a),es.classList.add("go"),J("kmNum"),await Promise.all([ee(v.querySelector("#moKm"),0,58.4,3e3,e=>e.toFixed(1)),ee(e.querySelector("#kmNum"),0,58.4,3e3,e=>e.toFixed(1)+" km")]),en(!1),await ew("#endTrip",a),eb(),J("odoE"),await M(700,a),J("kmMatch"),await M(600,a),J("kmCalc"),await M(1200,a),eg(ek.motionDone),Q(),eo(""),k("dash",1500),await ep('<i class="tk-dot"></i>Mileage ₹584 \xb7 58.4 km',[1400,420,160],[...er(n("#rowsNeed")),0].map((e,a)=>1===a?e+40:e),1400,a,"money"),E([{key:"fuel",st:"Approval",cls:"wait"},{key:"km",st:"Approval",cls:"wait",sel:1,enter:1}]),ey("Mileage auto-calculated from GPS \xb7 odometer photos matched"),await M(1800,a)},async a=>{k("over"),await M(700,a),await $(["wa3","wa2","wa1"],380,a),await M(500,a),await ew("#waApprove",a),eb(),Z.wa1.classList.add("done"),eg(ek.approved),await M(700,a),Q(),k("trail",1400),await ep("✓ Approved \xb7 Priya Shah",[...er(Z.wa1).map((e,a)=>e+0),150],[...er(e.querySelector('.t-step[data-s="l1"]')),0],1300,a,"ok"),B("l1"),P("Approved","ok"),E([{key:"fuel",st:"Approved",cls:"ok",sel:1}]),ey("Approved by Priya Shah \xb7 queued for ERP"),await M(2400,a)},async e=>{ev(!0),d.classList.add("away"),k("erp"),await M(900,e);let a=e=>Math.round(e).toLocaleString("en-US");for(let t of(ee(n("#bsBr"),0,2140,1900,a),ee(n("#bsBi"),0,6380,1900,a),ee(n("#bsDue"),0,42e6,1900,e=>"₹"+(e/1e6).toFixed(1)+"M"),em.querySelectorAll(".bt-row")))t.classList.add("in"),await M(230,e);n("#blTotal").textContent="6,380 bills fetched from BBPS \xb7 2,140 locations \xb7 06:00 today",await M(600,e),await ew("#blPay",e),eb(),k("bills2",1300),J("apRule");let t=[...em.querySelectorAll(".bt-row")];for(let s of(ee(n("#bsAp"),0,6379,1400,a),t)){let a="₹48,200"===s.querySelector(".bt-amt").textContent;s.classList.add(a?"hold":"on"),s.querySelector(".bt-st").textContent=a?"Needs approval":"Autopay \xb7 2 days before",await M(190,e)}for(let a of(n("#blPay").textContent="Autopay on \xb7 6,379 bills",n("#blPay").classList.add("done"),J("apHold"),await M(700,e),t.slice(0,2)))a.classList.add("paid"),a.querySelector(".bt-st").textContent="Paid today ✓",await M(300,e);J("apFile"),ey("Autopay scheduled for 6,379 bills across 2,140 locations \xb7 1 held for approval"),await M(2e3,e),J(["apRule","apHold","apFile"],!1)},async e=>{for(let a of(ef(!0),d.classList.add("away"),k("erp"),await M(900,e),eh.querySelectorAll(".ft-row")))a.classList.add("in"),await M(200,e);await M(500,e),await ew("#fwTop",e),eb(),k("bills2",1200),J("fRule");let a=e=>Math.round(e).toLocaleString("en-US");for(let t of eh.querySelectorAll(".ft-row.low")){let s=t.querySelector(".ft-bal b");ee(s,+s.textContent.replace(/,/g,""),5e3,700,a),t.classList.remove("low"),t.classList.add("ok"),t.querySelector(".ft-st").textContent="Auto-recharged",await M(320,e)}ee(n("#fwBal"),1864e4,0x11c360c,900,e=>"₹"+a(e)),n("#fwLow").textContent="0",n("#fwTop").textContent="3 tags topped up \xb7 ₹13,940",n("#fwTop").classList.add("done"),J("fBlk"),await M(1200,e),J(["fRule","fBlk"],!1),eo("plaza"),k("over"),await M(1e3,e);let t=n("#truck");t.style.transition="transform 1.4s cubic-bezier(.3,.6,.3,1)",t.style.transform="translateX(-6px)",await M(1400,e),ei.classList.add("read"),J("fToll"),await M(500,e),ei.classList.add("up"),await M(500,e),t.style.transition="transform 1.3s cubic-bezier(.5,0,.8,.6)",t.style.transform="translateX(430px)",k("erp",1500);let s=eh.querySelector('.ft-row[data-v="MH12 KT 7781"]');await ep("⛉ −₹465 \xb7 MH12 KT 7781",[1400,260,90],[...er(s.querySelector(".ft-bal")),0],1400,e,"money"),ee(s.querySelector(".ft-bal b"),5e3,4535,500,a),s.classList.add("hit"),s.querySelector(".ft-st").textContent="Toll \xb7 11:24",ee(n("#fwToll"),4891280,4891745,500,e=>"₹"+a(e)),J("fRoute"),eo(""),Q(),ey("Toll −₹465 posted to MH12 KT 7781 \xb7 trip & route cost updated"),await M(2200,e),J("fRoute",!1)},async e=>{for(let a of(R(!0),d.classList.add("away"),k("erp"),await M(900,e),$(["sap","oracle","zoho","dyn"],160,e).cat
1ch(()=>{}),await M(400,e),O.querySelectorAll("[data-jv]")))a.classList.add("in"),await M(300,e);await ew("#erpBtn",e),eb(),n("#erpBtn").textContent="Posting…",O.querySelector(".pipe").classList.add("go"),n("#erpStatus").textContent="Pushing voucher to Tally Prime…",n("#erpBar").style.width="100%",k("flow",1500),await ep('<i class="tk-doc"></i>Voucher PV-10482 \xb7 ₹2,450',[...er(n(".jv")),30],[...er(n(".node.tally")),0],1500,e,"doc"),O.querySelector(".pipe").classList.remove("go"),n("#erpStatus").textContent="✓ Posted \xb7 Voucher PV-10482 \xb7 0.8 s",n("#erpStatus").classList.add("ok"),n("#erpBtn").textContent="Posted",n("#erpBtn").classList.add("done"),B("post"),P("Posted to Tally","ok"),E([{key:"fuel",st:"Posted",cls:"ok",sel:1}]),J(["sap","oracle","zoho","dyn"],!1),await M(250,e),await $(["bank","gstl"],350,e),await M(900,e),J(["bank","gstl"],!1),eg(ek.closed),d.classList.remove("away"),k("wide"),ey("Posted to Tally Prime \xb7 Dr Conveyance / Cr Wallet \xb7 receipt attached"),await M(2400,e)},async e=>{eg(ek.scan.replace("HIGHWAY FUELS","METRO WINES"),"scan-ps"),k("wide",900),await M(900,e),eo("standee"),en(!0),k("over"),await M(1200,e),ec(!0,"qr"),await M(1300,e),v.querySelector("#laser").classList.add("off"),v.querySelector("#brk").classList.add("lock"),v.querySelector("#qrHit").classList.add("on"),await M(600,e),ec(!1),eg(eA()),await ew("#payBtn",e),eb(),k("shield",900),K.classList.add("on");let a=[er(K)[0]-10,er(K)[1],150];await ep("₹1,900 \xb7 Metro Wines",ed,a,900,e,"money bad");let t=j("token money bad bounce","₹1,900 \xb7 Metro Wines");t.style.transform="translate3d(".concat(a[0],"px,").concat(a[1],"px,").concat(a[2],"px) translate(-50%,-50%)"),setTimeout(()=>t.remove(),900),eg(ek.declined),await M(500,e),await $(["alert","audit"],400,e),await M(900,e),en(!1),eo(""),Q(),K.classList.remove("on"),k("control"),E([{key:"wine",st:"Blocked",cls:"bad",sel:1,enter:1},{key:"fuel",st:"Posted",cls:"ok"}]),T("wine"),F(6),P("Blocked at source","bad"),H(!1),q("No receipt needed: no money left the wallet"),ey("Restricted category blocked before payment",!0),await M(3200,e)}],eA=()=>ek.pay.replace(/Highway Fuels/g,"Metro Wines").replace("highwayfuels@okaxis","metrowines@ybl").replace(/₹2,450/g,"₹1,900").replace("Fuel policy \xb7 ₹3,000/day","Category check on tap").replace('--c:#EE3B31">HF','--c:#7C5CFF">MW');async function eM(e){let a=++S;for(let t=e;;t=(t+1)%i.length){let e=i[t];L=t,eS(e),function(e,a){f.forEach((t,s)=>{let l=t.querySelector("i");t.classList.toggle("on",s===e),t.setAttribute("aria-selected",s===e),l.style.transition="none",l.style.width=s<e?"100%":"0",s===e&&(l.offsetWidth,l.style.transition="width ".concat(a,"ms linear"),l.style.width="100%")})}(t,y[e]*o);try{await eL[e](a)}catch(e){return}if(a!==S)return}}function eC(e){L=e,eS(i[e]),f.forEach((a,t)=>{a.classList.toggle("on",t===e),a.querySelector("i").style.width=t===e?"100%":"0"})}if(f.forEach((e,a)=>e.addEventListener("click",()=>g?eC(a):eM(a))),g)eC(0);else{k("wide",1),A=!1;let a=new IntersectionObserver(e=>{let[a]=e;a.isIntersecting&&!A?(A=!0,eM(L)):!a.isIntersecting&&A&&(A=!1,S++)},{threshold:.25});a.observe(e),s.push(()=>{a.disconnect(),S++})}return a.ticker&&s.push(l(a.ticker)),()=>{s.forEach(e=>e()),delete e.dataset.init}}function l(e){if(!e)return()=>{};let a=[["PAYMENTS TODAY",48e6,900,e=>"₹"+(e/1e6).toFixed(1)+"M"],["POLICY CHECKS RUN",182406,3],["RECEIPTS READ",41288,1],["CLAIMS APPROVED",16930,1],["BILLS PAID",5214,.3],["ERP ENTRIES POSTED",38872,1],["RESTRICTED SPENDS BLOCKED",1146,.08]].map(e=>{let[a,t,s,l]=e;return{k:a,v:t,r:s,f:l||(e=>Math.round(e).toLocaleString("en-US"))}}),t=()=>a.map(e=>"<div>".concat(e.k,": <b>").concat(e.f(e.v),"</b></div>")).join("");if(e.innerHTML=t()+t(),matchMedia("(prefers-reduced-motion: reduce)").matches)return()=>{};let s=setInterval(()=>{a.forEach(e=>e.v+=e.r*(.6+.8*Math.random())*1.5),e.querySelectorAll("b").forEach((e,t)=>{e.textContent=a[t%a.length].f(a[t%a.length].v)})},1500);return()=>clearInterval(s)}t.d(a,{F:()=>s,Z:()=>l})},8901:(e,a,t)=>{t.d(a,{N:()=>s,_:()=>l});let s="G-4PRZ55W3X2";function l(e){let a=window.gtag;"function"==typeof a&&a("event","generate_lead",{form:e})}},9464:(e,a,t)=>{t.r(a),t.d(a,{default:()=>n});var s=t(5155),l=t(2115),i=t(7378),o=t(8901);function n(e){let{id:a="cf",topic:t,submitLabel:n="Book a demo",messageLabel:c="How can we help?",compact:r,defaultProducts:d=[]}=e,[p,m]=(0,l.useState)({name:"",phone:"",email:"",company:"",message:""}),[v,h]=(0,l.useState)(d),[u,f]=(0,l.useState)({}),[y,g]=(0,l.useState)("idle"),[b,w]=(0,l.useState)("");(0,l.useEffect)(()=>{let e=e=>m(a=>({...a,email:e.detail}));return window.addEventListener("omni:prefill-email",e),()=>window.removeEventListener("omni:prefill-email",e)},[]);let x=e=>a=>m(t=>({...t,[e]:a.target.value}));async function k(e){e.preventDefault();let s={};if(i.eF.test(p.name.trim())||(s.name="Enter your full name (letters only)."),i.Lz.test(p.phone.trim())||(s.phone="Enter a 10-digit mobile number starting with 6–9."),/^[^@\s]+@[^@\s]+\.[a-z]{2,}$/i.test(p.email.trim())||(s.email="Enter a valid work email."),p.company.trim()||(s.company="Enter your company name."),t||0!==v.length||(s.products="Pick at least one product."),t||p.message.trim()||(s.message="Tell us a little about what you need."),f(s),Object.keys(s).length)return;g("sending");let l=await (0,i.IP)({...p,message:t?"".concat(t).concat(p.message?" — ".concat(p.message):""):p.message,products:t?["Other"]:v});w(l.message),l.ok&&(0,o._)(t?"ebook":"contact-form"===a?"contact":"demo"),g(l.ok?"sent":"error")}return"sent"===y?(0,s.jsxs)("div",{className:"cform sent",children:[(0,s.jsxs)("b",{children:["Thanks, ",p.name.split(" ")[0],"."]}),(0,s.jsx)("p",{children:t?"We'll email it to you shortly.":"Our team will reach out within one business day."})]}):(0,s.jsxs)("form",{className:"cform".concat(r?" compact":""),onSubmit:k,noValidate:!0,children:[(0,s.jsxs)("div",{className:"row",children:[(0,s.jsxs)("label",{htmlFor:"".concat(a,"-name"),children:["Full name",(0,s.jsx)("input",{id:"".concat(a,"-name"),autoComplete:"name",value:p.name,onChange:x("name"),"aria-invalid":!!u.name}),u.name&&(0,s.jsx)("small",{children:u.name})]}),(0,s.jsxs)("label",{htmlFor:"".concat(a,"-phone"),children:["Mobile number",(0,s.jsx)("input",{id:"".concat(a,"-phone"),type:"tel",inputMode:"numeric",maxLength:10,autoComplete:"tel-national",value:p.phone,onChange:x("phone"),"aria-invalid":!!u.phone}),u.phone&&(0,s.jsx)("small",{children:u.phone})]})]}),(0,s.jsxs)("div",{className:"row",children:[(0,s.jsxs)("label",{htmlFor:"".concat(a,"-email"),children:["Work email",(0,s.jsx)("input",{id:"".concat(a,"-email"),type:"email",autoComplete:"email",value:p.email,onChange:x("email"),"aria-invalid":!!u.email}),u.email&&(0,s.jsx)("small",{children:u.email})]}),(0,s.jsxs)("label",{htmlFor:"".concat(a,"-company"),children:["Company",(0,s.jsx)("input",{id:"".concat(a,"-company"),autoComplete:"organization",value:p.company,onChange:x("company"),"aria-invalid":!!u.company}),u.company&&(0,s.jsx)("small",{children:u.company})]})]}),!t&&(0,s.jsxs)("fieldset",{children:[(0,s.jsx)("legend",{children:"Interested in"}),(0,s.jsx)("div",{className:"chips2",children:i.zv.map(e=>(0,s.jsx)("button",{type:"button",className:v.includes(e)?"on":"","aria-pressed":v.includes(e),onClick:()=>h(a=>a.includes(e)?a.filter(a=>a!==e):[...a,e]),children:e},e))}),u.products&&(0,s.jsx)("small",{children:u.products})]}),(0,s.jsxs)("label",{htmlFor:"".concat(a,"-msg"),children:[t?"Anything else? (optional)":c,
1(0,s.jsx)("textarea",{id:"".concat(a,"-msg"),rows:3,maxLength:250-(t?t.length+3:0),value:p.message,onChange:x("message"),"aria-invalid":!!u.message}),u.message&&(0,s.jsx)("small",{children:u.message})]}),(0,s.jsx)("button",{className:"b2 b2-red",type:"submit",disabled:"sending"===y,children:"sending"===y?"Sending…":n}),"error"===y&&(0,s.jsxs)("p",{className:"form-err",children:[b||"We couldn't send that."," Please try again, or write to [email protected]."]})]})}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.