Ok, to zrób tak jak ci @writen podpowiedział- dodaj drugą regułę, i wstaw do wcześniejszej flagę Last:
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^([^-]+)$ ./index.php?m=$1 [L]
RewriteRule ^([^-]+)/([^-]+)$ ./index.php?m=$1&id=$2
A tak w ogóle czemu nie stworzysz jednego pliku index.php który będzie wywoływany za każdym zapytaniem do strony i w nim w kilku linijkach zrobisz cały router (mi zajęło to 7 linijek bez żadnych FW ).
Wtedy twój .htaccess będzie wyglądał mniej więcej tak:
Options +FollowSymLinks
IndexIgnore */*
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php