extraído de apple.com Ver sitio ↗

Apple

A photography-first interface that turns marketing into a museum gallery. Edge-to-edge product tiles alternate light and dark canvases, framed by SF Pro Display headlines with negative letter-spacing and a single Action Blue (#0066cc) interactive color.

light mode blue 20 colores Light Mode
apple.com
Captura de Apple
01

Color

light · 20 colors
Primary
#0066cc
primary
primary
#0071e3
primary-focus
primary-focus
#2997ff
primary-on-dark
primary-on-dark
Ink
#1d1d1f
ink
ink
#1d1d1f
body
body
#ffffff
body-on-dark
body-on-dark
#cccccc
body-muted
body-muted
#333333
ink-muted-80
ink-muted-80
#7a7a7a
ink-muted-48
ink-muted-48
#ffffff
on-primary
on-primary
Brand
#f0f0f0
divider-soft
divider-soft
#e0e0e0
hairline
hairline
Surface
#ffffff
canvas
canvas
#f5f5f7
canvas-parchment
canvas-parchment
#fafafc
surface-pearl
surface-pearl
#272729
surface-tile-1
surface-tile-1
#2a2a2c
surface-tile-2
surface-tile-2
#252527
surface-tile-3
surface-tile-3
#000000
surface-black
surface-black
#d2d2d7
surface-chip-translucent
surface-chip-translucent
02

Typography

2 familias
AaEeCcGg50.
Outfit sustituto de SF Pro Display
300 LightDesign that moves people.
400 RegularDesign that moves people.
500 MediumDesign that moves people.
600 SemiBoldDesign that moves people.
700 BoldDesign that moves people.
Body — Figtree

El sistema visual combina tipografía de alta calidad con colores cuidadosamente seleccionados. Cada decisión de diseño refleja la personalidad de la marca y comunica su propósito con claridad y precisión.

RoleSizeWeightLHFont
display xl72px7001.0Display
display lg48px6001.1Display
heading32px6001.2Display
body lg20px4001.5Body
body16px4001.6Body
label14px5001.4Display
mono13px4001.6Mono
03

Components

live recipes
Componente destacado
Apple UI

La card usa la superficie del sistema con borde sutil y el radio real de la marca. El kicker en el color primario es el único acento de color sobre el fondo.

04

Spacing & shape

base 16px
Spacing scale
4px
8px
12px
17px
24px
32px
48px
80px
Radius family
8px
9999px
05

Principles

guardrails

    Do

  • Usa los colores del sistema con intención y consistencia.
  • Mantén la tipografía dentro de la escala establecida.
  • Aplica los radios de borde según el contexto de cada componente.

    Don't

  • No uses colores fuera del sistema sin justificación visual.
  • No mezcles familias tipográficas de categorías incompatibles.
  • No apliques sombras donde el sistema usa color plano.
06

Resources

copy & paste
:root {
  /* Color */
  --canvas: #ffffff;
  --surface: #f5f5f7;
  --ink: #1d1d1f;
  --ink-soft: #1d1d1f;
  --muted: #73737b;
  --primary: #0066cc;
  --primary-hover: #0057ad;
  --border: #e0e0e0;
  /* Typography */
  --font-display: 'Outfit', system-ui, sans-serif;
  --font-body: 'Figtree', Georgia, serif;
  --font-mono: 'JetBrains Mono', ui-monospace, monospace;
  /* Radius */
  --radius-btn: 8px;
  --radius-card: 8px;
  /* Spacing */
  --space-4: 4px;
  --space-8: 8px;
  --space-12: 12px;
  --space-17: 17px;
  --space-24: 24px;
  --space-32: 32px;
  --space-48: 48px;
  --space-80: 80px;
}
@theme {
  --color-canvas: #ffffff;
  --color-surface: #f5f5f7;
  --color-ink: #1d1d1f;
  --color-primary: #0066cc;
  --color-primary-hover: #0057ad;
  --color-border: #e0e0e0;
  --font-display: 'Outfit', system-ui, sans-serif;
  --font-body: 'Figtree', Georgia, serif;
  --font-mono: 'JetBrains Mono', ui-monospace, monospace;
  --radius-btn: 8px;
  --radius-card: 8px;
}
{
  "color": {
    "canvas": "#ffffff",
    "surface": "#f5f5f7",
    "ink": "#1d1d1f",
    "primary": "#0066cc",
    "border": "#e0e0e0",
    "primary-focus": "#0071e3",
    "primary-on-dark": "#2997ff",
    "body": "#1d1d1f",
    "body-on-dark": "#ffffff",
    "body-muted": "#cccccc",
    "ink-muted-80": "#333333"
  },
  "font": {
    "display": "Outfit",
    "body": "Figtree",
    "mono": "JetBrains Mono"
  },
  "radius": {
    "btn": "8px",
    "card": "8px"
  },
  "spacing": {
    "4px": "4px",
    "8px": "8px",
    "12px": "12px",
    "17px": "17px",
    "24px": "24px",
    "32px": "32px",
    "48px": "48px",
    "80px": "80px"
  }
}