taste-skill / Style guides / Raycast style

How to build a UI in the Raycast style

Raycast (raycast.com) reads as Desktop-Class macOS Acrylic Glass & Crimson Spotlight — Deep #07080A midnight canvas with rgba(255,255,255,0.02) translucent acrylic panels, 1px rgba(255,255,255,0.08) specular rims, keyboard shortcut kbd badges, and #FF6363 ruby glow. 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.raycast.com on 2026-10-26 by the taste-skill extractor. Brand fonts may be proprietary; previews fall back to Inter / system fonts. Raycast is a trademark of its owner; this page documents publicly visible styling for reference and is not affiliated with Raycast.

Live preview with Raycast tokens

Raycast style · dark
Ship the product, not the pixels.
Preview text rendered with the extracted Raycast canvas, text, muted and accent tokens.
Sync linear tasks Send
Card on extracted card recipe
Accent link: #FF6363 · border rgba(255, 255, 255, 0.08)

Color palette (dark mode)

RoleValueTailwindUsage
canvasBg#07080Abg-[#07080A]Primary Raycast page canvas
surfaceElevated#141517bg-[#141517]Primary elevated card & bento surface
surfaceSecondaryrgba(0, 0, 0, 0.6)bg-black/[0.6]Secondary interactive container / hover fill
borderPrimaryrgba(255, 255, 255, 0.08)border-white/[0.08]Primary structural divider (1px rgba(255,255,255,0.08))
borderSecondaryrgba(255, 255, 255, 0.06)border-white/[0.06]Secondary nested module or pill border
textPrimary#FFFFFFtext-whiteHero H1, section H2 & high-contrast foreground
textMuted#9CA3AFtext-[#9CA3AF]Lead paragraphs, descriptions & muted labels
accentPrimary#FF6363bg-[#FF6363]Primary interactive CTA & brand highlight (10px)
accentSecondaryrgba(255, 255, 255, 0.1)text-white/[0.1]Secondary badge, syntax or telemetry highlight

Typography

Heading Inter · body Inter · mono JetBrains Mono

LevelComputed spec
Hero H164px | line-height 70.4px (leading-[1.1]) | letter-spacing 0px (tracking-[0em]) | weight 600 (font-[600]) | color #FFFFFF (text-white) | font Inter
Section H2 (Primary)32px | line-height 38.4px (leading-[1.2]) | letter-spacing -0.8px (tracking-[-0.025em]) | weight 500 (font-[500]) | color #FFFFFF (text-white) | font Inter
Section H2 (Secondary)20px | line-height 24px (leading-[1.2]) | letter-spacing 0.2px (tracking-[0.01em]) | weight 500 (font-[500]) | color #FFFFFF (text-white) | font Inter
Card / Feature H324px | line-height 28.8px (leading-[1.2]) | letter-spacing 0.2px (tracking-[0.008em]) | weight 500 (font-[500]) | color #FFFFFF (text-white) | font Inter
Body Copy (Paragraph)18px | line-height 21.6px (leading-[1.2]) | letter-spacing 0.2px (tracking-[0.011em]) | weight 400 (font-[400]) | color #FFFFFF (text-white) | font Inter
Monospace / Code Block13px–14px | line-height 1.5 (leading-relaxed) | font GeistMono

Spacing, radius, depth and motion

Token familyMost frequent values (count on page)
Border radius8px ×104 · 11px ×78 · 6px ×59 · 20px ×38 · 12px ×28 · 4px ×16
Box shadowrgba(0, 0, 0, 0.4) 0px 1.5px 0.5px 2.5px, rgb(0, 0, 0) 0px 0px 0.5px 1px, rgba(0, 0, 0, 0.25) 0px 2px 1px 1px inset, rgba(255, 255, 255, 0.2) 0px 1px 1px 1px inset, rgba(0, 0, 0, 0) 0px 0px 0px 0px inset ×78 · rgba(0, 0, 0, 0.28) 0px 1.189px 2.377px 0px ×17 · rgba(255, 255, 255, 0.05) 0px 1px 0px 0px inset, rgba(255, 255, 255, 0.25) 0px 0px 0px 1px, rgba(0, 0, 0, 0.2) 0px -1px 0px 0px inset ×17
Grid / flex gap10px ×77 · 8px ×51 · 12px ×30 · 24px ×22 · 2px ×8 · 16px ×4
Container max-width1204px ×3 · 1252px ×2 · 818px ×1 · 1200px ×1
Section vertical padding224px / 224px ×2 · 48px / 102px ×1 · 40px / 40px ×1 · 32px / 32px ×1
Easingcubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1) ×78 · ease ×42 · ease-in-out ×10
Duration0.4s, 0.2s, 0.2s, 0.2s, 0.4s, 0.4s ×78 · 0.3s ×32 · 0.2s ×20 · 0.2s, 0.2s, 0.2s, 0.1s ×3

Component recipes

Buttons (3 distinct)

RenderedHeightPaddingRadiusBackground / TextBorderFont
Sync linear tasks32px8px 12px10pxrgba(255, 255, 255, 0.1)
#FFFFFF
none13px / 400
Send36px2px 12px4px#E6E6E6
#2F3031
none14px / 500
Download36px8px 12px8px#E6E6E6
#2F3031
none14px / 500

Cards (8 distinct)

#BackgroundBorderRadiusPaddingShadow
1rgba(0, 0, 0, 0.44)1px solid rgba(255, 255, 255, 0.08)19px8px 8pxrgba(255, 255, 255, 0.03) 0px 0px 40px 20px, rgba(255, 255, 255, 0.3) 0px 0.5px 0px 0px inset
2#07080A1px solid rgba(255, 255, 255, 0.08)12px0px 0pxrgba(255, 255, 255, 0.19) 0px 0px 2px 0px, rgba(255, 255, 255, 0.1) 0px 0.5px 0px 0px inset
3rgba(0, 0, 0, 0.6)1px solid rgba(140, 140, 145, 0.2)12px0px 0pxrgba(0, 0, 0, 0.4) 0px 4px 40px 8px, rgba(0, 0, 0, 0.8) 0px 0px 0px 0.5px, rgba(255, 255, 255, 0.3) 0px 0.5px 0px 0px inset
4rgba(157, 186, 216, 0.1)1px solid rgba(140, 140, 145, 0.2)12px0px 0pxrgba(0, 0, 0, 0.4) 0px 4px 40px 8px, rgba(0, 0, 0, 0.8) 0px 0px 0px 0.5px, rgba(255, 255, 255, 0.3) 0px 0.5px 0px 0px inset

Rules: what never to do in the Raycast style

Copy-paste kit

CSS variables
:root {
  /* Raycast style — extracted from raycast.com by taste-skill */
  --canvas: #07080A;
  --surface: #141517;
  --text: #FFFFFF;
  --text-muted: #9CA3AF;
  --accent: #FF6363;
  --border: rgba(255, 255, 255, 0.08);
  --font-heading: Inter, Inter, system-ui, -apple-system, sans-serif;
  --font-body: Inter, Inter, system-ui, -apple-system, sans-serif;
  --font-mono: 'JetBrains Mono', 'JetBrains Mono', ui-monospace, monospace;
  --h1-size: 64px;
  --h1-tracking: 0em;
  --h1-weight: 600;
  --radius-button: 10px;
  --radius-common: 8px;
  --shadow-common: rgba(0, 0, 0, 0.4) 0px 1.5px 0.5px 2.5px, rgb(0, 0, 0) 0px 0px 0.5px 1px, rgba(0, 0, 0, 0.25) 0px 2px 1px 1px inset, rgba(255, 255, 255, 0.2) 0px 1px 1px 1px inset, rgba(0, 0, 0, 0) 0px 0px 0px 0px inset;
  --ease: cubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1);
  --duration: 0.4s, 0.2s, 0.2s, 0.2s, 0.4s, 0.4s;
}
tailwind.config.js
// tailwind.config.js — Raycast style tokens (taste-skill)
module.exports = {
  theme: {
    extend: {
      colors: {
        canvas: "#07080A",
        surface: "#141517",
        ink: "#FFFFFF",
        muted: "#9CA3AF",
        accent: "#FF6363",
        line: "rgba(255, 255, 255, 0.08)",
      },
      fontFamily: {
        heading: ["Inter", 'Inter', 'system-ui', 'sans-serif'],
        sans: ["Inter", 'Inter', 'system-ui', 'sans-serif'],
        mono: ["JetBrains Mono", 'ui-monospace', 'monospace'],
      },
      fontSize: { display: ["64px", { letterSpacing: "0em", fontWeight: "600" }] },
      borderRadius: { button: "10px", card: "8px" },
      boxShadow: { brand: "rgba(0, 0, 0, 0.4) 0px 1.5px 0.5px 2.5px, rgb(0, 0, 0) 0px 0px 0.5px 1px, rgba(0, 0, 0, 0.25) 0px 2px 1px 1px inset, rgba(255, 255, 255, 0.2) 0px 1px 1px 1px inset, rgba(0, 0, 0, 0) 0px 0px 0px 0px inset" },
      transitionTimingFunction: { brand: "cubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1), cubic-bezier(0.23, 1, 0.32, 1)" },
    },
  },
};
.cursor/skills/raycast-style/SKILL.md
---
name: raycast-style
description: Build UI in the Raycast visual style (Desktop-Class macOS Acrylic Glass & Crimson Spotlight). Use when the user asks for a Raycast-like look.
---

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

## Tokens
- canvasBg: #07080A — Primary Raycast page canvas
- surfaceElevated: #141517 — Primary elevated card & bento surface
- surfaceSecondary: rgba(0, 0, 0, 0.6) — Secondary interactive container / hover fill
- borderPrimary: rgba(255, 255, 255, 0.08) — Primary structural divider (1px rgba(255,255,255,0.08))
- borderSecondary: rgba(255, 255, 255, 0.06) — Secondary nested module or pill border
- textPrimary: #FFFFFF — Hero H1, section H2 & high-contrast foreground
- textMuted: #9CA3AF — Lead paragraphs, descriptions & muted labels
- accentPrimary: #FF6363 — Primary interactive CTA & brand highlight (10px)
- accentSecondary: rgba(255, 255, 255, 0.1) — Secondary badge, syntax or telemetry highlight

## Typography
- Heading font: Inter; body: Inter; mono: JetBrains Mono
- Hero H1: 64px | line-height 70.4px (leading-[1.1]) | letter-spacing 0px (tracking-[0em]) | weight 600 (font-[600]) | color #FFFFFF (text-white) | font Inter
- Section H2 (Primary): 32px | line-height 38.4px (leading-[1.2]) | letter-spacing -0.8px (tracking-[-0.025em]) | weight 500 (font-[500]) | color #FFFFFF (text-white) | font Inter
- Section H2 (Secondary): 20px | line-height 24px (leading-[1.2]) | letter-spacing 0.2px (tracking-[0.01em]) | weight 500 (font-[500]) | color #FFFFFF (text-white) | font Inter
- Card / Feature H3: 24px | line-height 28.8px (leading-[1.2]) | letter-spacing 0.2px (tracking-[0.008em]) | weight 500 (font-[500]) | color #FFFFFF (text-white) | font Inter

## Components
- Primary button: height 32px, padding 8px 12px, radius 10px, bg rgba(255, 255, 255, 0.1), text #FFFFFF, 13px / 400
- Card: bg rgba(0, 0, 0, 0.44), border 1px solid rgba(255, 255, 255, 0.08), radius 19px, padding 8px 8px

## Never
- NEVER substitute generic uncalibrated gray backgrounds for Raycast’s exact #07080A canvas and #141517 surface pairing.
- NEVER replace Inter display typography or ignore its signature scale (64px / 1.1 (w600)).
- NEVER use thick opaque borders that clash with rgba(255, 255, 255, 0.08) (1px rgba(255,255,255,0.08)).
- NEVER deviate from the signature button geometry (10px) or introduce off-brand saturated gradients.
- NEVER use default browser monospace when rendering code or telemetry—always pair with JetBrains Mono.

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

Related

Similar styles

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

See taste-skill Pro →