// Formats seconds as `m:ss` or `h:mm:ss`. NaN/Infinity → "0:00". export function formatTime(seconds: number): string { if (!Number.isFinite(seconds) || seconds < 0) return '0:00'; const total = Math.floor(seconds); const s = total % 60; const m = Math.floor(total / 60) % 60; const h = Math.floor(total / 3600); const ss = s.toString().padStart(2, '0'); if (h > 0) { const mm = m.toString().padStart(2, '0'); return `${h}:${mm}:${ss}`; } return `${m}:${ss}`; }