That's a good idea, but I don't seem to manage to get this automated. If I insert this in the extra css option while I convert I get second or third css file with this info and it will not work.

Perhaps I can create a feature request that would let you add extra CSS where the classes you have the extra CSS overwrite the same classes in the main CSS. Or does anyone here see an option I overlook?

@theducks
This works for Kindle Keyboard but not for Paperwhite.
I have a solution for this and do negative margins for all my epub->azw3 conversions but this is not that simple.
Each epub is unique, developers give arbitrary names to classes that control paragraphs of book text. The only way to provide decreased margins is to insert line, say, margin: 0pt -8pt 0pt, into css class that controls bulk of text.
I wrote a small Python script that does that. This script runs from batch file (Windows) that provides prior call to Sigil. Sigil opens ePub, I browse the html code, pinpoint the name of target class, copy it and shut down Sigil. My batch prompts for enetring the class name, I paste it by mouse right click and batch passes this name to my script that embeds line with negative margins exactly into the named class section in css.
The secret is not to use Calibre for further conversion because Calibre messes with class names and our negative margins line will land into the wrong class that doesn't control all book test.
For conversion, batch runs kindlegen, generates mobi and uses kindleunpack to extract and rename azw3.
Actually, I do use Calibre at the start of aforementioned batch file, but this is for conversion epub->epub that provides font embedding, setting font size and other cosmetic changes.
If this is of interest I can post working version of batch file and Python script.

@theducks
This works for Kindle Keyboard but not for Paperwhite.
I have a solutions and do negative margins for all my epub->azw3 conversions but this is not that simple.
Each epub is unique, developers give arbitrary names to classes that control paragraphs of book text. The only way to provide decreased margins is to insert line, say, margin: 0pt -8pt 0pt, into css class that controls bulk of text.
I wrote a small Python script that does that. This script runs from batch file (Windows) that provides prior call to Sigil. Sigil opens ePub, I browse the html code, pinpoint the name of target class, copy it and shut down Sigil. My batch prompts for enetring the class name, I paste it by mouse right click and batch passes this name to my script that embeds line with negative margins exactly into the named class section in css.
The secret is not to use Calibre for further conversion because Calibre messes with class names and our negative margins line will land into the wrong class that doesn't control all book test.
For conversion, batch runs kindlegen, generates mobi and uses kindleunpack to extract and rename azw3.
Actually, I do use Calibre at the start of aforementioned batch file, but this is for conversion epub->epub that provides font embedding, setting font size and other cosmetic changes.
If this is of interest I can post working version of batch file and Python script.

Thanks for your explanation.
I have a K4NT. Wasting expensive screen area always struck me as dumb. There is a cheap Bezel to create a border

Place it next to epub2azw3.bat.
6. Create some arbitrary folder, add path to this folder to environmental variable Path, and place Amazon's kindlegen.exe, script negmarg.py, and epub2azw3.bat into this folder.
7. Uncompress dowloaded KindleUnpack_v64.zip and copy entire folfer lib (as is) to created folder.

You're done. Place epub book (non-DRMed) into any folder, make that folder current and run either this command:

Both commands first embed font Charis SIL ModifiedLarger (you are free to replace this font name by the name of any font family installed on your Windows computer), provide certain font size (you can change it at your will), set full text justification, and try to minimize top and bottom margins.
All is done in Calibre command line.
After this Sigil is invoked. Set Sigil to view html code, click on various html file names at the left side panel and try to find out what CSS class is used for text paragraphs. If two classes are nested always use external (enclosing) one. Copy name of this class to clipboard and shut down Sigil.
You'll see on-screen prompt. Use mouse right click to paste class name.
Press enter. Execution will continue and resulting file book.azw3 will be created.
Scriipt is very simple, it doesn't check for any errors so user discretion is advised.
Somethimes kindlegen has problems with epub table of contents or with missing language setting.

@theducks
This works for Kindle Keyboard but not for Paperwhite.
I have a solutions and do negative margins for all my epub->azw3 conversions

What version of firmware on the Paperwhite do you have? I've experimented with negative margins, and my FW 5.6 Paperwhite seems to completely ignore them.

I went so far as to create a simple html 'book' and convert it with Calibre, where I tweaked it. I started with just trying to do the body tag, but that didn't work - so I did everything - still no luck. The CSS looks like this:

Calibre reshuffles and renames all classes from the source file. That's why the batch file above first implements Calibre conversion epub->epub and the allows user to go thru the html code and determine what CSS class Calibre assigned to base text.
User pinpoints the correct class and sets margins in class definition.
After this we cannot allow Calibre to mess with the code; ones the negative margins are set for the correct class we call kindlegen for actual conversion to mobi (and extract azw3 from combo mobi after this).
Kindlegen doesn't mess with source classes as Calibre does.
Of course, you can just call kindlegen, feed it with html (properly referencing your css with negative margins) and you'll see expected result at any Kindle model.

BTW, it should suffice to apply negative margins to one (paragraph) class only.

I've also been experimenting with setting negative margins in epubs converted to azw3. This is the best I've been able to do, using the calibre ebook editor (which I use all the time to tweak css with anyway):

First in the calibre conversion settings, set the option to expand the "margin" css rules - so the css margins are set using margin-left, margin-right, etc instead of "margin:".

After conversion, open the converted azw3 in calibre's ebook editor. Open the css and use find/replace to delete all the "margin-left: 0;" and "margin-right: 0;" statements by replacing them with nothing (only in the css).

Then, add the negative margin to the css paragraph:

p {
margin-left: -30px;
margin-right: -30px;
}

That mostly just works. I had one book with a table this screwed up - the cells would overlay each other after doing this. I don't know of any easy way to figure out which classes are