pub fn parse_time_to_seconds(s: &str) -> Option { let parts: Vec<_> = s.trim().split(':').collect(); match parts.len() { 2 => { // MM:SS let minutes: i64 = parts[0].parse().ok()?; let seconds: i64 = parts[1].parse().ok()?; Some(minutes * 60 + seconds) } 3 => { // HH:MM:SS let hours: i64 = parts[0].parse().ok()?; let minutes: i64 = parts[1].parse().ok()?; let seconds: i64 = parts[2].parse().ok()?; Some(hours * 3600 + minutes * 60 + seconds) } _ => None, } }