/** Format a positive duration in seconds as a short human string. */ export function formatDurationSeconds(seconds: number): string { if (!Number.isFinite(seconds) || seconds <= 0) return "now"; const d = Math.floor(seconds / 86400); const h = Math.floor((seconds % 86400) / 3600); const m = Math.floor((seconds % 3600) / 60); if (d > 0 && h > 0) return `${d}d ${h}h`; if (d > 0) return `${d}d`; if (h > 0 && m > 0) return `${h}h ${m}m`; if (h > 0) return `${h}h`; if (m > 0) return `${m}m`; return "<1m"; } export function formatDurationMs(ms: number): string { return formatDurationSeconds(ms / 1000); }