Chart style guide
One quiet, consistent style for every graph, so readers learn it once. The data is the only thing allowed to be loud. Every chart on the site is drawn by assets/charts.js, and the email and share-card images follow the same rules.
Palette
Each hypothesis has a fixed color everywhere: on the dashboard, in charts, on cards and in email. Colors follow the hypothesis, never its rank, and the order is always A, B, C, D, D-open. Both sets pass a colorblind-safety check (lightness band, chroma floor, deuteranopia and tritanopia separation, and contrast), and dark mode uses its own validated steps rather than an automatic flip.
| Series | Light | Dark | Used for |
|---|---|---|---|
| A | #B8700C | #C4861A | AGI undisclosed |
| B | #00897B | #139A8C | Secret RSI |
| C | #9150B8 | #A36ED0 | Covert AGI online |
| D | #C8413A | #DC564A | Covert government influence |
| D-open | #3569D4 | #4F82DC | Open government influence |
| Accent | #B8700C | #D9A441 | The one thing a single-series chart is about: the index, highlights, forecast bars |
Status colors are reserved for tripwires and the fire alarm and always come with an icon and a word. Tripwires: ○ Quiet (green), ◐ Watching (amber), ● Tripped (red). Fire alarm: ○ Normal (green), ◐ Watch (amber), ◉ Warning (red), ● Alarm (red). They never stand in for a hypothesis.
Text variants. Text on a background uses its own tokens so it passes WCAG AA contrast (4.5:1); the series colors stay for marks only.
| Token | Light | Dark | Used for |
|---|---|---|---|
--link | #2F62C8 | #6B96E6 | Links and the "credible report" tag |
--sA-text | #8A5608 | #C4861A | Amber text, such as the "expert opinion" tag |
--warn-text | #855C00 | #D4A72C | Amber status words, such as a met Watch trigger |
--crit-bg | #B42318 | #B42318 | The alarm banner, behind white text |
Rules
- Pick the form first. One number gets a stat tile or the dial, not a chart. Change over time gets lines. Durations get range bars. Probabilities get meters.
- Thin marks. 2px lines with round joins. Dots at least 8px with a 2px ring in the surface color. Bars no thicker than 24px, with 4px rounded ends.
- Recessive chrome. Gridlines and axes are 1px solid hairlines one step off the surface, never dashed. Ticks fall on clean values.
- One axis. Never two y-scales on one chart. Different measures get separate charts.
- Identity is never color alone. Two or more series always have a legend, plus a few direct labels at line ends where they don't collide. Never a number on every point.
- Text stays ink. Labels and values use the text colors. The colored mark beside them carries identity.
- Emphasis over rainbow. When one thing matters (disclosed by outsiders, our forecast), it gets the accent and everything else goes gray.
- Every chart is interactive and readable without the picture. Hover or tap shows a tooltip, and every chart has a "Show as table" view.
- Forecasts vs projections. Our forecast is a solid line through the three numbers we actually state (now, end-2030, end-2035), with a shaded judgment band: not a statistical interval, but roughly how far our number could plausibly move as evidence arrives. A projection of a measured trend is dashed, with the 95% band of the trend line and a lighter band where a single new measurement should land. We never project our own daily probability line: the dated forecasts (end-2030, end-2035) shouldn't drift predictably; the 'now' line is expected to rise along our own forecast. Outside forecasts are hollow rings, and those that only measure an announcement are left off the chart.
- Log scales for growth. Exponential trends go on a log axis labelled in human units (a workday, a work-week), so a straight line means steady doubling.
- Type. Headings in Source Serif 4. Everything else, including big numbers, in Public Sans. Aligned columns use tabular figures.
The Hidden AGI Index dial
An eye whose iris has 100 ticks, one per percentage point, lit in the accent color.
Lines: change over time
Range bars: how long something lasted
Meters: a probability, with market odds as a hollow ring
Status board: tripwires
Forecast: stated numbers, judgment band, outside forecasts
Projection: measured trend on a log scale
Dashed line: the fitted trend, projected. Darker band: the 95% band of the trend line. Lighter band: where a single new measurement should land. Faded dots: above METR's reliable range, left out of the fit.