How does Ionic add classes to the <body> tag?

I just realized that on iOS 7 (running app from Xcode into device), Ionic add some classes to the <body> tag, as one can see on this screenshot.

In this case it adds .platform-ios7.platform-cordova:not(.fullscreen) .bar-header:not(.bar-subheader) which seems to be what's responsible for adding that extra space on top of the header bar to accommodate the iOS 7 Status Bar.

I wonder- how is it done?

Because I followed another sample tutorial (Tabs App), on which that doesn't happen and the iOS Status bar overlaps the header.

Thanks a lot.

I solved the iOS Status Bar issue by setting <script src="cordova.js"></script> to be the last script to load.

But to answer the specific question of this thread:

Ionic check what device your on by using cordova's device plugin. From there, they add classes to the body to apply device specific classes and styling.

Source here.