Two modes, one accent.
Everything on pris.la is built from these tokens. Midnight is the default; Daylight is its light mode, and a page opts into it. Every value and contrast ratio on this page is read from the live stylesheet, so it is always current.
Semantic tokens
Components use these names, never hex values. Ratios are WCAG 2.1 contrast against --bg, then --surface-card, for the mode shown.
Chart palette
For charts with more than one series. Assign in this order and label every series. Daylight darkens each hue so marks keep 3:1.
Three faces, fluid scale
Newsreader for headlines, Hanken Grotesk for reading, Space Mono for anything that labels or counts.
Spacing and radii
Fluid spacing for page rhythm, fixed gaps inside it. Corners stay tight; borders do the separating, not shadows.
Radii
The shared library
These are the real classes from design-system.css. Tab through them to see the focus ring.
Buttons
Tool cards
ESG Report Comparison Tool
Compare sustainability reports across companies side by side — metrics, emissions, governance.
Try it → ◉Type Me
Find out your MBTI type — but rated by the people who actually know you.
Try it →Project cards
GenAI adoption at SP Group
The AI is the easy part. Trust, workflow and change management are the work.
National grid operations on SaaS
IoT and anomaly detection at the core. High stakes, real operators.
14 MVPs in 12 months
An agile and product practice set up from scratch.
Stats
Chat
Input
The floor, in both modes
Contrast
- Text tokens meet 4.5:1 on
--bgand--surface-card. --line-strong,--focus-ring,--okand chart hues meet 3:1.--lineis decorative. It is never the only edge of a control.
Accent
- Text on an accent fill is always
--on-accent: navy on pink in Midnight, white on rose in Daylight. - Never white on pink. Never pink text on Daylight; the rose accent replaces it.
Focus and motion
- Every interactive element shows a 2px solid
--focus-ringon keyboard focus. - Reduced-motion users get no hover lifts or slides.
Colour is never alone
- The online dot sits next to a word.
- Chart series are labelled directly, not told apart by hue.
Wordmark
Pick the file by mode. Never recolour it pink or set it on an accent fill.
On any page
Link the stylesheet, then build only from tokens and classes. Midnight needs nothing. A page that should be Daylight sets it on <html>; the site never follows the OS setting.
<link rel="stylesheet" href="https://pris.la/design-system.css">
<!-- Daylight, opt-in, whole page -->
<html data-theme="daylight">
<!-- or one container -->
<div class="theme-daylight">…</div>
.my-thing {
background: var(--surface-card);
color: var(--ink);
border: 1px solid var(--line);
font-family: var(--font-body);
}
Free to use, with credit
The design system is MIT licensed: use it, change it, ship it, commercially or not. Keep the copyright notice at the top of the CSS files you copy. The pris.la name and wordmark are not included, and the fonts keep their own Open Font License. Read the licence