+
+
+
+ {cost > 0 && selling > 0 ? (
+ = cost ? "text-emerald-700 dark:text-emerald-400" : "text-destructive",
+ )}
+ >
+ {(((selling - cost) / cost) * 100).toFixed(1)}%
+
+ ) : (
+ —
+ )}
+
+
+
+ Derived · not editable
+
+
{/* Supplier */}
@@ -563,7 +595,11 @@ export function OrderSprintProcessModal({ item, suppliers, open, onClose, onProc
{/* PO description — what the supplier sees on the PO. Defaults
to the order description so the buyer-tasks pending →
processed transition fires for the common no-op case.
- Mirrors the canonical /orders/[id]/process gate. */}
+ Mirrors the canonical /orders/[id]/process gate. The
+ order's original item description is shown read-only
+ above the textarea as a reference, so the operator can
+ see what the customer asked for vs what they're sending
+ to the supplier. */}