infra: brand favicon set and light-default theme#316
Merged
Conversation
- Ship the full ICP brand favicon set (SVG vector, .ico, PNG rasters, Apple touch icon light+dark, Safari pinned-tab mask) per brand guide v2.26 §6.5, replacing the base64-PNG-in-SVG placeholder. - Add favicon .ico/PNG/apple-touch/mask-icon and theme-color head tags. - Stop auto-switching theme on prefers-color-scheme: light is the deliberate default, dark applies only on an explicit stored choice. - Sync the theme-color meta with the applied theme. - Drop the off-system Inter 700 face; map bold prose to Inter 600. Supersedes #293.
lwshang
approved these changes
Jul 17, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Supersedes #293. Brings the docs site in line with the ICP/DFINITY brand guide favicon spec (design skill v2.7 / brand guide v2.26+, verified live at
v2.27) and finishes the theme correctness work #293 started, dropping the two token edits in #293 that contradicted the canonicaltokens.css.Favicon (the piece #293 deferred)
favicon.svg(gradient-infinity vector on a transparent canvas), multi-sizefavicon.ico, PNG rasters (16/32/48/192/512), Apple touch icon (light + dark), and asafari-pinned-tab.svgmask. Replaces the old base64-PNG-wrapped-in-SVG placeholder..icoalternate, PNG rasters,apple-touch-icon, andmask-iconwith rust#a8482b. Starlight continues to emit the primary SVG.Theme correctness
prefers-color-schemein bothThemeProvider.astro(FOUC guard) andThemeSelect.astro. Light is the deliberate default; dark applies only on an explicit stored choice.theme-colormeta (#faf9f5) and sync it to the dark bark value (#14110d) when the user opts into dark, so the browser chrome matches the applied theme rather than the OS preference.Type system
Intentionally NOT carried over from #293
Two dark-theme token edits in #293 contradict the canonical
tokens.css(the skill's declared source of truth), and the site already matches the canonical values, so they are dropped:--icp-bg-cta-inversestays#ffffffin dark (infra: sync site to brand guidelines v2.22 #293 set#1a1a1a)--icp-bg-sunkstays#1b1812in dark (infra: sync site to brand guidelines v2.22 #293 set#1f1b14)No component consumes
--icp-bg-cta-inversetoday, so there is no visual impact either way.Verified
npm run buildpasses.theme-colormeta.public/favicon.svgis the vector mark (no base64); no Inter 700 in the bundle.