Point the last computed colors at real tokens so nothing is derived by
blending anymore:
- barbar inactive labels take the new 600 tier, which reads dimmer than
the 500 accent and, unlike 700, still brightens under the vivid style
- notify borders take the 900 tier, and the debug border takes base02
- black was a blend of the background toward pure black, a value that
appeared nowhere in the palette; it is base04, so replace it outright
- border was aliased to black, leaving it invisible against the
background in the dark style; it is now base02, matching WinSeparator
With no callers left, darken and blend go, and with them the mutable
util.bg they relied on -- a shared global whose value depended on which
style had been resolved last.
Every highlight group is unchanged by the black removal. The barbar and
notify groups do shift slightly, since a token can never reproduce a
blend toward the background exactly; they were chosen to read correctly
rather than to match the old values.
Light gains from this: black resolved to a muddy #cac4b5 that measured
1.85:1 on statusline mode chips, and base04 lifts that to 3.21:1. The
same change makes terminal color0 white in the light style, completing
an inversion that already had color7 resolving to a dark value.
Fill in the four stops each accent ramp was missing, transcribed from the
Solarized Osaka design tokens so every hue now carries the full 50-950
scale. The light palette mirrors them around 500 like the existing tiers,
and 800 joins 700/900/950 as a background tier so the vivid style leaves
it alone.
The 600 tier in particular gives group definitions a dimmed accent that
previously had to be computed, since it sits between the 500 accent and
the much darker 700.
All 88 accent stops now match the design tokens exactly. The generated
lua and helix extras pick up the new entries; no existing value changed.
Delta now paints diff lines with the 900/950 background tiers and keeps
the 500 tier for line numbers, so added and removed lines read as tinted
backgrounds rather than saturated blocks of color.
Also stop appending a bare separator when an extra declares no extension.
Ghostty is the only one, so every build wrote solarized_osaka_dark. next
to the correct solarized_osaka_dark with identical content.