Is the indentation significant in this language (a la Python)? If so, then (my advice/suggestion is that..) you need to start scoping at the inner-most level, otherwise everything will be captured within the first scope-rule (possibly why everything is red).
Someone can define their indentation using 2, 4, or even 3(?) spaces, and using tabs or spaces. I wonder if the Python language file does anything with this information? Probably not(?).
What defines the closing of the current scope? Presumably it would have to be EOL ($).
Sorry I can't be more helpful at this stage. This reference uses the pList format but the principles are the same.