Single-page.php template file name not shown

I am using the template file name in the section to load
corresponding css files. For static-page.php I am loading
static-page.css, similarly for single-post.php I would like to load
single-post.css. As said, it is working fine on my static pages, but
returns zero on single blog post page.

This isn’t really the correct way to do this. For starters you shouldn’t be placing anything in <head> directly. Instead you should be ‘enqueueing’ the styles from your functions file, as outlined in the Theme Developer Handbook.

When you do it this way you can use the Conditional Tags to determine what is currently being viewed, and enqueue the appropriate styles.

For example, if you want to load styles for single posts only, you’d use is_singular( 'post' )., while for custom page templates you’d use is_page_template( 'static-page.php' );.