Important notes¶
Per-side spacing classes are derived at runtime — safelist them for Tailwind
box-model.js derives per-side tokens (pt-6 from p-6) in the browser,
so those class names appear in no source file a Tailwind build can scan —
a purge build silently drops them, and padding renders as if it were never
set. The admin Tailwind Safelist export (see
Frameworks) includes every derived
class so this can't happen.
Per-viewport values
Every value here is per viewport, resolved mobile-first (a viewport with no entry inherits the nearest narrower one), and rides Canvas's own draft → publish → revision lifecycle. Switching the device picker re-points every control to that viewport's stored value.
Only one background type is active per viewport
Picking a new tab — Color, Image, or Video — replaces the previous one for that viewport rather than layering them.
Props are grouped automatically
Every component's form splits into Content / Style / Advanced tabs from a YAML annotation on the component — no custom form code needed.
Fully-justified text isn't offered by default
It fails WCAG 2.1 SC 1.4.8 (Level AAA) for body text. If your site's admin adds it anyway, the panel surfaces an in-context note explaining the trade-off rather than silently allowing it.