You were right that the first pass picked chart types by habit. This one starts from the question a reader is actually asking, because the job the data has to do picks the form, and colour comes last. It also starts from a constraint I checked with a validator rather than an opinion.
So the status palette cannot become a series palette. That is settled by measurement. Everything below is the design that follows from it.
Drawn fresh from the Untitled kit and the system’s ruled tokens, not restyled from the originals.
A finished month is solid; the running month is hatched, the fill rule’s chart job. Animation off on every series.
Sixteen real measures from the platform. The middle column is the form, the right column is why that form and not the obvious one.
One currency at a time, unlike the dashboard which converts everything into the entity's base. A dashboard answers "how is the business", so one number is right. An analysis answers "where did it come from", and adding dollars to dirhams at today's rate to answer that is arithmetic dressed as insight.
Worth writing down, because every one of these will be asked for eventually and the reason should not have to be reinvented each time.
The wireframes already run Recharts, and shadcn is a thin wrapper over it, so this is not a library evaluation. It is the question that actually matters: of the sixteen forms above, how many cost nothing to build.
One page, many sections, holding the rules every other page obeys. The grammar is a repeating three column row: what it is, what it is set to, and who is allowed to change it. That third column is what stops a settings page becoming the place where nobody knows who broke something.
Three ideas from it are now in the system and they are the good ones: a pattern fill instead of a gradient, which happens to be the hatch rule we already had; a dashed tail for the period still running, which fixed a genuine defect where August looked like a finished month next to July; and a reference band behind a series, which is how a target and a margin floor get stated without a second series. The biaxial variant we are not taking, for the reason above.
Those five tokens are named like a categorical palette and they are not one. One hue family, lightness falling 77.5, 54.2, 44.1, 36.9, 30.3, in order. shadcn's own default for "five chart colours" is a sequential ramp, arrived at independently of the validator run at the top of this lab and landing in exactly the same place. Five slots called chart-1 to chart-5 is the shape everybody copies; a single hue going light to dark is what the people who built it actually shipped.
Eight of the sixteen are native Recharts. Two more are Recharts with a reference primitive. The remaining six are plain HTML, and five of those are things that should never have been charts. Nothing in the chart language needs a new dependency, and nothing in it needs the platform to leave the stack it already runs.
A tick and a blank can only say yes and no, and the true answer for releasing credit against the gate is "yes, with a second signature". Hatched has meant open, in flight, not settled alone since the first lab, and here it means a capability that exists but cannot be exercised by one person. Same mark, same meaning, on a surface nobody had it in mind for.
The lab’s own decision tables, extracted verbatim.