"Vi spiser på restauranten i kveld."
Translation:We are eating at the restaurant tonight.
"I kveld" means exactly this evening, therefore, it is translated to "tonight". "In the evening" is more general. Then you should say "om kvelden". For example: "I go out in the evening" = "Jeg går ut om kvelden" and "I am going out tonight" = "Jeg går ut i kveld". NB! You could never say "I kvelden" or "I det kveld". You could also say "om kvelden" in plural, which would be "om kveldene" = in the evenings.
'i natt' is the part usually lasts from midnight to morning. It can refer to yesterday's to today's night or today's to tomorrows night.
"Hvor sov du i natt?" = "Where did you sleep last night?"
"Vi skal fange krabber i natt" = "We are going to catch crabs tonight"
Note the change in the tense of the verbs depending on the meaning of 'i natt'.