Ontwerpsysteem

Dit is geen samenvatting van hoe de site eruitziet. Het is de stylesheet zelf, uitgelezen en getoond.

Kleuren, per thema

Elk token heeft twee waarden. Dat is het hele punt van een token: `--accent` is op donker oranje en op licht fors donkerder, omdat dezelfde kleur op een lichte ondergrond anders geen leesbaar contrast haalt. Dezelfde rol, andere waarde.

Vlakken

--surface
Donker
#08090c
Licht
#e7e9ef
--surface-2
Donker
#0b0d12
Licht
#dbdee6

Tekst

--ink
Donker
#f2f4f7
Licht
#0c0f15
--ink-2
Donker
#a6adb8
Licht
#4a525e
--ink-3
Donker
#8a929d
Licht
#59616d

Glas

--glass-fill
Donker
rgba(255, 255, 255, 0.055)
Licht
rgba(255, 255, 255, 0.55)
--glass-fill-2
Donker
rgba(255, 255, 255, 0.03)
Licht
rgba(255, 255, 255, 0.38)
--glass-fill-hi
Donker
rgba(255, 255, 255, 0.085)
Licht
rgba(255, 255, 255, 0.72)

Lijnen

--line
Donker
rgba(255, 255, 255, 0.12)
Licht
rgba(12, 15, 21, 0.13)
--line-2
Donker
rgba(255, 255, 255, 0.07)
Licht
rgba(12, 15, 21, 0.08)

Diepte

--shadow-card
Donker
none
Licht
0 1px 2px rgba(12, 15, 21, 0.07), 0 12px 28px -16px rgba(12, 15, 21, 0.34)
--shadow-deep
Donker
0 30px 80px -30px rgba(0, 0, 0, 0.85)
Licht
0 18px 44px -22px rgba(20, 24, 34, 0.22)
--spec
Donker
rgba(255, 255, 255, 0.18)
Licht
rgba(255, 255, 255, 0)

Overig

--podium
Donker
#0e1014
Licht
#0e1014
--podium-marge
Donker
10px
Licht
10px
--podium-schaduw
Donker
none
Licht
0 1px 2px rgba(12, 15, 21, 0.10), 0 18px 40px -20px rgba(12, 15, 21, 0.45)
--panel
Donker
rgba(18, 21, 27, 0.93)
Licht
rgba(255, 255, 255, 0.95)

Accenten

--accent
Donker
#e8843b
Licht
#9c4a0d
--accent-ink
Donker
#f0954f
Licht
#8a400a
--accent-2
Donker
#9b7dff
Licht
#5b3cc9
--accent-2-ink
Donker
#ae95ff
Licht
#4e32b4
--ok
Donker
#4ade9e
Licht
#0a7047
--on-accent
Donker
#0a0b0d
Licht
#ffffff

Sfeer

--mesh
Donker
0.5
Licht
0.24
--mesh-1
Donker
rgba(155, 125, 255, 0.24)
Licht
rgba(91, 60, 201, 0.34)
--mesh-2
Donker
rgba(232, 132, 59, 0.22)
Licht
rgba(156, 74, 13, 0.3)
--mesh-3
Donker
rgba(74, 222, 158, 0.18)
Licht
rgba(10, 112, 71, 0.26)
--mesh-4
Donker
rgba(255, 255, 255, 0.16)
Licht
rgba(12, 15, 21, 0.14)

Contrast, uitgerekend

Deze getallen staan hier niet opgeschreven maar worden bij het opbouwen van de pagina berekend. Een opgeschreven getal veroudert bij de eerste kleurwijziging, en niemand merkt dat.

Rol Combinatie Donker Licht Eis
Lopende tekst --ink op --surface 18,07 15,80 4,5
Gedempte tekst --ink-2 op --surface 8,81 6,50 4,5
Bijschrift --ink-3 op --surface 6,33 5,16 4,5
Accent als tekst --accent-ink op --surface 8,64 6,14 4,5
Tekst op accentvlak --on-accent op --accent 7,31 6,18 4,5
Bevestiging --ok op --surface 11,60 5,06 4,5
Scheidslijn --line op --surface 1,33 1,31 —

Doorzichtige waarden worden eerst over het achterliggende vlak gelegd, want een rand van 12% wit is niet 12% wit maar wat je uiteindelijk ziet. De eis is 4,5:1 voor tekst en 3:1 voor de begrenzing van een bedieningselement.

Schalen

Drie schalen, en de regel eronder is telkens dezelfde: een stap die niemand ziet, levert geen hiërarchie op en kost wel dat dingen op elkaar klikken.

Tekstgroottes

  • Ag --text-xs 0.8rem
  • Ag --text-sm 0.889rem
  • Ag --text-base 1rem
  • Ag --text-lg 1.125rem
  • Ag --text-xl 1.25rem
  • Ag --text-2xl 1.5rem
  • Ag --text-3xl 1.875rem
  • Ag --text-4xl 2.25rem
  • Ag --text-5xl 3rem
  • Ag --text-6xl 3.75rem

Letters

Drie letters, en ze stonden tot 29 augustus 2026 nergens als token — dertig keer letterlijk "Space Grotesk" en zesendertig keer "JetBrains Mono" door het stijlblad heen. De onderste twee zijn van de oude laag en wijzen nog naar Inter; die wordt door de site niet meer gebruikt maar wel door de beheeromgeving, en daarom staan ze er nog.

  • Ag
    --font-body "Inter", system-ui, -apple-system, sans-serif
    oude laag
  • Ag
    --font-heading "Space Grotesk", "Inter", system-ui, sans-serif
    oude laag
  • Ag
    --font-kop "Space Grotesk", system-ui, sans-serif
  • Ag
    --font-tekst "Hanken Grotesk", system-ui, sans-serif
  • Ag
    --font-mono "JetBrains Mono", ui-monospace, monospace

Hoekrondingen

  • --radius-sm 0.375rem
  • --radius-md 0.75rem
  • --radius-lg 1rem
  • --radius-xl 1.5rem
  • --radius-full 9999px

Ruimte

  • --space-1 0.5rem
  • --space-2 1rem
  • --space-3 1.5rem
  • --space-4 2rem
  • --space-5 2.5rem
  • --space-6 3rem
  • --space-8 4rem
  • --space-10 5rem
  • --space-12 6rem
  • --space-16 8rem

Onderdelen

Geen afbeeldingen van knoppen — de echte onderdelen, met dezelfde opmaak als op de rest van de site.

Knoppen en labels
Primair Secundair Statuslabel
Kaart

Op donker komt de diepte uit een waardestap, op licht uit schaduw. Gelijke verhouding is namelijk niet gelijke waarneming: bij bijna-wit leest dezelfde stap als niets.

Beeld

Beeld is geen versiering en het staat niet los van het systeem. Dit blok is hetzelfde montuur dat elke render op de site draagt — zet de themaknop om en je ziet de grond níét meewisselen.

Voorbeeld van een eigen render in het montuur: de doorsnede van een audit
Twee tandwielen naast elkaar: het linker met gave tanden, het rechter met weggesleten en afgebroken tanden en een doorgebogen spaak
Hetzelfde onderdeel als op een artikelpagina, niet nagebouwd. Op een smal scherm en bij verminderde beweging staat hier een stilstaand beeld.
  • Bouwen, niet genereren Beeld dat een object beschrijft wordt in Blender gebouwd. Dat levert vier dingen tegelijk: geen beeldcredits, écht werk dus binnen de contentwaarheidsregel, een demonstratie van de dienst die we verkopen, en een beeldtaal die niet te kopiëren is omdat het geen stockstijl is.
  • Eén idee per beeld Navy ondergrond, zijlicht, en één ding dat het beeld draagt. Het merkzaad legt een palet vast — amber, cyaan, navy — en géén materiaal. Toen alles messing werd, hield het materiaal op iets te betekenen: dan kies je voorwerpen die zich ín messing laten uitvoeren in plaats van voorwerpen die waar zijn.
  • De doorsnede is het bewijs Naast het eindbeeld staat dezelfde scène in klei, met de randen in amber. Van een gegenereerd beeld bestaat die niet, dus er valt niets uit te leggen en niets te weerleggen. Een bijschrift "gerenderd in Blender" is een bewering, en beweringen worden gecontroleerd.
  • Het beeld heeft een eigen grond Een render kun je opnieuw belichten, een opname niet — een nachtvlucht laat zich niet licht graderen zonder een slechte nachtvlucht te worden. Daarom wisselt het montuur niet mee met het thema. Op een lichte pagina leest donker beeld dan als een gemonteerde opname in plaats van als een gat.
  • Beweging alleen waar ze waar is Drie van de drieëntwintig artikelbeelden bewegen: de weegschaal hunt na, de tandwielen draaien één ronde zodat de slijtage langskomt, en bij de stempel beweegt alléén de camera — daar is de slag geslagen en zou elke beweging van het onderwerp verzonnen zijn. De lus sluit op het beeldpunt af, dus je ziet nooit een sprong. De still blijft het element dat de laadtijd bepaalt; de clip komt erover te liggen zodra hij kan spelen. Onder 768 pixels en bij verminderde beweging wordt hij niet eens opgehaald.

Waar het ontwerp zweeg

Het ontwerpbestand is uitgevoerd, maar het gaf niet overal antwoord. Dit zijn de drie plekken waar wij hebben ingevuld — opgeschreven, want een ingevulde stilte die niemand vastlegt wordt later voor een fout aangezien.

  • Een knop zonder palet Het ontwerp heeft twee themaknoppen, maar `dark` bepaalt er precies twee waarden: het icoon en het bijschrift. Nul kleuren wisselen. Het hele lichte palet is van ons, inclusief het donkerdere accent — oranje haalt op een lichte ondergrond anders geen 4,5:1.
  • Beeldvlakken zonder beeld Het ontwerp reserveert de ruimte en toont er een plaatshouder. Wat erin hoort, hoe het over twee thema's werkt en waar het vandaan komt, stond nergens. Dat is de vorige sectie geworden.
  • Een schaal die niet werd gebruikt De hoekrondingen en de letters lagen als token klaar en werden genegeerd: achttien harde waarden voor vijf tokens, en zesenzestig letterlijke letternamen. Trouw overzetten was toen goed — het opruimen hoorde erbij en gebeurde pas later.
Wat hier niet in zit

Deze pagina toont wat er is, niet wat er zou moeten zijn. De sfeerlagen zijn decoratief en dragen geen betekenis. De beeldtaal staat er bewust niet in: die is nog niet één taal, en een systeempagina die dat gladstrijkt zou precies de fout maken die de vorige versie vier maanden maakte.

Benieuwd wat er mogelijk is?

Eén gesprek is vaak genoeg om te weten of het past. Binnen 24 uur een reactie, en zonder tussenpersonen.

  • Reactie binnen 24 uur, altijd persoonlijk
  • Na een half uur bellen weet u de orde van grootte
  • Vrijblijvend eerste gesprek, geen verplichtingen
  • Ook voor bestaande software van een andere partij