taste-skill / Style guides / Cursor style

How to build a UI in the Cursor style

Cursor (cursor.com) reads as Warm Archival Paper & Frontier AI Research Craft — Warm archival paper canvas (#F7F7F4 / #F2F1ED) with deep charcoal-olive ink (#26251E), bespoke CursorGothic + EB Garamond editorial quotes + BerkeleyMono diff blocks and timeline tokens. This guide turns its extracted computed styles into an implementation kit: a live preview, the exact palette and type scale, real button and card recipes, the rules to avoid, and drop-in CSS variables, Tailwind config and a Cursor / Claude Code SKILL.md snippet.

Source: computed styles extracted from https://www.cursor.com on 2026-10-26 by the taste-skill extractor. Brand fonts may be proprietary; previews fall back to Inter / system fonts. Cursor is a trademark of its owner; this page documents publicly visible styling for reference and is not affiliated with Cursor.

Live preview with Cursor tokens

Cursor style · light
Ship the product, not the pixels.
Preview text rendered with the extracted Cursor canvas, text, muted and accent tokens.
Contact sales Request a demo →
Card on extracted card recipe
Accent link: #26251E · border rgba(39, 39, 29, 0.1)

Color palette (light mode)

RoleValueTailwindUsage
canvasBg#F7F7F4bg-[#F7F7F4]Primary Cursor page canvas
surfaceElevated#F2F1EDbg-[#F2F1ED]Primary elevated card & bento surface
surfaceSecondary#F7F7F4bg-[#F7F7F4]Secondary interactive container / hover fill
borderPrimaryrgba(39, 39, 29, 0.1)border-[rgba(39,39,29,0.1)]Primary structural divider (1px rgba(39,39,29,0.1))
borderSecondaryrgba(38, 38, 26, 0.08)border-[rgba(38,38,26,0.08)]Secondary nested module or pill border
textPrimary#26251Etext-[#26251E]Hero H1, section H2 & high-contrast foreground
textMutedrgba(38, 36, 29, 0.55)text-[rgba(38,36,29,0.55)]Lead paragraphs, descriptions & muted labels
accentPrimary#26251Ebg-[#26251E]Primary interactive CTA & brand highlight (9999px (Pill))
accentSecondaryrgba(18, 18, 18, 0.05)text-[rgba(18,18,18,0.05)]Secondary badge, syntax or telemetry highlight

Typography

Heading CursorGothic · body CursorGothic / EB Garamond · mono berkeleyMono

LevelComputed spec
Hero H126px | line-height 32.5px (leading-[1.25]) | letter-spacing -0.32px (tracking-[-0.012em]) | weight 400 (font-[400]) | color #26251E (text-[#26251E]) | font CursorGothic
Section H2 (Primary)36px | line-height 43.2px (leading-[1.2]) | letter-spacing -0.72px (tracking-[-0.02em]) | weight 400 (font-[400]) | color #26251E (text-[#26251E]) | font CursorGothic
Section H2 (Secondary)22px | line-height 28.6px (leading-[1.3]) | letter-spacing -0.11px (tracking-[-0.005em]) | weight 400 (font-[400]) | color #26251E (text-[#26251E]) | font CursorGothic
Card / Feature H322px | line-height 28.6px (leading-[1.3]) | letter-spacing -0.11px (tracking-[-0.005em]) | weight 400 (font-[400]) | color #26251E (text-[#26251E]) | font CursorGothic
Body Copy (Paragraph)17.3px | line-height 23.3px (leading-[1.35]) | letter-spacing 0px (tracking-[0em]) | weight 400 (font-[400]) | color rgba(38, 36, 29, 0.55) (text-[rgba(38,36,29,0.55)]) | font EB Garamond
Monospace / Code Block13px | line-height 18.6px (leading-[1.43]) | letter-spacing 0px (tracking-[0em]) | weight 400 (font-[400]) | color #26251E (text-[#26251E]) | font berkeleyMono

Spacing, radius, depth and motion

Token familyMost frequent values (count on page)
Border radius4px ×93 · 8px ×28 · 10px ×16 · 2px ×5 · 1.5px ×5 · 3px ×2
Box shadowrgba(0, 0, 0, 0.14) 0px 28px 70px 0px, rgba(0, 0, 0, 0.1) 0px 14px 32px 0px, oklab(0.263084 -0.00230259 0.0124794 / 0.1) 0px 0px 0px 1px ×6 · rgb(252, 252, 252) 0px 0px 0px 2px ×3 · rgba(0, 0, 0, 0.3) 0px 22px 70px 4px, rgba(0, 0, 0, 0.15) 0px 0px 0px 0.5px ×1
Grid / flex gap8px ×59 · 6px ×27 · 3px ×22 · 4px ×15 · 2px ×12 · 0px 10px ×8
Container max-width1300px ×9 · 658.321px ×5 · 672px ×1 · 740px ×1
Section vertical padding67px / 67px ×2 · 112px / 67px ×1 · 0px / 34px ×1
Easingcubic-bezier(0.4, 0, 0.2, 1) ×62 · ease ×35 · cubic-bezier(0.25, 1, 0.5, 1) ×3
Duration0.15s ×56 · 0.6s ×26 · 0.12s ×8 · 0.2s ×5

Component recipes

Buttons (8 distinct)

RenderedHeightPaddingRadiusBackground / TextBorderFont
Contact sales27px5.6px 10.5px9999pxtransparent
#26251E
1px solid rgba(40, 35, 30, 0.2)14px / 400
Request a demo →43px12.48px 21.6px9999px#E6E5E0
#26251E
1px solid rgba(42, 42, 42, 0.02)16px / 400
Button51px10px 12px0px#EBEAE5
#26251E
none12px / 400
See projects35px6px 12px0pxrgba(34, 34, 34, 0.06)
rgba(38, 36, 29, 0.55)
none17.28px / 400
Button53px8px 8px10pxrgba(18, 18, 18, 0.05)
#141414
none16px / 400

Cards (4 distinct)

#BackgroundBorderRadiusPaddingShadow
1#F2F1EDnone10px0px 0pxrgba(0, 0, 0, 0.14) 0px 28px 70px 0px, rgba(0, 0, 0, 0.1) 0px 14px 32px 0px, oklab(0.263084 -0.00230259 0.0124794 / 0.1) 0px 0px 0px 1px
2#F7F7F41px solid rgba(39, 39, 29, 0.1)8px0px 0pxnone
3transparentnone10px0px 0pxrgba(0, 0, 0, 0.3) 0px 22px 70px 4px, rgba(0, 0, 0, 0.15) 0px 0px 0px 0.5px
4transparentnone8px0px 0pxnone

Rules: what never to do in the Cursor style

Copy-paste kit

CSS variables
:root {
  /* Cursor style — extracted from cursor.com by taste-skill */
  --canvas: #F7F7F4;
  --surface: #F2F1ED;
  --text: #26251E;
  --text-muted: rgba(38, 36, 29, 0.55);
  --accent: #26251E;
  --border: rgba(39, 39, 29, 0.1);
  --font-heading: CursorGothic, Inter, system-ui, -apple-system, sans-serif;
  --font-body: 'CursorGothic / EB Garamond', Inter, system-ui, -apple-system, sans-serif;
  --font-mono: 'berkeleyMono', 'JetBrains Mono', ui-monospace, monospace;
  --h1-size: 36px;
  --h1-tracking: -0.02em;
  --h1-weight: 400;
  --radius-button: 9999px;
  --radius-common: 4px;
  --shadow-common: rgba(0, 0, 0, 0.14) 0px 28px 70px 0px, rgba(0, 0, 0, 0.1) 0px 14px 32px 0px, oklab(0.263084 -0.00230259 0.0124794 / 0.1) 0px 0px 0px 1px;
  --ease: cubic-bezier(0.4, 0, 0.2, 1);
  --duration: 0.15s;
}
tailwind.config.js
// tailwind.config.js — Cursor style tokens (taste-skill)
module.exports = {
  theme: {
    extend: {
      colors: {
        canvas: "#F7F7F4",
        surface: "#F2F1ED",
        ink: "#26251E",
        muted: "rgba(38, 36, 29, 0.55)",
        accent: "#26251E",
        line: "rgba(39, 39, 29, 0.1)",
      },
      fontFamily: {
        heading: ["CursorGothic", 'Inter', 'system-ui', 'sans-serif'],
        sans: ["CursorGothic / EB Garamond", 'Inter', 'system-ui', 'sans-serif'],
        mono: ["berkeleyMono", 'ui-monospace', 'monospace'],
      },
      fontSize: { display: ["36px", { letterSpacing: "-0.02em", fontWeight: "400" }] },
      borderRadius: { button: "9999px", card: "4px" },
      boxShadow: { brand: "rgba(0, 0, 0, 0.14) 0px 28px 70px 0px, rgba(0, 0, 0, 0.1) 0px 14px 32px 0px, oklab(0.263084 -0.00230259 0.0124794 / 0.1) 0px 0px 0px 1px" },
      transitionTimingFunction: { brand: "cubic-bezier(0.4, 0, 0.2, 1)" },
    },
  },
};
.cursor/skills/cursor-style/SKILL.md
---
name: cursor-style
description: Build UI in the Cursor visual style (Warm Archival Paper & Frontier AI Research Craft). Use when the user asks for a Cursor-like look.
---

# Cursor Style — Quick Rules (source: cursor.com, extracted by taste-skill)

## Tokens
- canvasBg: #F7F7F4 — Primary Cursor page canvas
- surfaceElevated: #F2F1ED — Primary elevated card & bento surface
- surfaceSecondary: #F7F7F4 — Secondary interactive container / hover fill
- borderPrimary: rgba(39, 39, 29, 0.1) — Primary structural divider (1px rgba(39,39,29,0.1))
- borderSecondary: rgba(38, 38, 26, 0.08) — Secondary nested module or pill border
- textPrimary: #26251E — Hero H1, section H2 & high-contrast foreground
- textMuted: rgba(38, 36, 29, 0.55) — Lead paragraphs, descriptions & muted labels
- accentPrimary: #26251E — Primary interactive CTA & brand highlight (9999px (Pill))
- accentSecondary: rgba(18, 18, 18, 0.05) — Secondary badge, syntax or telemetry highlight

## Typography
- Heading font: CursorGothic; body: CursorGothic / EB Garamond; mono: berkeleyMono
- Hero H1: 26px | line-height 32.5px (leading-[1.25]) | letter-spacing -0.32px (tracking-[-0.012em]) | weight 400 (font-[400]) | color #26251E (text-[#26251E]) | font CursorGothic
- Section H2 (Primary): 36px | line-height 43.2px (leading-[1.2]) | letter-spacing -0.72px (tracking-[-0.02em]) | weight 400 (font-[400]) | color #26251E (text-[#26251E]) | font CursorGothic
- Section H2 (Secondary): 22px | line-height 28.6px (leading-[1.3]) | letter-spacing -0.11px (tracking-[-0.005em]) | weight 400 (font-[400]) | color #26251E (text-[#26251E]) | font CursorGothic
- Card / Feature H3: 22px | line-height 28.6px (leading-[1.3]) | letter-spacing -0.11px (tracking-[-0.005em]) | weight 400 (font-[400]) | color #26251E (text-[#26251E]) | font CursorGothic

## Components
- Primary button: height 27px, padding 5.6px 10.5px, radius 9999px, bg transparent, text #26251E, 14px / 400
- Card: bg #F2F1ED, border none, radius 10px, padding 0px 0px

## Never
- NEVER substitute generic uncalibrated gray backgrounds for Cursor’s exact #F7F7F4 canvas and #F2F1ED surface pairing.
- NEVER replace CursorGothic display typography or ignore its signature scale (36px / -0.02em (w400)).
- NEVER use thick opaque borders that clash with rgba(39, 39, 29, 0.1) (1px rgba(39,39,29,0.1)).
- NEVER deviate from the signature button geometry (9999px (Pill)) or introduce off-brand saturated gradients.
- NEVER use default browser monospace when rendering code or telemetry—always pair with berkeleyMono.

Full 120-line spec: https://taste-skill.pages.dev/taste/cursor/
Or install the full spec
npx taste-skill add cursor

Related

Similar styles

Get all 30 full SKILL.md specs (Cursor / Claude Code / Codex ready) plus the Pro growth skills.

See taste-skill Pro →