<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>tokens on Retro Dispatch</title><link>https://phantompixeldev.github.io/hugo-theme-retrocss/tags/tokens/</link><description>Recent content in tokens on Retro Dispatch</description><generator>Hugo</generator><language>en-us</language><copyright>© 2026 Retro Dispatch</copyright><lastBuildDate>Wed, 02 Sep 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://phantompixeldev.github.io/hugo-theme-retrocss/tags/tokens/index.xml" rel="self" type="application/rss+xml"/><item><title>Designing a token system that survives dark mode</title><link>https://phantompixeldev.github.io/hugo-theme-retrocss/posts/hello-retro/</link><pubDate>Wed, 02 Sep 2026 00:00:00 +0000</pubDate><guid>https://phantompixeldev.github.io/hugo-theme-retrocss/posts/hello-retro/</guid><description>&lt;h2 id="why-tiers"&gt;
 Why tiers
 &lt;a class="heading-anchor" href="#why-tiers" aria-label="Link to Why tiers"&gt;&lt;span aria-hidden="true"&gt;#&lt;/span&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;A colour is not one value. The blue that fills a button is not the blue that
reads as text on grey, and using either in the other&amp;rsquo;s place is how a design
system ships something illegible.&lt;/p&gt;
&lt;h2 id="the-four-tiers"&gt;
 The four tiers
 &lt;a class="heading-anchor" href="#the-four-tiers" aria-label="Link to The four tiers"&gt;&lt;span aria-hidden="true"&gt;#&lt;/span&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Fill, on-fill, on-surface, and states. Every hue carries all four.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma retro-code"&gt;&lt;code class="language-css" data-lang="css"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nd"&gt;root&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nv"&gt;--retro-primary&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mh"&gt;#0000aa&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nv"&gt;--retro-primary-fg&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mh"&gt;#ffffff&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nv"&gt;--retro-primary-text&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mh"&gt;#000080&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="what-it-buys-you"&gt;
 What it buys you
 &lt;a class="heading-anchor" href="#what-it-buys-you" aria-label="Link to What it buys you"&gt;&lt;span aria-hidden="true"&gt;#&lt;/span&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;One class sets both a fill and the text colour that survives on it.&lt;/p&gt;</description></item><item><title>A type scale for interfaces that shout</title><link>https://phantompixeldev.github.io/hugo-theme-retrocss/posts/a-type-scale-that-shouts/</link><pubDate>Fri, 07 Aug 2026 00:00:00 +0000</pubDate><guid>https://phantompixeldev.github.io/hugo-theme-retrocss/posts/a-type-scale-that-shouts/</guid><description>&lt;p&gt;Windows 95 shipped at 96 DPI with an 8pt UI font. Reproducing that number today
produces text nobody can read on a phone, which is the difference between an
homage and a re-enactment.&lt;/p&gt;
&lt;h2 id="steps-not-sizes"&gt;
 Steps, not sizes
 &lt;a class="heading-anchor" href="#steps-not-sizes" aria-label="Link to Steps, not sizes"&gt;&lt;span aria-hidden="true"&gt;#&lt;/span&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;--retro-font-size-xs&lt;/code&gt; through &lt;code&gt;-3xl&lt;/code&gt;, all in &lt;code&gt;rem&lt;/code&gt;, all derived from one body
size. A component asks for a step, never a pixel value, so a site that raises
the base size moves everything with it.&lt;/p&gt;</description></item></channel></rss>