Create a Custom Theme
Colorstext
background
primary
secondary
muted
highlight
gray
accent
darken
Aa inherit
Aa system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif
Font Sizes0 1 2 3 4 5 6 7 8
Font Weightsbody heading bold display
Line Heightsbody heading
Space0 1 2 3 4 5 6 7 8
Note: some web fonts may not render unless installed locally.
{ styles: { pre: { fontFamily: 'monospace', fontSize: 1, p: 3, color: 'text', bg: 'muted', overflow: 'auto', code: { color: 'inherit' }, variant: 'prism' }, root: { margin: 0, fontFamily: 'body', lineHeight: 'body', fontWeight: 'body' }, img: { maxWidth: '100%', height: 'auto' }, h1: { variant: 'text.display' }, h2: { variant: 'text.heading', fontSize: 5 }, h3: { variant: 'text.heading', fontSize: 4 }, h4: { variant: 'text.heading', fontSize: 3 }, h5: { variant: 'text.heading', fontSize: 2 }, h6: { variant: 'text.heading', fontSize: 1 }, a: { color: 'primary', '&:hover': { color: 'secondary' } }, code: { fontFamily: 'monospace', fontSize: 1 }, inlineCode: { fontFamily: 'monospace', color: 'secondary', bg: 'muted' }, table: { width: '100%', my: 4, borderCollapse: 'separate', borderSpacing: 0 }, th: { verticalAlign: 'bottom', borderBottomWidth: '2px', textAlign: 'left', py: '4px', pr: '4px', pl: 0, borderColor: 'muted', borderBottomStyle: 'solid' }, td: { verticalAlign: 'top', borderBottomWidth: '1px', textAlign: 'left', py: '4px', pr: '4px', pl: 0, borderColor: 'muted', borderBottomStyle: 'solid' }, hr: { border: 0, borderBottom: '1px solid', borderColor: 'muted' }, xray: { '*': { outline: '1px solid rgba(0, 192, 255, .25)' } }, navlink: { display: 'inline-block', fontWeight: 'bold', color: 'inherit', textDecoration: 'none', ':hover,:focus': { color: 'primary' } } }, colors: { text: 'var(--theme-ui-colors-text)', background: 'var(--theme-ui-colors-background)', primary: 'var(--theme-ui-colors-primary)', secondary: 'var(--theme-ui-colors-secondary)', muted: 'var(--theme-ui-colors-muted)', highlight: 'var(--theme-ui-colors-highlight)', gray: 'var(--theme-ui-colors-gray)', accent: 'var(--theme-ui-colors-accent)', darken: 'var(--theme-ui-colors-darken)', modes: { dark: { text: 'var(--theme-ui-colors-modes-dark-text)', background: 'var(--theme-ui-colors-modes-dark-background)', primary: 'var(--theme-ui-colors-modes-dark-primary)', secondary: 'var(--theme-ui-colors-modes-dark-secondary)', muted: 'var(--theme-ui-colors-modes-dark-muted)', highlight: 'var(--theme-ui-colors-modes-dark-highlight)', gray: 'var(--theme-ui-colors-modes-dark-gray)', accent: 'var(--theme-ui-colors-modes-dark-accent)' }, deep: { text: 'var(--theme-ui-colors-modes-deep-text)', background: 'var(--theme-ui-colors-modes-deep-background)', primary: 'var(--theme-ui-colors-modes-deep-primary)', secondary: 'var(--theme-ui-colors-modes-deep-secondary)', highlight: 'var(--theme-ui-colors-modes-deep-highlight)', accent: 'var(--theme-ui-colors-modes-deep-accent)', muted: 'var(--theme-ui-colors-modes-deep-muted)', gray: 'var(--theme-ui-colors-modes-deep-gray)' }, swiss: { text: 'var(--theme-ui-colors-modes-swiss-text)', background: 'var(--theme-ui-colors-modes-swiss-background)', primary: 'var(--theme-ui-colors-modes-swiss-primary)', secondary: 'var(--theme-ui-colors-modes-swiss-secondary)', highlight: 'var(--theme-ui-colors-modes-swiss-highlight)', accent: 'var(--theme-ui-colors-modes-swiss-accent)', muted: 'var(--theme-ui-colors-modes-swiss-muted)', gray: 'var(--theme-ui-colors-modes-swiss-gray)' } } }, fonts: { body: 'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif', heading: 'inherit', monospace: 'Menlo, monospace' }, fontSizes: [ 12, 14, 16, 20, 24, 32, 48, 64, 72 ], fontWeights: { body: 400, heading: 800, bold: 700, display: 800 }, lineHeights: { body: 1.5, heading: 1.25 }, sizes: { sidebar: 256, container: 1024 }, text: { heading: { fontFamily: 'heading', fontWeight: 'heading', lineHeight: 'heading' }, block: { variant: 'default', my: 2, textAlign: 'justify', textAlignLast: 'last', textJustify: 'auto' }, display: { variant: 'text.heading', fontSize: [ 5, 6 ], fontWeight: 'display', letterSpacing: '-0.03em', mt: 3 }, caps: { textTransform: 'uppercase', letterSpacing: '0.2em' } }, buttons: { primary: { color: 'background', bg: 'primary', fontWeight: 'bold' }, secondary: { variant: 'buttons.primary', color: 'background', bg: 'secondary' }, black: { fontWeight: 'bold', color: 'background', bg: 'text', '&:hover, &:focus': { bg: 'primary' } } }, links: { button: { display: 'inline-block', textDecoration: 'none', fontWeight: 'bold', fontSize: 2, p: 3, color: 'background', bg: 'text', borderRadius: 6, '&:hover, &:focus': { color: 'background', bg: 'primary' } }, nav: { display: 'block', width: '100%', px: 2, py: 2, color: 'inherit', textDecoration: 'none', fontSize: 1, fontWeight: 'bold', bg: 'transparent', transitionProperty: 'background-color', transitionTimingFunction: 'ease-out', transitionDuration: '.2s', borderRadius: 2, '&:hover': { bg: 'highlight' }, '&.active': { color: 'primary', bg: 'highlight' } } }, badges: { primary: { color: 'background' }, highlight: { color: 'text', bg: 'highlight' }, accent: { color: 'background', bg: 'accent' }, outline: { color: 'primary', bg: 'transparent', boxShadow: 'inset 0 0 0 1px' }, circle: { height: 16, minWidth: 16, lineHeight: '16px', textAlign: 'center', borderRadius: 9999 } }, images: { avatar: { width: 48, height: 48, borderRadius: 9999 } }, cards: { primary: { padding: 2, borderRadius: 4, boxShadow: '0 0 8px rgba(0, 0, 0, 0.125)' }, compact: { padding: 1, borderRadius: 2, border: '1px solid', borderColor: 'muted' } }, forms: { label: { fontSize: 1, fontWeight: 'bold' }, input: { borderColor: 'gray', '&:focus': { borderColor: 'primary', boxShadow: function boxShadow(t){return"0 0 0 2px "+t.colors.primary;}, outline: 'none' } }, select: { borderColor: 'gray', '&:focus': { borderColor: 'primary', boxShadow: function boxShadow(t){return"0 0 0 2px "+t.colors.primary;}, outline: 'none' } }, textarea: { borderColor: 'gray', '&:focus': { borderColor: 'primary', boxShadow: function boxShadow(t){return"0 0 0 2px "+t.colors.primary;}, outline: 'none' } }, slider: { bg: 'muted' } }, alerts: { primary: { color: 'background' }, secondary: { color: 'background', bg: 'secondary' }, accent: { color: 'background', bg: 'accent' }, highlight: { color: 'text', bg: 'highlight' } }, layout: { container: { p: 3 } }, prism: { '.comment,.prolog,.doctype,.cdata,.punctuation,.operator,.entity,.url': { color: 'gray' }, '.comment': { fontStyle: 'italic' }, '.property, .tag, .boolean, .number, .constant, .symbol, .deleted, .function, .class-name, .regex, .important, .variable': { color: 'accent' }, '.atrule, .attr-value, .keyword': { color: 'primary' }, '.selector, .attr-name, .string, .char, .builtin, .inserted': { color: 'secondary' } }, rawColors: { text: '#000000', background: '#ffffff', primary: '#3333ee', secondary: '#111199', muted: '#f6f6f6', highlight: '#efeffe', gray: '#777777', accent: '#660099', darken: 'rgba(0, 0, 0, .25)', modes: { dark: { text: '#ffffff', background: '#060606', primary: '#33ccff', secondary: '#ee00ff', muted: '#191919', highlight: '#29112c', gray: '#999999', accent: '#cc00ff' }, deep: { text: 'hsl(210, 50%, 96%)', background: 'hsl(230, 25%, 18%)', primary: 'hsl(260, 100%, 80%)', secondary: 'hsl(290, 100%, 80%)', highlight: 'hsl(260, 20%, 40%)', accent: 'hsl(290, 100%, 80%)', muted: 'hsla(230, 20%, 0%, 20%)', gray: 'hsl(210, 50%, 60%)' }, swiss: { text: 'hsl(10, 20%, 20%)', background: 'hsl(10, 10%, 98%)', primary: 'hsl(10, 80%, 50%)', secondary: 'hsl(10, 60%, 50%)', highlight: 'hsl(10, 40%, 90%)', accent: 'hsl(250, 60%, 30%)', muted: 'hsl(10, 20%, 94%)', gray: 'hsl(10, 20%, 50%)' } } } }