Tokens
Every design decision as a named value. Search by name, value, or purpose.
Polytope
--ply-size-2xl 2rem
No token matches
Nothing has in its name, value, or purpose. Try a color, a value, or a group:
Color roles
| Token | Light | Dark | Purpose | Used in |
|---|---|---|---|---|
--ply-color-bg | #FFFFFF | #161615 | Page ground. | base, atlas, button, demo, form, nav, panel, search, tag, layout, utilities |
--ply-color-surface-sunken | #EEF0EF | #1C1C1A | Recessed areas: table stripes, inline code, input wells. | base, atlas, button, form, nav, note, search, table, writing |
--ply-color-panel | #141414 | #262624 | Exhibit panel. Code blocks, the probability machine, demo canvases. | base, atlas, button, code, demo, form, machine, panel, research, viz |
--ply-color-panel-text | #F6F7F6 | #F6F7F6 | Text inside black panels and code blocks. | base, atlas, button, code, demo, form, machine, panel, research, viz |
--ply-color-panel-muted | #B9BAB4 | #B9BAB4 | Muted text inside panels. | base, atlas, button, code |
--ply-color-panel-rule | #4A4A47 | #4A4A47 | Hairlines inside panels, such as the rule under a code bar. | base, button, code, demo, machine, research, viz |
--ply-color-text | #141414 | #F2F2EE | Body text and headings. | base, atlas, button, form, machine, nav, note, panel, research, search, tag, viz, layout, utilities |
--ply-color-text-muted | #4A4A47 | #B9BAB4 | Captions, metadata, secondary navigation. | atlas, demo, form, machine, nav, panel, research, search, table, tag, viz, writing, utilities |
--ply-color-text-subtle | #6B6B66 | #8F8F89 | Placeholders and the quietest labels. Still above 4.5:1 on the page ground. | base, button, form, nav |
--ply-color-rule-strong | #141414 | #F2F2EE | The 3px exhibit rules and control borders. | base, atlas, demo, form, nav, research, search, table, writing, layout, modes |
--ply-color-rule | #D9DAD6 | #3A3A37 | Hairlines between rows and list items. | atlas, demo, form, nav, search, table, viz, writing, layout |
--ply-color-accent | #D9412B | #F0654F | Fills only: the current-location point, balls, active marks. | base, atlas, form, machine, nav, research, search, tag, writing, layout, utilities |
--ply-color-accent-text | #B8321F | #F0654F | Tomato when it has to be read as text. | button, form, nav, research, writing |
--ply-color-on-accent | #FFFFFF | #141414 | Text on a filled tomato control, such as a hovered button. The fill is accent-text. | button |
--ply-color-link | #0F6E73 | #5CC2C7 | Links. Teal, semibold, and always underlined. | base, note, research |
--ply-color-link-hover | #141414 | #F2F2EE | Link text on hover; the underline turns tomato. | base |
--ply-color-note | #E9A81C | #E9A81C | Note and highlight fill. Pair with text. | base, atlas, code, machine, note, table, tag |
--ply-color-note-soft | #FBEFD2 | #3A2F14 | The quieter note fill. | note, search |
--ply-color-focus | #0F6E73 | #F2B83A | Focus ring on the page ground. | base, atlas, form, search |
--ply-color-focus-on-panel | #F2B83A | #F2B83A | Focus ring inside black panels. | base |
--ply-color-selection | #E9A81C | #E9A81C | Text selection, always with black text. | base |
--ply-color-code-comment | #F2B83A | #F2B83A | Code comments, in mustard light so explanations read first. | code |
--ply-color-code-keyword | #F0654F | #F0654F | Code keywords. | code |
--ply-color-code-string | #5CC2C7 | #5CC2C7 | Code strings. | code, panel |
--ply-color-code-number | #95AEE3 | #95AEE3 | Code numbers. | code |
Color primitives
| Token | Light | Dark | Purpose | Used in |
|---|---|---|---|---|
--ply-white | #FFFFFF | same | Gallery white. The light page ground, the light chart surface, and white text on black. | tokens only |
--ply-ink-50 | #F6F7F6 | same | Panel chalk. Text inside black panels and code blocks. | note |
--ply-ink-100 | #EEF0EF | same | Gallery wall. Sunken surfaces and table stripes. | tokens only |
--ply-ink-200 | #D9DAD6 | same | Hairline gray. Rules between table rows and list items, and chart grid lines. | tokens only |
--ply-ink-300 | #B9BAB4 | same | Panel gray. Muted text inside panels, and muted text in dark mode. | tokens only |
--ply-ink-400 | #8F8F89 | same | Quiet text in dark mode. | tokens only |
--ply-ink-500 | #6B6B66 | same | Quiet gray. Placeholders and the quietest labels on white, still above 4.5:1. | tokens only |
--ply-ink-600 | #4A4A47 | same | Caption gray. Captions, metadata, and inactive tabs; the hairline inside panels. | tokens only |
--ply-ink-700 | #3A3A37 | same | Rules between rows in dark mode. | tokens only |
--ply-ink-800 | #262624 | same | After-hours panel. Panels in dark mode, one step lighter than the ground. | tokens only |
--ply-ink-900 | #1C1C1A | same | Sunken surfaces and the chart surface in dark mode. | tokens only |
--ply-ink-950 | #141414 | same | Exhibit black. Panels, heavy rules, body text. | base, code, note, tag |
--ply-tomato-100 | #FBE3DE | same | Pale tomato tint. Not used by the kit; for your own tinted backgrounds. | tokens only |
--ply-tomato-400 | #F0654F | same | Tomato bright. The accent in dark mode and the code keyword color. | note |
--ply-tomato-500 | #D9412B | same | The moving part: current location, the balls in the probability machine. | tokens only |
--ply-tomato-600 | #B8321F | same | Tomato ink. Tomato as text on white, and the hover fill of primary buttons. | tokens only |
--ply-mustard-100 | #FBEFD2 | same | Mustard soft. The quiet note fill in light mode. | tokens only |
--ply-mustard-400 | #F2B83A | same | Mustard light. The focus ring inside panels and in dark mode, and the code comment color. | note |
--ply-mustard-500 | #E9A81C | same | Notes and highlights. Always carries black text. | tokens only |
--ply-mustard-700 | #7A5300 | same | Deep mustard. Not used by the kit; for mustard text or marks on white. | tokens only |
--ply-teal-100 | #DDF1F0 | same | Pale teal tint. Not used by the kit; for your own tinted backgrounds. | tokens only |
--ply-teal-300 | #5CC2C7 | same | Teal light. Links in dark mode and inside panels, and the code string color. | tokens only |
--ply-teal-700 | #0F6E73 | same | Links on light grounds. | tokens only |
--ply-cobalt-100 | #E3EAF8 | same | Sequential chart ramp, step 1 (lightest). | tokens only |
--ply-cobalt-200 | #C2D1F0 | same | Sequential chart ramp, step 2. | tokens only |
--ply-cobalt-300 | #95AEE3 | same | Sequential chart ramp, step 3; also the code number color. | tokens only |
--ply-cobalt-400 | #6A8BD4 | same | Sequential chart ramp, step 4. | tokens only |
--ply-cobalt-500 | #3A62C4 | same | Cobalt. Sequential chart ramp, step 5, and the third categorical chart slot. | tokens only |
--ply-cobalt-600 | #2B4A99 | same | Sequential chart ramp, step 6. | tokens only |
--ply-cobalt-700 | #1D336B | same | Sequential chart ramp, step 7 (darkest). | tokens only |
Type
| Token | Light | Dark | Purpose | Used in |
|---|---|---|---|---|
--ply-font-display | "Ultra", "Ultra Fallback", "Ultra Fallback Serif", Georgia, serif | same | Wood-type slab for titles, the wordmark, and big numerals. Never for running text. | base, atlas, demo, nav, research, layout, utilities |
--ply-font-text | "Libre Franklin Variable", "Libre Franklin Fallback", Arial, sans-serif | same | Everything that gets read: body, UI, captions, tables. | base, atlas, button, research, viz |
--ply-font-mono | "JetBrains Mono Variable", "JetBrains Mono Fallback", Menlo, monospace | same | Code, keyboard keys, and numeric parameters. | base, atlas, code, demo, form, search, utilities |
--ply-size-xs | 0.8125rem | same | 13px. Wall labels, tags, code bar text, and chart text. | atlas, code, demo, nav, panel, search, tag, viz |
--ply-size-sm | 0.875rem | same | 14px. Captions, hints, field labels, code blocks, and the on-this-page list. | base, atlas, button, code, demo, form, machine, nav, panel, research, search, table, tag, viz, writing, utilities |
--ply-size-ui | 0.9375rem | same | Interface text: tabs, search, sidebar links, tables, notes, author lines. | atlas, nav, note, research, search, table, layout |
--ply-size-md | 1rem | same | 16px. Buttons, inputs, and checkbox and switch labels. | base, button, demo, form, viz |
--ply-size-body | 1.0625rem | same | 17px reading size. | base |
--ply-size-body-wide | 1.125rem | same | 18px. The reading size of article and docs text from 100rem, where the page is at its widest. | layout |
--ply-size-lg | 1.25rem | same | 20px. Ledes, blockquotes, and fourth-level headings. | base, atlas, research, search, writing, layout |
--ply-size-xl | 1.5rem | same | 24px. Third-level headings, the wordmark, and pager titles. | base, atlas, demo, nav, research |
--ply-size-2xl | 2rem | same | 32px. Section headings in Ultra. | base, research |
--ply-size-3xl | 2.75rem | same | 44px. History wall numerals and paper titles on narrow screens. | research |
--ply-size-4xl | 4rem | same | 64px. The top of the paper title range, the step below display. | research |
--ply-size-display | clamp(3rem, 1.6rem + 4.4vw, 5.75rem) | same | Page titles. 48px on phones up to 92px on wide screens. | base, layout |
--ply-weight-regular | 400 | same | Running text, and every use of Ultra, which has one weight. | nav, research, search, writing |
--ply-weight-medium | 500 | same | Tabs, segmented controls, and the small label in the pager. | form, nav, search |
--ply-weight-semibold | 600 | same | Links, buttons, and the current tab. | base, atlas, button, code, form, nav, research, search, tag |
--ply-weight-bold | 700 | same | Headings in Libre Franklin, field labels, wall labels, and strong text. | base, atlas, demo, form, nav, note, panel, research, search, table, tag, viz, writing, utilities |
--ply-leading-display | 0.98 | same | Line height for Ultra display titles. | base, layout, utilities |
--ply-leading-tight | 1.2 | same | Line height for headings in Libre Franklin. | base, research |
--ply-leading-normal | 1.45 | same | Line height for notes, captions, tables, and interface text. | base, atlas, demo, form, note, panel, research, search, table, viz, writing, layout |
--ply-leading-relaxed | 1.6 | same | Line height for running text in the reading column. | base, research |
Space
| Token | Light | Dark | Purpose | Used in |
|---|---|---|---|---|
--ply-space-0 | 0 | same | No space. Not used by the kit; for resetting a gap in a scale-driven layout. | tokens only |
--ply-space-1 | 0.25rem | same | 4px. The tightest gap, inside small groups such as a swatch and its value. | atlas, demo, nav, research, viz, layout |
--ply-space-2 | 0.5rem | same | 8px. Between a label and its field, and an icon and its text. | atlas, button, code, demo, form, nav, research, search, table, tag, viz, writing, layout, utilities |
--ply-space-3 | 0.75rem | same | 12px. Between items in a cluster, and below section headings. | atlas, button, code, demo, form, machine, nav, note, panel, research, search, table, viz, writing, layout, modes, utilities |
--ply-space-4 | 1rem | same | 16px. Between paragraphs, and the side gutter on phones. | atlas, button, code, demo, machine, nav, note, research, search, table, viz, writing, layout, utilities |
--ply-space-5 | 1.5rem | same | 24px. Panel padding and the side padding of buttons. | base, atlas, button, code, demo, nav, note, panel, research, writing, layout |
--ply-space-6 | 2rem | same | 32px. Gaps between page columns and around figures. | atlas, research, search, writing, layout |
--ply-space-7 | 3rem | same | 48px. Above section headings and around the mast. | base, atlas, demo, research, layout |
--ply-space-8 | 4rem | same | 64px. Above the pager and the footnotes. | base, nav, writing, layout |
--ply-space-9 | 6rem | same | 96px. Below the main column, before the footer. | layout |
--ply-space-10 | 8rem | same | 128px. Not used by the kit; the largest step for very open layouts. | tokens only |
Borders and corners
| Token | Light | Dark | Purpose | Used in |
|---|---|---|---|---|
--ply-border-hair | 1px | same | 1px. Rules between table rows and list items. | atlas, code, demo, nav, search, table, writing, layout |
--ply-border-control | 2px | same | 2px. Borders of buttons, inputs, and segmented controls. | atlas, button, demo, form, nav, search, table, writing, modes |
--ply-border-rule | 3px | same | The exhibit rule under the top bar and between page regions. | base, atlas, demo, nav, research, search, table, layout |
--ply-radius-none | 0 | same | Panels, buttons, inputs, and code blocks are square. | button, form |
--ply-radius-ball | 999px | same | Only round things are round: balls, points, status dots. | atlas, demo, form, nav, note, research, search, tag, viz, writing |
Motion
| Token | Light | Dark | Purpose | Used in |
|---|---|---|---|---|
--ply-duration-fast | 120ms | same | Hover and color changes. | base, atlas, button, form, nav, writing |
--ply-duration-base | 200ms | same | Switches and floating cards. | atlas, form, research, search |
--ply-duration-slow | 320ms | same | Toast arrival. | atlas, demo |
--ply-duration-drop | 900ms | same | One ball falling through the machine. | tokens only |
--ply-ease-out | cubic-bezier(0.16, 1, 0.3, 1) | same | Default for UI that arrives. | base, atlas, button, demo, form, nav, research, search, tag, writing |
--ply-ease-gravity | cubic-bezier(0.55, 0, 1, 0.45) | same | Things that fall. | machine |
Layout
| Token | Light | Dark | Purpose | Used in |
|---|---|---|---|---|
--ply-layout-measure | 36rem | same | Reading column: about 68 characters of body text at 17px. Set in rem so notes, code, and text in one column share an edge. | base, atlas, code, note, research, table, writing, layout |
--ply-layout-measure-wide | 38rem | same | Reading column of article and docs pages from 100rem, where their text is 18px: still about 68 characters. | layout |
--ply-layout-margin | 14rem | same | The margin after the reading column, for sidenotes and margin figures: its narrowest width. It opens when the main column has room for the measure, a 2rem gap, and this, and widens with the page to half again. | writing, layout |
--ply-layout-gutter | clamp(1rem, 0.2rem + 4vw, 4.5rem) | same | Page side margin: 16px on phones, 72px on wide screens. | layout |
--ply-layout-sidebar | 17.5rem | same | Width of the chapter sidebar of a docs page, shown from 56rem. The on-this-page list sits in it, under the current page. | layout |
--ply-layout-toc | 15rem | same | Width of the on-this-page rail of an article page, shown from 80rem. | layout |
--ply-layout-max | 90rem | same | The widest the page grows. | layout |
Chart colors
Chart tokens (--ply-viz-1 to --ply-viz-8, --ply-viz-seq-*, --ply-viz-div-*, --ply-status-*) are documented in Charts.