RewriteEngine on

# ERRORS
ErrorDocument 400 /index.php?page=400
ErrorDocument 401 /index.php?page=401
ErrorDocument 403 /index.php?page=403
ErrorDocument 404 /index.php?page=404
ErrorDocument 500 /index.php?page=500

# PAGE
RewriteRule ^(400|401|403|404|500)$ index.php?page=$1 [NC,L,QSA]
RewriteRule ^(login|register|legal|about|rules|contact)$ index.php?page=$1 [NC,L,QSA]
RewriteRule ^(account|create|url)$ index.php?page=$1 [NC,L,QSA]

# PAGE -> SECTION
RewriteRule ^(legal|about|rules)/([-\w]+)$ index.php?page=$1&section=$2 [NC,L,QSA]
RewriteRule ^(account)/([-\w]+)$ index.php?page=$1&section=$2 [NC,L,QSA]

# PAGE -> SECTION -> SUBSECTION
RewriteRule ^(account)/([-\w]+)/([-\w]+)$ index.php?page=$1&section=$2&subsection=$3 [NC,L,QSA]

# PAGE -> ID
RewriteRule ^(confirm|reset|url)/([\d]+)$ index.php?page=$1&id=$2 [NC,L,QSA]

# PAGE -> SECTION -> ID
RewriteRule ^(edit)/([-\w]+)/([\d]+)$ index.php?page=$1&section=$2&id=$3 [NC,L,QSA]