diff --git a/frontend/src/components/inventory/DetailPanel.tsx b/frontend/src/components/inventory/DetailPanel.tsx
index 4fb535e4..5f68a33b 100644
--- a/frontend/src/components/inventory/DetailPanel.tsx
+++ b/frontend/src/components/inventory/DetailPanel.tsx
@@ -21,7 +21,7 @@ export function DetailPanel({ item, onClose }: { item: InvItem; onClose: () => v
{item.armor_level != null && item.armor_level > 0 &&
}
{item.max_damage != null && item.max_damage > 0 &&
}
- {item.od_rating != null && 0 ? `+${item.od_rating.toFixed(2)}` : item.od_rating.toFixed(2)} />}
+ {item.od_rating != null &&
}
{item.condition_percent != null &&
}
{item.item_set_name &&
}
{(item.is_bonded || item.is_attuned) &&
}
diff --git a/frontend/src/components/inventory/ResultsTable.tsx b/frontend/src/components/inventory/ResultsTable.tsx
index 1291009c..753f2c79 100644
--- a/frontend/src/components/inventory/ResultsTable.tsx
+++ b/frontend/src/components/inventory/ResultsTable.tsx
@@ -25,8 +25,7 @@ function cell(item: InvItem, key: string): React.ReactNode {
return item.last_updated ? item.last_updated.slice(0, 16).replace('T', ' ') : '—';
case 'od_rating': {
const v = item.od_rating;
- if (v == null) return '—';
- return v > 0 ? `+${v.toFixed(2)}` : v.toFixed(2);
+ return v == null ? '—' : String(v);
}
default: {
const v = (item as any)[key];