Files
admintemplate-mvc/Views/Dashboard/DashboardRms1.cshtml
T
2026-07-21 09:47:16 +07:00

385 lines
53 KiB
Plaintext

@{
ViewData["Title"] = "DashboardRms1";
ViewData["SidebarVariant"] = "1";
}
@section Styles {
<link rel="stylesheet" href="/css/style1.css" asp-append-version="true" />
}
<div class="p-4 md:p-6 space-y-6">
<div class="flex flex-col sm:flex-row sm:items-center justify-between gap-3">
<div><h1 class="text-2xl md:text-3xl font-bold text-gray-900">RMS Dashboard</h1><p class="text-gray-500 mt-1 text-sm">Rooster Management System — Period: Week 26 2026</p></div>
<div class="flex items-center gap-2">
<select class="text-sm border border-gray-100 rounded-lg px-3 py-2 bg-white text-gray-600 focus:outline-none focus:ring-2 focus:ring-blue-400"><option>Jun 2026</option><option selected>Q2 2026</option><option>FY 2026</option><option>FY 2025</option></select>
<button class="px-4 py-2 text-sm font-semibold rounded-lg text-white transition flex items-center gap-1.5" style="background: #3b82f6;"><svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 16v2a2 2 0 002 2h12a2 2 0 002-2v-2M7 10l5 5 5-5M12 15V3"/></svg> Export</button>
</div>
</div>
<div class="grid grid-cols-1 md:grid-cols-3 gap-4">
<div class="bg-white rounded-xl border border-gray-100 p-5 anim-fade anim-delay-2">
<div class="flex items-center justify-between mb-4">
<div><h3 class="font-bold text-gray-900">Shift Trend</h3><p class="text-xs text-gray-400 mt-0.5">Monthly spend vs budget</p></div>
<div class="flex items-center gap-3 text-xs">
<span class="flex items-center gap-1"><span class="w-3 h-3 rounded-sm" style="background:#2563eb;"></span> Revenue</span>
<span class="flex items-center gap-1"><span class="w-3 h-3 rounded-sm" style="background:#f97316;"></span> Budget</span>
</div>
</div>
<div class="chart-container" style="height:260px;"><canvas id="plChart"></canvas></div>
</div>
<div class="bg-white rounded-xl border border-gray-100 p-5 anim-fade anim-delay-3">
<h3 class="font-bold text-gray-900 mb-1">Shift Distribution</h3>
<p class="text-xs text-gray-400 mb-3">By category this period</p>
<div class="flex justify-center"><div class="chart-container" style="height:170px;width:170px;"><canvas id="expenseChart"></canvas></div></div>
<div class="grid grid-cols-2 gap-1 mt-3 text-[10px]">
<div class="flex items-center gap-1"><span class="w-2 h-2 rounded-full" style="background:#2563eb"></span> Direct Raw <span class="font-semibold ml-auto">42%</span></div>
<div class="flex items-center gap-1"><span class="w-2 h-2 rounded-full" style="background:#f97316"></span> Indirect <span class="font-semibold ml-auto">22%</span></div>
<div class="flex items-center gap-1"><span class="w-2 h-2 rounded-full" style="background:#ec4899"></span> Logistics <span class="font-semibold ml-auto">15%</span></div>
<div class="flex items-center gap-1"><span class="w-2 h-2 rounded-full" style="background:#8b5cf6"></span> IT <span class="font-semibold ml-auto">12%</span></div>
<div class="flex items-center gap-1"><span class="w-2 h-2 rounded-full" style="background:#06b6d4"></span> Others <span class="font-semibold ml-auto">9%</span></div>
</div>
</div>
<div class="bg-white rounded-xl border border-gray-100 p-5 anim-fade anim-delay-5">
<h3 class="font-bold text-gray-900 mb-1">Procurement Activity</h3>
<p class="text-xs text-gray-400 mb-3">Monthly movement</p>
<div class="chart-container" style="height:170px;"><canvas id="cashflowChart"></canvas></div>
<div class="grid grid-cols-3 gap-1 mt-3 text-[10px] text-center">
<div><span class="font-bold text-green-600">+423</span><p class="text-gray-400">PR Created</p></div>
<div><span class="font-bold text-green-600">+186</span><p class="text-gray-400">PO Issued</p></div>
<div><span class="font-bold text-green-600">+52</span><p class="text-gray-400">Deliveries</p></div>
</div>
</div>
</div>
<div class="grid grid-cols-1 lg:grid-cols-12 gap-4">
<div class="lg:col-span-5 lg:col-start-8 lg:row-start-1 row-span-2 bg-white rounded-xl border border-gray-100 p-6 anim-fade anim-delay-1 flex flex-col justify-between">
<div>
<div class="flex items-center justify-between mb-4">
<div><p class="text-[10px] text-gray-500 font-semibold uppercase tracking-wide">Schedule Overview</p><h3 class="text-lg font-bold text-gray-900 mt-0.5">Key Metrics</h3></div>
<div class="w-10 h-10 rounded-xl flex items-center justify-center shrink-0" style="background:#eef2ff;"><svg class="w-5 h-5 text-blue-600" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"/></svg></div>
</div>
<div class="grid grid-cols-2 gap-3 mt-2">
<div class="p-3 rounded-lg" style="background:#f8fafc;"><p class="text-[10px] text-gray-500">Total Spend</p><p class="text-lg font-bold text-gray-900">$8.72M</p><span class="text-[10px] text-green-600 font-semibold">↑ 5.4%</span></div>
<div class="p-3 rounded-lg" style="background:#f8fafc;"><p class="text-[10px] text-gray-500">PO Value</p><p class="text-lg font-bold text-gray-900">$3.15M</p><span class="text-[10px] text-green-600 font-semibold">↑ 12.7%</span></div>
<div class="p-3 rounded-lg" style="background:#f8fafc;"><p class="text-[10px] text-gray-500">Suppliers</p><p class="text-lg font-bold text-gray-900">1,246</p><span class="text-[10px] text-green-600 font-semibold">↑ 8.2%</span></div>
<div class="p-3 rounded-lg" style="background:#f8fafc;"><p class="text-[10px] text-gray-500">Cost Savings</p><p class="text-lg font-bold text-gray-900">$1.24M</p><span class="text-[10px] text-green-600 font-semibold">↑ 18.3%</span></div>
</div>
</div>
<div class="mt-4 pt-4 border-t border-gray-100 flex items-center justify-between text-xs text-gray-400"><span>PR Backlog: <b class="text-gray-700">187</b></span><span class="kpi-badge" style="background:#eef2ff;color:#4f46e5;">Q2 2026</span></div>
</div>
<div class="lg:col-span-7 lg:col-start-1 lg:row-start-1 grid grid-cols-2 lg:grid-cols-4 gap-3 anim-fade anim-delay-2">
<div class="kpi-card-sm kpi-b1"><div class="flex items-start justify-between"><div><p class="kpi-label">Total Spend</p><p class="kpi-value">$8.72M</p><span class="kpi-delta">↑ 5.4%</span></div><div class="kpi-icon"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/></svg></div></div></div>
<div class="kpi-card-sm kpi-b2"><div class="flex items-start justify-between"><div><p class="kpi-label">PO Value</p><p class="kpi-value">$3.15M</p><span class="kpi-delta">↑ 12.7%</span></div><div class="kpi-icon"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7h8m0 0v8m0-8l-8 8-4-4-6 6"/></svg></div></div></div>
<div class="kpi-card-sm kpi-b3"><div class="flex items-start justify-between"><div><p class="kpi-label">Suppliers</p><p class="kpi-value">1,246</p><span class="kpi-delta">↑ 8.2%</span></div><div class="kpi-icon"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17 9V7a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2m2 4h10a2 2 0 002-2v-6a2 2 0 00-2-2H9a2 2 0 00-2 2v6a2 2 0 002 2zm7-5a2 2 0 11-4 0 2 2 0 014 0z"/></svg></div></div></div>
<div class="kpi-card-sm kpi-b4"><div class="flex items-start justify-between"><div><p class="kpi-label">Cost Savings</p><p class="kpi-value">$1.24M</p><span class="kpi-delta">↑ 18.3%</span></div><div class="kpi-icon"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 10h18M7 15h1m4 0h1m-7 4h12a3 3 0 003-3V8a3 3 0 00-3-3H6a3 3 0 00-3 3v8a3 3 0 003 3z"/></svg></div></div></div>
</div>
<div class="lg:col-span-7 lg:col-start-1 lg:row-start-2 grid grid-cols-2 lg:grid-cols-4 gap-3 anim-fade anim-delay-3">
<div class="kpi-card-sm kpi-b5"><div class="flex items-start justify-between"><div><p class="kpi-label">Cycle Time</p><p class="kpi-value">6.2d</p><span class="kpi-delta">↑ 0.8d</span></div><div class="kpi-icon"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"/></svg></div></div></div>
<div class="kpi-card-sm kpi-b6"><div class="flex items-start justify-between"><div><p class="kpi-label">Contract Cov.</p><p class="kpi-value">78.6%</p><span class="kpi-delta">↑ 4.3%</span></div><div class="kpi-icon"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"/></svg></div></div></div>
<div class="kpi-card-sm kpi-b7"><div class="flex items-start justify-between"><div><p class="kpi-label">PR Volume</p><p class="kpi-value">2,847</p><span class="kpi-delta">↑ 22.5%</span></div><div class="kpi-icon"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7h8m0 0v8m0-8l-8 8-4-4-6 6"/></svg></div></div></div>
<div class="kpi-card-sm kpi-b8"><div class="flex items-start justify-between"><div><p class="kpi-label">On-Time Rate</p><p class="kpi-value">94.2%</p><span class="kpi-delta">↑ 2.3pp</span></div><div class="kpi-icon"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"/></svg></div></div></div>
</div>
</div>
<div class="bg-white rounded-xl border border-gray-100 p-5 anim-fade anim-delay-2">
<div class="flex items-center justify-between mb-4"><div><h3 class="font-bold text-gray-900">RMS Metrics Matrix</h3><p class="text-xs text-gray-400 mt-0.5">Key indicators across all categories</p></div><span class="text-xs text-blue-600 font-semibold cursor-pointer hover:underline">View All →</span></div>
<div class="grid grid-cols-2 md:grid-cols-5 gap-2">
<div class="mm-cell"><div class="mm-icon mm-c1"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/></svg></div><div><p class="mm-title">Total Spend</p><p class="mm-sub">$8.72M ↓ 5.4%</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c2"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7h8m0 0v8m0-8l-8 8-4-4-6 6"/></svg></div><div><p class="mm-title">PO Value</p><p class="mm-sub">$3.15M ↑ 12.7%</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c3"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17 9V7a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2m2 4h10a2 2 0 002-2v-6a2 2 0 00-2-2H9a2 2 0 00-2 2v6a2 2 0 002 2zm7-5a2 2 0 11-4 0 2 2 0 014 0z"/></svg></div><div><p class="mm-title">Suppliers</p><p class="mm-sub">1 ↑ 8.2%</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c4"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 10h18M7 15h1m4 0h1m-7 4h12a3 3 0 003-3V8a3 3 0 00-3-3H6a3 3 0 00-3 3v8a3 3 0 003 3z"/></svg></div><div><p class="mm-title">Cost Savings</p><p class="mm-sub">$1.24M ↑ 18.3%</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c5"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"/></svg></div><div><p class="mm-title">Cycle Time</p><p class="mm-sub">6.2 ↓ 0.8d</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c6"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"/></svg></div><div><p class="mm-title">Contract Cov.</p><p class="mm-sub">78.6 ↓ 4.3%</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c7"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7h8m0 0v8m0-8l-8 8-4-4-6 6"/></svg></div><div><p class="mm-title">PR Volume</p><p class="mm-sub">2 ↑ 22.5%</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c8"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"/></svg></div><div><p class="mm-title">On-Time Rate</p><p class="mm-sub">94.2 ↓ 2.3pp</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c9"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"/></svg></div><div><p class="mm-title">Purchase Orders</p><p class="mm-sub">1 ↑ 15.2%</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c10"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/></svg></div><div><p class="mm-title">Spend per PO</p><p class="mm-sub">$5,635 ↓ $420</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c11"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 7v10c0 2.21 3.582 4 8 4s8-1.79 8-4V7M4 7c0 2.21 3.582 4 8 4s8-1.79 8-4M4 7c0-2.21 3.582-4 8-4s8 1.79 8 4"/></svg></div><div><p class="mm-title">Supplier Score</p><p class="mm-sub">4.2 ↓ 0.3</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c12"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"/></svg></div><div><p class="mm-title">Contract Value</p><p class="mm-sub">$24.6M ↓ 8.5%</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c13"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17 20h5v-2a3 3 0 00-5.356-1.857M17 20H7m10 0v-2c0-.656-.126-1.283-.356-1.857M7 20H2v-2a3 3 0 015.356-1.857M7 20v-2c0-.656.126-1.283.356-1.857m0 0a5.002 5.002 0 019.288 0M15 7a3 3 0 11-6 0 3 3 0 016 0zm6 3a2 2 0 11-4 0 2 2 0 014 0zM7 10a2 2 0 11-4 0 2 2 0 014 0z"/></svg></div><div><p class="mm-title">Vendors Onboard</p><p class="mm-sub">89 ↓ 14</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c14"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11 3.055A9.001 9.001 0 1020.945 13H11V3.055z"/></svg></div><div><p class="mm-title">Maverick Spend</p><p class="mm-sub">8.3 ↓ 1.5pp</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c15"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 21v-4m0 0V5a2 2 0 012-2h6.5l1 1H21l-3 6 3 6h-8.5l-1-1H5a2 2 0 00-2 2zm9-13.5V9h3.5"/></svg></div><div><p class="mm-title">Avg PO Cycle</p><p class="mm-sub">4.2 ↓ 0.6d</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c16"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"/></svg></div><div><p class="mm-title">RFQ Response</p><p class="mm-sub">3.1 ↓ 0.4d</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c17"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z"/></svg></div><div><p class="mm-title">Delivery Rate</p><p class="mm-sub">96.8 ↓ 1.2%</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c18"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 4a1 1 0 011-1h16a1 1 0 011 1v2.586a1 1 0 01-.293.707l-6.414 6.414a1 1 0 00-.293.707V17l-4 4v-6.586a1 1 0 00-.293-.707L3.293 7.293A1 1 0 013 6.586V4z"/></svg></div><div><p class="mm-title">Unit Cost</p><p class="mm-sub">$76.50 ↓ $3.20</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c19"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 13.255A23.931 23.931 0 0112 15c-3.183 0-6.22-.62-9-1.745M16 6V4a2 2 0 00-2-2h-4a2 2 0 00-2 2v2m4 6h.01M5 20h14a2 2 0 002-2V8a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"/></svg></div><div><p class="mm-title">Active RFQ</p><p class="mm-sub">38 ↓ 7</p></div></div>
<div class="mm-cell"><div class="mm-icon mm-c20"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3.055 11H5a2 2 0 012 2v1a2 2 0 002 2 2 2 0 012 2v2.945M8 3.935V5.5A2.5 2.5 0 0010.5 8h.5a2 2 0 012 2 2 2 0 104 0 2 2 0 012-2h1.064M15 20.488V18a2 2 0 012-2h3.064M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/></svg></div><div><p class="mm-title">Spend Coverage</p><p class="mm-sub">92 ↓ 3%</p></div></div>
</div>
</div>
<div class="grid grid-cols-1 md:grid-cols-2 gap-4">
<div class="bg-white rounded-xl border border-gray-100 p-5 anim-fade anim-delay-2">
<h3 class="font-bold text-gray-900 mb-1">Procurement Summary</h3>
<p class="text-xs text-gray-400 mb-3">As of June 30, 2026</p>
<div class="space-y-2.5">
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc1"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">Total Spend YTD</p><p class="text-sm font-bold text-gray-900">$8.72M</p></div>
</div>
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc10"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 14l-7 7m0 0l-7-7m7 7V3"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">PO Issued</p><p class="text-sm font-bold text-gray-900">$5.63M</p></div>
</div>
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc2"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7h8m0 0v8m0-8l-8 8-4-4-6 6"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">Cost Savings</p><p class="text-sm font-bold text-blue-700">$1.24M</p></div>
</div>
<div class="flex items-center justify-between text-xs pt-2 border-t border-gray-100"><span>On-Time Rate</span><span class="font-semibold text-gray-900">94.2%</span><span>Cycle</span><span class="font-semibold text-gray-900">6.2d</span></div>
</div>
</div>
<div class="bg-white rounded-xl border border-gray-100 p-5 anim-fade anim-delay-3">
<h3 class="font-bold text-gray-900 mb-1">PO Pipeline</h3>
<p class="text-xs text-gray-400 mb-3">Orders by status</p>
<div class="space-y-2.5">
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc4"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">Pending Approval</p><p class="text-sm font-bold text-green-700">846</p></div>
</div>
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc5"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">In Progress</p><p class="text-sm font-bold text-amber-600">423</p></div>
</div>
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc10"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-2.5L13.732 4c-.77-.833-1.964-.833-2.732 0L3.34 16.5c-.77.833.192 2.5 1.732 2.5z"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">Delivered</p><p class="text-sm font-bold text-red-600">215</p></div>
</div>
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc9"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17 9V7a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2m2 4h10a2 2 0 002-2v-6a2 2 0 00-2-2H9a2 2 0 00-2 2v6a2 2 0 002 2zm7-5a2 2 0 11-4 0 2 2 0 014 0z"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">Closed</p><p class="text-sm font-bold text-blue-700">76</p></div>
</div>
</div>
<div class="mt-2 flex justify-between text-xs"><span>Avg Cycle: <b>6.2d</b></span><span>Fill Rate: <b>97%</b></span></div>
</div>
</div>
<div class="grid grid-cols-1 lg:grid-cols-2 gap-4">
<div class="bg-white rounded-xl border border-gray-100 p-5 anim-fade anim-delay-4">
<div class="flex items-center justify-between mb-4">
<div><h3 class="font-bold text-gray-900">Recent Purchase Orders</h3><p class="text-xs text-gray-400 mt-0.5">Latest PR & PO activity</p></div>
<span class="text-xs text-blue-600 font-semibold cursor-pointer hover:underline">New PR →</span>
</div>
<div class="grid-wrap">
<table class="grid-table">
<thead><tr><th>Date</th><th>PO #</th><th>Description</th><th>Qty</th><th>Status</th></tr></thead>
<tbody>
<tr><td class="text-xs">Jun 30</td><td class="font-mono text-xs">PO-2026-0421</td><td>Raw material procurement</td><td class="font-mono text-xs">500</td><td><span class="chip chip-indigo">Approved</span></td></tr>
<tr><td class="text-xs">Jun 29</td><td class="font-mono text-xs">PO-2026-0420</td><td>Office supplies</td><td class="font-mono text-xs">200</td><td><span class="chip chip-indigo">Approved</span></td></tr>
<tr><td class="text-xs">Jun 28</td><td class="font-mono text-xs">PO-2026-0419</td><td>IT equipment order</td><td class="font-mono text-xs">45</td><td><span class="chip chip-indigo">Approved</span></td></tr>
<tr><td class="text-xs">Jun 27</td><td class="font-mono text-xs">PO-2026-0418</td><td>Logistics contract</td><td class="font-mono text-xs">1</td><td><span class="chip chip-amber">Pending</span></td></tr>
</tbody>
</table>
</div>
<div class="mt-3 flex justify-between text-xs"><span>Pending: <b class="text-amber-600">4 PRs</b></span><span>Total POs: <b>142</b></span></div>
</div>
<div class="bg-white rounded-xl border border-gray-100 p-5 anim-fade anim-delay-5">
<div class="flex items-center justify-between mb-4">
<div><h3 class="font-bold text-gray-900">Schedule Activity</h3><p class="text-xs text-gray-400 mt-0.5">Real-time procurement updates</p></div>
<span class="flex items-center gap-1.5 text-xs"><span class="w-2 h-2 rounded-full bg-blue-400 animate-pulse"></span> <span class="text-blue-600 font-medium">Live</span></span>
</div>
<div class="activity-feed divide-y divide-gray-100 pr-1">
<div class="flex gap-3 p-2 rounded-lg hover:bg-gray-50 transition">
<div class="w-8 h-8 rounded-full flex items-center justify-center text-white text-xs font-bold shrink-0" style="background:#10b981">AP</div>
<div class="min-w-0 flex-1"><p class="text-sm text-gray-700"><b>Invoice Paid</b> — INV-2026-0882</p><p class="text-xs text-gray-400 mt-0.5">ⓘ $24,500 · Vendor: TechDistrib · Net 30</p><p class="text-xs text-gray-400">12 min ago</p></div>
<span class="chip chip-green self-start">Paid</span>
</div>
<div class="flex gap-3 p-2 rounded-lg hover:bg-gray-50 transition">
<div class="w-8 h-8 rounded-full flex items-center justify-center text-white text-xs font-bold shrink-0" style="background:#2563eb">AR</div>
<div class="min-w-0 flex-1"><p class="text-sm text-gray-700"><b>Payment Received</b> — Customer: MegaCorp</p><p class="text-xs text-gray-400 mt-0.5">ⓘ $86,200 · Invoice INV-2026-0741</p><p class="text-xs text-gray-400">35 min ago</p></div>
<span class="chip chip-green self-start">Received</span>
</div>
<div class="flex gap-3 p-2 rounded-lg hover:bg-gray-50 transition">
<div class="w-8 h-8 rounded-full flex items-center justify-center text-white text-xs font-bold shrink-0" style="background:#6366f1">GL</div>
<div class="min-w-0 flex-1"><p class="text-sm text-gray-700"><b>Journal Posted</b> — Depreciation June</p><p class="text-xs text-gray-400 mt-0.5">ⓘ $42,800 · Fixed Assets depreciation</p><p class="text-xs text-gray-400">1 hour ago</p></div>
<span class="chip chip-indigo self-start">Posted</span>
</div>
<div class="flex gap-3 p-2 rounded-lg hover:bg-gray-50 transition">
<div class="w-8 h-8 rounded-full flex items-center justify-center text-white text-xs font-bold shrink-0" style="background:#f97316">TX</div>
<div class="min-w-0 flex-1"><p class="text-sm text-gray-700"><b>Tax Filing</b> — PPh 21 June</p><p class="text-xs text-gray-400 mt-0.5">ⓘ $38,400 · Filing prepared for submission</p><p class="text-xs text-gray-400">2 hours ago</p></div>
<span class="chip chip-amber self-start">Pending</span>
</div>
</div>
</div>
</div>
<div class="grid grid-cols-1 md:grid-cols-3 gap-4">
<div class="bg-white rounded-xl border border-gray-100 p-5 anim-fade anim-delay-4">
<h3 class="font-bold text-gray-900 mb-1">Supplier Performance</h3>
<p class="text-xs text-gray-400 mb-3">Q2 2026 performance</p>
<div class="space-y-2.5">
<div class="p-3 rounded-lg" style="background:#f8fafc;">
<div class="flex items-center gap-3">
<div class="gi gc1"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/></svg></div>
<div class="flex-1 min-w-0">
<div class="flex justify-between items-center">
<p class="text-xs text-gray-500 font-semibold">On-Time</p>
<span class="text-[11px] font-semibold text-green-600">94.2%</span>
</div>
<div class="mt-2 progress-bar"><div class="fill" style="width:94%;background:#2563eb;"></div></div>
</div>
</div>
</div>
<div class="p-3 rounded-lg" style="background:#f8fafc;">
<div class="flex items-center gap-3">
<div class="gi gc5"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17 9V7a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2m2 4h10a2 2 0 002-2v-6a2 2 0 00-2-2H9a2 2 0 00-2 2v6a2 2 0 002 2zm7-5a2 2 0 11-4 0 2 2 0 014 0z"/></svg></div>
<div class="flex-1 min-w-0">
<div class="flex justify-between items-center">
<p class="text-xs text-gray-500 font-semibold">Delivery</p>
<span class="text-[11px] font-semibold">96.8%</span>
</div>
<div class="mt-2 progress-bar"><div class="fill" style="width:97%;background:#f97316;"></div></div>
</div>
</div>
</div>
<div class="p-3 rounded-lg" style="background:#f8fafc;">
<div class="flex items-center gap-3">
<div class="gi gc3"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"/></svg></div>
<div class="flex-1 min-w-0">
<div class="flex justify-between items-center">
<p class="text-xs text-gray-500 font-semibold">Quality</p>
<span class="text-[11px] font-semibold text-green-600">98.7%</span>
</div>
<div class="mt-2 progress-bar"><div class="fill" style="width:99%;background:#ec4899;"></div></div>
</div>
</div>
</div>
<div class="p-3 rounded-lg" style="background:#f8fafc;">
<div class="flex items-center gap-3">
<div class="gi gc2"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7h8m0 0v8m0-8l-8 8-4-4-6 6"/></svg></div>
<div class="flex-1 min-w-0">
<div class="flex justify-between items-center">
<p class="text-xs text-gray-500 font-semibold">Compliance</p>
<span class="text-[11px] font-semibold text-green-600">92.0%</span>
</div>
<div class="mt-2 progress-bar"><div class="fill" style="width:92%;background:#10b981;"></div></div>
</div>
</div>
</div>
</div>
<div class="mt-3 pt-3 border-t border-gray-100 flex justify-between text-xs"><span>Overall Score: <b class="text-green-600">92%</b></span><span class="text-blue-600">On Track</span></div>
</div>
<div class="bg-white rounded-xl border border-gray-100 p-5 anim-fade anim-delay-5">
<h3 class="font-bold text-gray-900 mb-1">Top Suppliers</h3>
<p class="text-xs text-gray-400 mb-3">This quarter ranking</p>
<div class="space-y-2.5">
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc7"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">Siemens AG</p><p class="text-sm font-bold text-gray-900">$420K</p><span class="text-[10px] text-green-600">96%</span></div>
</div>
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc10"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 14l-7 7m0 0l-7-7m7 7V3"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">Mitsubishi Corp</p><p class="text-sm font-bold text-amber-600">$385K</p><span class="text-[10px] text-green-600">92%</span></div>
</div>
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc9"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">DHL Supply Chain</p><p class="text-sm font-bold text-blue-700">$312K</p><span class="text-[10px] text-green-600">88%</span></div>
</div>
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc3"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">BASF SE</p><p class="text-sm font-bold text-gray-900">$278K</p><span class="text-[10px] text-green-600">85%</span></div>
</div>
</div>
<div class="mt-2 flex justify-between text-xs"><span>Active POs: <b>28</b></span><span>Avg Score: <b>90%</b></span></div>
</div>
<div class="bg-white rounded-xl border border-gray-100 p-5 anim-fade anim-delay-6">
<h3 class="font-bold text-gray-900 mb-1">Compliance Metrics</h3>
<p class="text-xs text-gray-400 mb-3">Supplier compliance KPIs</p>
<div class="space-y-2.5">
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc4"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">Audit Pass</p><p class="text-[10px] text-gray-400">Passed latest audit</p></div>
<div class="text-right"><span class="chip chip-blue">98%</span></div>
</div>
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc8"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M20 7l-8-4-8 4m16 0l-8 4m8-4v10l-8 4m0-10L4 7m8 4v10M4 7v10l8 4"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">ISO Cert</p><p class="text-[10px] text-gray-400">Certified suppliers</p></div>
<div class="text-right"><span class="chip chip-purple">87%</span></div>
</div>
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc11"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">Env Comp</p><p class="text-[10px] text-gray-400">Environmental compliance</p></div>
<div class="text-right"><span class="chip chip-orange">76%</span></div>
</div>
<div class="flex items-center gap-3 p-2.5 rounded-lg" style="background:#f8fafc;">
<div class="gi gc10"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"/></svg></div>
<div class="flex-1"><p class="text-xs text-gray-500">SLA Met</p><p class="text-[10px] text-gray-400">Service level achieved</p></div>
<div class="text-right"><span class="chip chip-red">92%</span></div>
</div>
</div>
</div>
</div>
<div class="grid grid-cols-1 lg:grid-cols-2 gap-4">
<div class="bg-white rounded-xl border border-gray-100 p-5 anim-fade anim-delay-5">
<div class="flex items-center justify-between mb-4">
<div><h3 class="font-bold text-gray-900">Category Overview</h3><p class="text-xs text-gray-400 mt-0.5">As of Jun 30, 2026 · Top categories</p></div>
<span class="text-xs text-blue-600 font-semibold cursor-pointer hover:underline">View Full →</span>
</div>
<div class="p-3 rounded-lg" style="background:#f8fafc;">
<div class="grid-wrap">
<table class="grid-table" style="background:transparent;">
<thead><tr><th>Category Code</th><th>Category Name</th><th>Spend</th><th>%</th></tr></thead>
<tbody>
<tr><td class="font-mono text-xs">RM-01</td><td>Raw Materials</td><td class="font-mono text-xs text-green-600">$2,400,000</td><td class="font-mono text-xs">27.5%</td></tr>
<tr><td class="font-mono text-xs">PK-01</td><td>Packaging</td><td class="font-mono text-xs text-green-600">$1,800,000</td><td class="font-mono text-xs">20.6%</td></tr>
<tr><td class="font-mono text-xs">LG-01</td><td>Logistics</td><td class="font-mono text-xs text-green-600">$1,200,000</td><td class="font-mono text-xs">13.8%</td></tr>
<tr><td class="font-mono text-xs">IT-01</td><td>IT Equipment</td><td class="font-mono text-xs text-green-600">$980,000</td><td class="font-mono text-xs">11.2%</td></tr>
<tr><td class="font-mono text-xs">OF-01</td><td>Office Supplies</td><td class="font-mono text-xs text-blue-600">$450,000</td><td class="font-mono text-xs">5.2%</td></tr>
<tr><td class="font-mono text-xs">MT-01</td><td>Maintenance</td><td class="font-mono text-xs text-blue-600">$380,000</td><td class="font-mono text-xs">4.4%</td></tr>
<tr><td class="font-mono text-xs">UT-01</td><td>Utilities</td><td class="font-mono text-xs text-blue-600">$290,000</td><td class="font-mono text-xs">3.3%</td></tr>
<tr><td class="font-mono text-xs">TR-01</td><td>Training</td><td class="font-mono text-xs text-blue-600">$210,000</td><td class="font-mono text-xs">2.4%</td></tr>
<tr><td class="font-mono text-xs">CN-01</td><td>Consulting</td><td class="font-mono text-xs text-blue-600">$185,000</td><td class="font-mono text-xs">2.1%</td></tr>
<tr><td class="font-mono text-xs">MK-01</td><td>Marketing</td><td class="font-mono text-xs text-blue-600">$150,000</td><td class="font-mono text-xs">1.7%</td></tr>
</tbody>
</table>
</div>
</div>
<div class="mt-3 pt-3 border-t border-gray-100 flex justify-between text-xs font-semibold"><span>Total Spend: <span class="text-green-600">$8,720,000</span></span><span>Avg per PO: <span class="text-red-600">$5,635</span></span></div>
</div>
<div class="bg-white rounded-xl border border-gray-100 p-5 anim-fade anim-delay-6">
<div class="flex items-center justify-between mb-4">
<div><h3 class="font-bold text-gray-900">Upcoming Deliveries</h3><p class="text-xs text-gray-400 mt-0.5">PO deliveries due next 14 days</p></div>
<span class="text-xs text-blue-600 font-semibold cursor-pointer hover:underline">Track Deliveries →</span>
</div>
<div class="p-3 rounded-lg" style="background:#f8fafc;">
<div class="grid-wrap">
<table class="grid-table" style="background:transparent;">
<thead><tr><th>PO</th><th>Supplier</th><th>Amount</th><th>Due Date</th><th>Status</th></tr></thead>
<tbody>
<tr><td class="font-mono text-xs">PO-0882</td><td>TechDistrib Inc.</td><td class="font-mono text-xs">$24,500</td><td class="text-xs">Jul 05</td><td><span class="chip chip-amber">Due Soon</span></td></tr>
<tr><td class="font-mono text-xs">PO-0885</td><td>CloudHost Ltd.</td><td class="font-mono text-xs">$12,800</td><td class="text-xs">Jul 08</td><td><span class="chip chip-amber">Due Soon</span></td></tr>
<tr><td class="font-mono text-xs">PO-0888</td><td>OfficePro Supply</td><td class="font-mono text-xs">$6,200</td><td class="text-xs">Jul 10</td><td><span class="chip chip-indigo">Future</span></td></tr>
<tr><td class="font-mono text-xs">PO-0890</td><td>Consulting Plus</td><td class="font-mono text-xs">$18,000</td><td class="text-xs">Jul 12</td><td><span class="chip chip-indigo">Future</span></td></tr>
<tr><td class="font-mono text-xs">PO-0875</td><td>MegaNetwork</td><td class="font-mono text-xs">$32,000</td><td class="text-xs">Jul 03</td><td><span class="chip chip-red">Delayed</span></td></tr>
<tr><td class="font-mono text-xs">PO-0901</td><td>DataSys Solutions</td><td class="font-mono text-xs">$45,200</td><td class="text-xs">Jul 02</td><td><span class="chip chip-red">Delayed</span></td></tr>
<tr><td class="font-mono text-xs">PO-0902</td><td>Prime Logistics</td><td class="font-mono text-xs">$15,600</td><td class="text-xs">Jul 04</td><td><span class="chip chip-amber">Due Soon</span></td></tr>
<tr><td class="font-mono text-xs">PO-0903</td><td>GreenEnergy Corp</td><td class="font-mono text-xs">$28,900</td><td class="text-xs">Jul 05</td><td><span class="chip chip-amber">Due Soon</span></td></tr>
<tr><td class="font-mono text-xs">PO-0904</td><td>SmartBuild Ltd.</td><td class="font-mono text-xs">$8,750</td><td class="text-xs">Jul 07</td><td><span class="chip chip-amber">Due Soon</span></td></tr>
<tr><td class="font-mono text-xs">PO-0905</td><td>MediCare Supplies</td><td class="font-mono text-xs">$19,300</td><td class="text-xs">Jul 09</td><td><span class="chip chip-amber">Due Soon</span></td></tr>
<tr><td class="font-mono text-xs">PO-0906</td><td>AquaPure Systems</td><td class="font-mono text-xs">$11,400</td><td class="text-xs">Jul 11</td><td><span class="chip chip-indigo">Future</span></td></tr>
<tr><td class="font-mono text-xs">PO-0907</td><td>BuildRight Materials</td><td class="font-mono text-xs">$36,800</td><td class="text-xs">Jul 13</td><td><span class="chip chip-indigo">Future</span></td></tr>
<tr><td class="font-mono text-xs">PO-0908</td><td>FreshFoods Group</td><td class="font-mono text-xs">$9,200</td><td class="text-xs">Jul 14</td><td><span class="chip chip-indigo">Future</span></td></tr>
<tr><td class="font-mono text-xs">PO-0909</td><td>AutoParts Inc.</td><td class="font-mono text-xs">$22,600</td><td class="text-xs">Jul 15</td><td><span class="chip chip-indigo">Future</span></td></tr>
<tr><td class="font-mono text-xs">PO-0910</td><td>CloudNet Services</td><td class="font-mono text-xs">$14,100</td><td class="text-xs">Jul 16</td><td><span class="chip chip-indigo">Future</span></td></tr>
<tr><td class="font-mono text-xs">PO-0911</td><td>Sunrise Energy</td><td class="font-mono text-xs">$41,500</td><td class="text-xs">Jun 28</td><td><span class="chip chip-red">Delayed</span></td></tr>
<tr><td class="font-mono text-xs">PO-0912</td><td>Urban Design Co</td><td class="font-mono text-xs">$7,800</td><td class="text-xs">Jun 30</td><td><span class="chip chip-red">Delayed</span></td></tr>
<tr><td class="font-mono text-xs">PO-0913</td><td>SafeGuard Security</td><td class="font-mono text-xs">$5,400</td><td class="text-xs">Jul 01</td><td><span class="chip chip-red">Delayed</span></td></tr>
<tr><td class="font-mono text-xs">PO-0914</td><td>EcoFriendly Pkg</td><td class="font-mono text-xs">$16,200</td><td class="text-xs">Jul 02</td><td><span class="chip chip-red">Delayed</span></td></tr>
<tr><td class="font-mono text-xs">PO-0915</td><td>StarTech Systems</td><td class="font-mono text-xs">$33,000</td><td class="text-xs">Jul 04</td><td><span class="chip chip-amber">Due Soon</span></td></tr>
<tr><td class="font-mono text-xs">PO-0916</td><td>Blue Ocean Ltd.</td><td class="font-mono text-xs">$10,500</td><td class="text-xs">Jul 06</td><td><span class="chip chip-amber">Due Soon</span></td></tr>
<tr><td class="font-mono text-xs">PO-0917</td><td>Golden Gate Inc.</td><td class="font-mono text-xs">$27,300</td><td class="text-xs">Jul 08</td><td><span class="chip chip-amber">Due Soon</span></td></tr>
<tr><td class="font-mono text-xs">PO-0918</td><td>Silver Lake Corp</td><td class="font-mono text-xs">$6,800</td><td class="text-xs">Jul 10</td><td><span class="chip chip-indigo">Future</span></td></tr>
<tr><td class="font-mono text-xs">PO-0919</td><td>Northern Lights Co</td><td class="font-mono text-xs">$38,100</td><td class="text-xs">Jul 12</td><td><span class="chip chip-indigo">Future</span></td></tr>
<tr><td class="font-mono text-xs">PO-0920</td><td>Southern Cross Ltd</td><td class="font-mono text-xs">$13,400</td><td class="text-xs">Jul 14</td><td><span class="chip chip-indigo">Future</span></td></tr>
</tbody>
</table>
</div>
</div>
<div class="mt-3 pt-3 border-t border-gray-100 flex justify-between text-xs"><span>Expected: <b class="text-gray-900">$93,500</b></span><span>Delayed: <b class="text-red-500">$32,000</b></span></div>
</div>
</div>
</div>
@section Scripts {
<script src="/js/dashboard-rms.js" asp-append-version="true"></script>
}