Skip to content

System settings

Checked against c1b2fa4 on 2026-11-10. The files it covers are unchanged since.

When the user changes a system setting, the host tells the core, and the page restyles and lays out again without a reload. The page doesn’t need to listen for anything.

Setting What the page sees Set by
Dark mode prefers-color-scheme, and system colors in that scheme niso_dom_set_color_scheme
Text size (Dynamic Type, font scale) every computed font size scales; CSS lengths don’t niso_dom_set_text_scale
Bold text fonts drawn heavier niso_dom_set_font_weight_adjustment (Android), niso_dom_set_system_font_weights (Apple)
Increase contrast, accent color the platform’s colors as CSS variables niso_dom_set_platform_style
Reduce transparency (Apple) glass and materials the host draws turn solid the host

Because the text scale changes computed sizes rather than the CSS, a page written with plain px sizes still follows the user’s text size, and getComputedStyle keeps reporting the CSS sizes.

Pages can’t query prefers-contrast, prefers-reduced-motion or prefers-reduced-transparency: the core has no setter for them yet. Reduce Motion doesn’t reach the page.

The platform’s colors and text styles themselves are in Platform style.