Button
Linear button: ghost is the default (near-zero opacity bg + thin translucent border); primary fills with brand indigo #5e6ad2.
@dante · Productivity & SaaS
Dark-mode-native, keyboard-first product UI inspired by Linear: near-black canvas, indigo-violet accent, Inter Variable at signature weight 510, and whisper-thin translucent borders.

Linear's surface is a masterclass in dark-mode-first product design. Treat darkness as the native medium, not a theme variant: information hierarchy comes from gradations of white opacity, not color. The page background #08090a IS the whitespace — content emerges from it through whisper-thin translucent borders (rgba(255,255,255,0.05) to rgba(255,255,255,0.08)) rather than shadows.
Inter Variable powered every text element with the OpenType features "cv01", "ss03" enabled globally — these are non-negotiable; without them you get generic Inter, not Linear's Inter. The signature weight is 510, sitting between regular and medium for a subtle emphasis that doesn't shout. Display sizes ran aggressive negative tracking: -1.584px at 72px, -1.056px at 48px, -0.704px at 32px. Below 16px, tracking relaxes toward normal. Berkeley Mono served all code, identifiers, and keyboard chips.
The palette was almost entirely achromatic. Surfaces stacked by luminance: #08090a marketing, #0f1011 panels, #191a1b elevated, #28282c hover. Text laddered through #f7f8f8 (primary, never pure white) → #d0d6e0 (secondary) → #8a8f98 (tertiary) → #62666d (quaternary). The single chromatic accent was brand indigo #5e6ad2 with #7170ff for interactive elements and #828fff for hover — reserved exclusively for primary CTAs and active states. Status emerald #10b981 and green #27a644 appeared only on completion indicators.
Buttons used near-zero opacity backgrounds (rgba(255,255,255,0.02) ghost, 0.04 subtle), with brand indigo reserved for primary CTAs. Cards never used solid backgrounds — always translucent rgba white at 0.02–0.05 with a 1px translucent white border at 6–8px radius. Radii laddered tight: 2px (badges), 4px (rows), 6px (controls), 8px (cards), 12px (panels), 22px (large), 9999px (pills). Issue rows ran 32–36px tall for keyboard-first density, with mono identifiers and tinted-indigo selected states. Every interactive primitive paired with a Berkeley Mono keyboard chip.
Drop shadows on dark surfaces are nearly invisible, so depth communicated through background luminance steps and translucent white borders. The dialog shadow was a multi-layer stack of barely-perceptible black layers — never a single dark blob.
Derived view rendered server-side from package tokens and components — no authored copy.
#08090a#010102#0f1011#191a1b#28282c#f7f8f8#d0d6e0#8a8f98#62666d#5e6ad2#7170ff#828fff#7a7fad#27a644#10b981#23252a#34343a#3e3e44rgba(255,255,255,0.05)rgba(255,255,255,0.08)#141516#18191a#f7f8f8#f3f4f5#d0d6e0#ffffffrgba(0,0,0,0.85)Inter Variable, Inter Display, Inter, SF Pro Display, -apple-system, system-ui, sans-serifInter Variable, Inter, SF Pro Display, -apple-system, system-ui, sans-serifInter Variable, Inter, -apple-system, system-ui, Segoe UI, Roboto, sans-serifInter Variable, Inter, system-ui, sans-serifInter Variable, Inter, system-ui, sans-serifBerkeley Mono, ui-monospace, SF Mono, Menlo, monospace'cv01', 'ss03'{
"light": 300,
"regular": 400,
"signature": 510,
"semibold": 590
}{
"displayXl": "72px/1.0 (-1.584px)",
"displayLg": "64px/1.0 (-1.408px)",
"display": "48px/1.0 (-1.056px)",
"h1": "32px/1.13 (-0.704px)",
"h2": "24px/1.33 (-0.288px)",
"h3": "20px/1.33 (-0.24px)",
"bodyLg": "18px/1.6 (-0.165px)",
"body": "16px/1.5",
"small": "15px/1.6 (-0.165px)",
"caption": "13px/1.5 (-0.13px)",
"label": "12px/1.4",
"micro": "11px/1.4"
}Linear button: ghost is the default (near-zero opacity bg + thin translucent border); primary fills with brand indigo #5e6ad2.
Translucent input field: near-zero white opacity bg, semi-transparent border, soft tertiary placeholder.
Translucent panel emerging from darkness — never solid, always rgba white at 0.02–0.05.
Pill and inline tag variants. Status emerald for completion, neutral pill with thin solid border for chips.
Display headlines with aggressive negative tracking — Linear's compressed, engineered headline feel.
Inline link in accent violet; chrome links use silver-gray with lighten-on-hover.
Centered single-column hero on marketing black; compressed display headline + brand-indigo CTA + ghost secondary.
Sticky dark header on panel bg with logomark, link cluster, and brand-indigo CTA.
Quiet grid footer on marketing black with column headings and quaternary metadata row.
Single-figure stat block: large compressed number + caption label. Used in product metrics rows.
Linear-signature issue list row: status pill, title, identifier, assignee, due caption — tight density.
Keyboard shortcut chip in Berkeley Mono — Linear is a keyboard-first product, so Cmd+K, /, etc. appear everywhere.
Left navigation rail on panelDark with workspace switcher, primary nav, and section headers. Selected row uses tinted brand indigo.
Cmd+K modal: Level 3 surface with multi-layer dialog shadow, search input, result rows with Kbd hints.
Linear's surface is a masterclass in dark-mode-first product design. Treat darkness as the native medium, not a theme variant: information hierarchy comes from gradations of white opacity, not color. The page background #08090a IS the whitespace — content emerges from it through whisper-thin translucent borders (rgba(255,255,255,0.05) to rgba(255,255,255,0.08)) rather than shadows.
Inter Variable powered every text element with the OpenType features "cv01", "ss03" enabled globally — these are non-negotiable; without them you get generic Inter, not Linear's Inter. The signature weight is 510, sitting between regular and medium for a subtle emphasis that doesn't shout. Display sizes ran aggressive negative tracking: -1.584px at 72px, -1.056px at 48px, -0.704px at 32px. Below 16px, tracking relaxes toward normal. Berkeley Mono served all code, identifiers, and keyboard chips.
The palette was almost entirely achromatic. Surfaces stacked by luminance: #08090a marketing, #0f1011 panels, #191a1b elevated, #28282c hover. Text laddered through #f7f8f8 (primary, never pure white) → #d0d6e0 (secondary) → #8a8f98 (tertiary) → #62666d (quaternary). The single chromatic accent was brand indigo #5e6ad2 with #7170ff for interactive elements and #828fff for hover — reserved exclusively for primary CTAs and active states. Status emerald #10b981 and green #27a644 appeared only on completion indicators.
Buttons used near-zero opacity backgrounds (rgba(255,255,255,0.02) ghost, 0.04 subtle), with brand indigo reserved for primary CTAs. Cards never used solid backgrounds — always translucent rgba white at 0.02–0.05 with a 1px translucent white border at 6–8px radius. Radii laddered tight: 2px (badges), 4px (rows), 6px (controls), 8px (cards), 12px (panels), 22px (large), 9999px (pills). Issue rows ran 32–36px tall for keyboard-first density, with mono identifiers and tinted-indigo selected states. Every interactive primitive paired with a Berkeley Mono keyboard chip.
Drop shadows on dark surfaces are nearly invisible, so depth communicated through background luminance steps and translucent white borders. The dialog shadow was a multi-layer stack of barely-perceptible black layers — never a single dark blob.
DESIGN.mdtext/markdownSKILL.mdtext/markdowntokens/colors.jsonapplication/jsontokens/typography.jsonapplication/jsontokens/components.jsonapplication/jsonadapters/tokens.csstext/cssadapters/shadcn-registry.jsonapplication/jsonadapters/tailwind.config.jstext/javascriptadapters/react/index.tstext/typescriptadapters/html/index.htmltext/htmladapters/html/styles.csstext/css