The opening hours can be implemented using conditional restrictions, so you might have something like this:
foot = permissive
foot:conditional = no @ (17:00-09:00)
https://wiki.openstreetmap.org/wiki/Conditional_restrictions

Mapping indoor=corridor adds area mapping to the linear highway=* ways. There are some examples of shopping centres where this has been done here:
https://wiki.openstreetmap.org/wiki/Simple_Indoor_Tagging