createTheme()
Pass a config object, get back a CSS class name. Apply it to <html>.
colors controls the semantic tier — every component inherits from it. The vars escape hatch lets you set any --sd-* CSS variable directly for fine-grained control.
SSR support
UsebuildTheme() to get the raw CSS string for server-side rendering:
Preset themes
Three presets ship out of the box. Add the class to<html> — some SuperDoc elements (popovers, dropdowns) are appended to <body>, so they need to inherit from <html>.
Docs
Google Docs aesthetic. Clean blues, compact toolbar, subtle shadows.
Word
Microsoft Word aesthetic. Fluent-style borders and surfaces.
Blueprint
High-contrast technical preset. Teal accents, structured layout.
CSS variables (advanced)
createTheme() generates CSS variables under the hood. You can also set them directly:
Next steps
Custom themes guide
Full API reference, dark theme starter, all CSS variables by component.
Migration guide
Old-to-new variable name mapping. Backward compatibility details.

