Most sites that support a light mode do so by following the operating system preference. The user sets their system to light mode, the site switches. This is the conventional approach. Flatline Dynamics does it differently, and the reason is worth stating.
The site defaults to its dark palette regardless of system preference. Light mode is available as an explicit opt-in, accessed via the toggle in the footer. The toggle persists across sessions using local storage. System preference is not read.
Why not follow system preference. The dark palette is not a stylistic default that should be overridden whenever the user's system happens to be in light mode. It is the intended reading environment for this site. The visual system was designed dark-first: the colour values, contrast ratios, and typographic weight were all tuned for dark backgrounds. Following system preference would mean presenting the site in a palette that was not the primary design surface to a significant fraction of visitors who happen to have their system set to light mode for unrelated reasons.
An explicit opt-in means the user has made an active choice to read the site in light mode. That choice is a signal worth respecting. A passive follow of system preference is not the same signal.
How the toggle works. The toggle adds or removes the class
duty-day from the document root element. All light-mode colour
values are defined in a html.duty-day block in the site's CSS,
which overrides the default dark-palette variables. Components do
not need to know which mode they are in: they read CSS custom
properties, and those properties change when the class changes.
The toggle state is written to local storage under the key
fd-duty-day. On subsequent visits, the preference is read and
applied before first paint, which prevents a flash of the dark
palette on a user who has opted into light mode.
The name. Duty day is a term from aviation. It refers to the period of time during which a crew member is on duty, bounded by start and end of day and governed by regulated rest requirements. It is a span of working time, not a round-the-clock state.
The light palette is called duty-day because it is a daytime reading mode: higher ambient light, higher surface brightness, suitable for reading in an environment where the dark palette's low luminance is unnecessary or inconvenient. The name is not a claim that the dark palette is night-only. It is a label for the alternative mode that reflects the context it was designed for.
Palette decisions. The duty-day palette uses warm neutral backgrounds rather than pure white. The surface colour is approximately #f4f0e8, a warm off-white that reduces the stark contrast of a pure white page. Border colours are solid hex values at moderate opacity rather than rgba black overlays, which behave more predictably across different rendering contexts. The accent mint is adjusted to a darker value than the dark-palette version to maintain legibility against light backgrounds.
The duty-day palette was not reverse-engineered from the dark palette. It was built separately, with the same hierarchy of primary, secondary, and tertiary text but tuned for the different luminance environment. Both palettes target the same WCAG AA contrast ratios against their respective backgrounds.