Those little strips of color don't need to be shaded, though. You could do what Windows XP did with tabs—highlighting them by running a line of bright shining highlight color along the top (e.g. https://www.techrepublic.com/a/hub/i/2008/11/19/b8ad3817-c3b...).
(I'm sure there are even better examples of this "no gradients, but strong color contrast" effect among the various Linux Desktop Environment themes, but I'm not too familiar with them. Paging anyone from /r/unixporn.)
Presuming the active tab is flat white either way; what's the difference in legibility between the inactive tabs being gradiented white-to-grey (the XP Windows controls style) vs. inactive tabs just being flat grey (the "modern UI" e.g. Google Chrome style)?
I would note that Windows XP also had a high-contrast theme; and that, when enabled, inactive tabs actually lose the distinction in background color from active tabs. But they keep the highlight stripe.
To try and put it another way, imagine, for a moment, that you are incapable of perceiving edges. Every single one of your flat tabs now looks like the same part of the same blob.
Now, realise that for a pretty high number of low-vision people, that is reality. The slight blur we experience makes most edges disappear.
(WinXP's high contrast overcame this by tripling the size of all edges).
Wouldn't the inactive flat tabs all still end up looking like one continuous blob either way? The gradient on the inactive tabs in the image I linked is a top-to-bottom gradient; it does nothing to enhance the visibility of the edges between contiguous inactive tabs.
(I'm sure there are even better examples of this "no gradients, but strong color contrast" effect among the various Linux Desktop Environment themes, but I'm not too familiar with them. Paging anyone from /r/unixporn.)