Overprint's shapes come from print: cut paper, inked keylines and plates lifted off the sheet by a hard offset. There are no hairlines in lists, no glassy blur and no soft shadow at rest; soft shadows only appear on things that float above the page for a moment, like menus and dialogs.
Radii
--mk-radius-none--mk-radius-mark--mk-radius-chip--mk-radius-control--mk-radius-plate--mk-radius-pillBorders
--mk-border-thin--mk-border--mk-border-thick--mk-border-heavyElevation
--mk-shadow-key: a key's hard offset, closed by a press--mk-shadow-plate: a printed plate, 0 to 8 px by volume--mk-shadow-menu: menus and popovers--mk-shadow-pop: dialogsRadii#
none for comic panels and Press bands, mark for swatches, chip for tags, control for keys and inputs, plate for cards and art panels, pill for chips that need it. The display voice scales the corners: wide is rounder, condensed is square.
Rules#
Four weights: thin (1.5 px) for small marks and stickers, the default (2 px) for keylines and inputs, thick (3 px) for comic frames, heavy (4 px) for stamps and Press frames. More contrast makes the default 3 px. Raw widths in CSS fail the mk/rule-width lint.
Elevation#
Keys sit on a hard offset that a press closes. Printed plates and art frames take a hard plate offset that grows with the volume, from none at Quiet to 8 px at Rave. Menus, popovers, toasts and dialogs get the soft shadows, because they float.
Tokens#
| Token | Value in this look | Varies by | Description |
|---|---|---|---|
--mk-radius-none | 0 | voice | The none radius. |
--mk-radius-mark | 3px | voice | The mark radius. |
--mk-radius-chip | 8px | voice | The chip radius. |
--mk-radius-control | 10px | voice | The control radius. |
--mk-radius-plate | 18px | voice | The plate radius. |
--mk-radius-pill | 999px | voice | The pill radius. |
--mk-corner | 1 | voice | The current voice's corner scale. |
--mk-border | calc(2px + var(--mk-w-hc) * 1px) | contrast | The default rule, 2 px (3 px under more contrast). |
--mk-border-thin | 1.5px | contrast | A thin rule, for small marks and stickers. |
--mk-border-thick | 3px | contrast | A thick rule, for comic frames. |
--mk-border-heavy | 4px | contrast | A heavy rule, for stamps and Press frames. |
--mk-shadow-key | var(--mk-key-offset, 4px) var(--mk-key-offset, 4px) 0 var(--mk-key-edge, var(--mk-ink)) | themevolume | A key's hard offset. |
--mk-shadow-key-pressed | none | themevolume | A pressed key: no offset. |
--mk-shadow-plate | var(--mk-v-plate-offset) var(--mk-v-plate-offset) 0 var(--mk-ink) | themevolume | A printed plate's hard offset, 0 to 8 px by volume. |
--mk-shadow-menu | 0 18px 40px -16px color-mix(in srgb, var(--mk-shadow-soft) calc(var(--mk-w-bone) * 50% + var(--mk-w-night) * 80%), transparent) | themevolume | The soft shadow of menus and popovers. |
--mk-shadow-toast | 0 18px 40px -16px color-mix(in srgb, var(--mk-shadow-soft) calc(var(--mk-w-bone) * 60% + var(--mk-w-night) * 85%), transparent) | themevolume | The soft shadow of toasts. |
--mk-shadow-pop | 0 40px 90px -30px color-mix(in srgb, var(--mk-shadow-soft) calc(var(--mk-w-bone) * 70% + var(--mk-w-night) * 90%), transparent) | themevolume | The soft shadow of dialogs. |
--mk-shadow-soft | color-mix(in oklab, var(--mk-ink) calc(var(--mk-w-bone) * 100%), #000000) | themevolume | The soft shadow's colour. |
--mk-z-base | 0 | nothing | Stacking order: the base layer. |
--mk-z-art | 0 | nothing | Stacking order: the art layer. |
--mk-z-plate | 1 | nothing | Stacking order: the plate layer. |
--mk-z-raised | 2 | nothing | Stacking order: the raised layer. |
--mk-z-header | 40 | nothing | Stacking order: the header layer. |
--mk-z-dock | 45 | nothing | Stacking order: the dock layer. |
--mk-z-overlay | 60 | nothing | Stacking order: the overlay layer. |
--mk-z-popover | 65 | nothing | Stacking order: the popover layer. |
--mk-z-toast | 70 | nothing | Stacking order: the toast layer. |
--mk-z-tooltip | 80 | nothing | Stacking order: the tooltip layer. |
--mk-z-cursor | 90 | nothing | Stacking order: the cursor layer. |
--mk-z-boot | 100 | nothing | Stacking order: the boot layer. |
--mk-z-skip | 110 | nothing | Stacking order: the skip layer. |