oh-my-design-cli 1.8.2 → 1.8.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/README.ja.md +5 -5
  2. package/README.ko.md +7 -7
  3. package/README.md +7 -7
  4. package/README.zh-TW.md +5 -5
  5. package/agents/omd-master.md +1 -1
  6. package/data/reference-fingerprints.json +964 -4
  7. package/package.json +3 -1
  8. package/skills/omd-feel/SKILL.md +152 -0
  9. package/skills/omd-feel/provenance.md +233 -0
  10. package/skills/omd-feel/reference.md +254 -0
  11. package/skills/omd-harness/SKILL.md +1 -1
  12. package/skills/omd-init/SKILL.md +1 -1
  13. package/skills/omd-reference-capture/SKILL.md +1 -1
  14. package/web/references/591/DESIGN.md +460 -0
  15. package/web/references/asana/DESIGN.md +485 -0
  16. package/web/references/asos/DESIGN.md +475 -0
  17. package/web/references/bahamut/DESIGN.md +416 -0
  18. package/web/references/bbc/DESIGN.md +439 -0
  19. package/web/references/chunghwa/DESIGN.md +419 -0
  20. package/web/references/databricks/DESIGN.md +467 -0
  21. package/web/references/deliveroo/DESIGN.md +458 -0
  22. package/web/references/doordash/DESIGN.md +429 -0
  23. package/web/references/easywallet/DESIGN.md +449 -0
  24. package/web/references/esunbank/DESIGN.md +445 -0
  25. package/web/references/farfetch/DESIGN.md +436 -0
  26. package/web/references/fubon/DESIGN.md +438 -0
  27. package/web/references/govuk/DESIGN.md +450 -0
  28. package/web/references/hana/DESIGN.md +439 -0
  29. package/web/references/hubspot/DESIGN.md +485 -0
  30. package/web/references/hyundai/DESIGN.md +468 -0
  31. package/web/references/icook/DESIGN.md +432 -0
  32. package/web/references/instacart/DESIGN.md +439 -0
  33. package/web/references/ipassmoney/DESIGN.md +407 -0
  34. package/web/references/kakaopage/DESIGN.md +439 -0
  35. package/web/references/kbpay/DESIGN.md +442 -0
  36. package/web/references/kia/DESIGN.md +411 -0
  37. package/web/references/liner/DESIGN.md +465 -0
  38. package/web/references/monzo/DESIGN.md +461 -0
  39. package/web/references/naverpay/DESIGN.md +478 -0
  40. package/web/references/octopusenergy/DESIGN.md +436 -0
  41. package/web/references/openpoint/DESIGN.md +431 -0
  42. package/web/references/paypal/DESIGN.md +459 -0
  43. package/web/references/reddit/DESIGN.md +537 -0
  44. package/web/references/samsung/DESIGN.md +465 -0
  45. package/web/references/shinhanbank/DESIGN.md +429 -0
  46. package/web/references/skyscanner/DESIGN.md +563 -0
  47. package/web/references/snapchat/DESIGN.md +460 -0
  48. package/web/references/squarespace/DESIGN.md +454 -0
  49. package/web/references/ssg/DESIGN.md +439 -0
  50. package/web/references/starling/DESIGN.md +404 -0
  51. package/web/references/taiwanmobile/DESIGN.md +445 -0
  52. package/web/references/trainline/DESIGN.md +454 -0
  53. package/web/references/zoom/DESIGN.md +457 -0
@@ -0,0 +1,458 @@
1
+ ---
2
+ id: deliveroo
3
+ name: Deliveroo
4
+ country: UK
5
+ category: consumer-tech
6
+ homepage: "https://deliveroo.co.uk"
7
+ primary_color: "#00CCBC"
8
+ logo:
9
+ type: simpleicons
10
+ slug: deliveroo
11
+ verified: "2026-06-22"
12
+ omd: "0.1"
13
+ tokens:
14
+ source: reconciled
15
+ extracted: "2026-06-22"
16
+ note: "primary = brand teal (#00CCBC) confirmed via SimpleIcons official hex + multiple brand sources + Medium DS article. Dark mode canvas #121212. Seaweed-named action color in PDS 2.0. Stratos (customised Production Type) for headlines."
17
+ colors:
18
+ primary: "#00CCBC"
19
+ primary-hover: "#00A99C"
20
+ primary-deep: "#003733"
21
+ brand: "#00CCBC"
22
+ canvas: "#ffffff"
23
+ canvas-dark: "#121212"
24
+ heading: "#1a1a1a"
25
+ body: "#4a4a4a"
26
+ muted: "#767676"
27
+ on-primary: "#003733"
28
+ promo: "#FFC100"
29
+ promo-text: "#1a1a1a"
30
+ error: "#DF1619"
31
+ surface: "#f5f5f5"
32
+ hairline: "#e0e0e0"
33
+ typography:
34
+ family: { display: "Stratos", body: "system-ui, -apple-system, sans-serif" }
35
+ display-hero: { size: 48, weight: 700, lineHeight: 1.10, tracking: -0.5, use: "Hero headlines, Stratos Bold, 6° angled" }
36
+ display-lg: { size: 36, weight: 700, lineHeight: 1.15, tracking: -0.3, use: "Section headlines" }
37
+ section: { size: 24, weight: 600, lineHeight: 1.20, use: "Sub-section heads, card titles" }
38
+ body-lg: { size: 18, weight: 400, lineHeight: 1.50, use: "Feature descriptions" }
39
+ body: { size: 16, weight: 400, lineHeight: 1.50, use: "Standard reading text" }
40
+ button: { size: 16, weight: 600, lineHeight: 1.00, use: "CTA button label" }
41
+ caption: { size: 14, weight: 400, use: "Metadata, captions, secondary labels" }
42
+ small: { size: 12, weight: 400, use: "Tags, badges, fine print" }
43
+ spacing: { xs: 4, sm: 8, md: 12, base: 16, lg: 24, xl: 32, xxl: 48, section: 64 }
44
+ rounded: { sm: 4, md: 8, lg: 16, full: 9999 }
45
+ shadow:
46
+ card: "0px 2px 8px rgba(0,0,0,0.10)"
47
+ elevated: "0px 4px 16px rgba(0,0,0,0.14)"
48
+ components:
49
+ button-primary: { type: button, bg: "#00CCBC", fg: "#003733", radius: "9999px", padding: "14px 24px", font: "16px / 600", states: "hover #00A99C", use: "Primary CTA — Order now, Add to basket" }
50
+ button-secondary: { type: button, bg: "#ffffff", fg: "#1a1a1a", radius: "9999px", border: "1.5px solid #e0e0e0", padding: "14px 24px", font: "16px / 600", use: "Secondary action, ghost variant" }
51
+ button-promo: { type: button, bg: "#FFC100", fg: "#1a1a1a", radius: "9999px", padding: "14px 24px", font: "16px / 600", use: "Promotional offers and deals CTA" }
52
+ input-search: { type: input, bg: "#f5f5f5", border: "1.5px solid #e0e0e0", radius: "9999px", padding: "12px 16px", font: "16px / 400", use: "Address / restaurant search input" }
53
+ restaurant-card: { type: card, bg: "#ffffff", radius: "8px", shadow: "0px 2px 8px rgba(0,0,0,0.10)", use: "Restaurant listing card with hero image, name, rating, ETA" }
54
+ promo-card: { type: card, bg: "#FFC100", fg: "#1a1a1a", radius: "8px", use: "Promotional deal card, gold background" }
55
+ badge-status: { type: badge, bg: "#00CCBC", fg: "#003733", radius: "9999px", padding: "4px 10px", font: "12px / 600", use: "Delivery ETA, order status pills" }
56
+ badge-tag: { type: badge, bg: "#f5f5f5", fg: "#1a1a1a", radius: "9999px", padding: "4px 10px", font: "12px / 400", use: "Restaurant category tags (Fast food, Asian, etc.)" }
57
+ nav-tab: { type: tab, fg: "#4a4a4a", radius: "0px", font: "16px / 400", active: "text #00CCBC + 2px bottom border #00CCBC", use: "Bottom navigation tabs (Home, Orders, Account)" }
58
+ toggle-on: { type: toggle, bg: "#00CCBC", radius: "9999px", use: "On state for dietary/preference filters" }
59
+ components_harvested: true
60
+ ---
61
+
62
+ # Design System Inspiration of Deliveroo
63
+
64
+ ## 1. Visual Theme & Atmosphere
65
+
66
+ Deliveroo is the UK's leading food delivery platform, and its design identity centres on one of the most recognisable brand assets in consumer tech: the teal "Roo" kangaroo (`#00CCBC`). The visual system is built around a clean, energetic personality — white canvas, bold teal action colour, generous food photography, and the bespoke Stratos typeface tilted at six degrees to echo the forward-motion of the Roo Head. The overall impression is of a brand that is confident, friendly, and unapologetically focused on the pleasure of eating.
67
+
68
+ The design system, known internally as PDS 2.0 (Platform Design System), underwent a significant accessibility overhaul in 2024, revamping the digital colour palette around WCAG 2.1 Level AA compliance. The action colour — called "Seaweed" in the token system — is the same teal but paired with deep teal ink (`#003733`) for text on teal fills, replacing the earlier white-on-teal pattern that failed contrast checks. This is the system's most important token decision: the primary brand hue (`#00CCBC`) remains, but it now wears dark text.
69
+
70
+ The typography system is anchored by Stratos, a geometric sans-serif by Production Type that DesignStudio customised for the 2016 rebrand. The typeface is angled at six degrees — matching the nose of the Roo Head — and used for bold, italic headlines that project kinetic energy ("the delivery is arriving"). Body and UI text falls back to the system sans-serif, keeping functional text legible and lightweight.
71
+
72
+ **Key Characteristics:**
73
+ - Deliveroo Teal (`#00CCBC`) — the brand's single saturated accent, used for CTAs, active states, ratings, and the Roo logo
74
+ - Deep Teal Ink (`#003733`) — text colour on teal fills, ensuring WCAG AA compliance
75
+ - Stratos typeface — angled, bold, geometric; the kinetic brand voice in headlines
76
+ - Pill geometry (`border-radius: 9999px`) on all primary buttons and search inputs
77
+ - White canvas (`#ffffff`) with tinted grey surfaces (`#f5f5f5`) for section separation
78
+ - Promo Gold (`#FFC100`) for deals and promotional elements only
79
+ - Dark mode canvas (`#121212`) for night-time ordering
80
+ - Food-first photography with consistent styling across restaurant cards
81
+
82
+ ## 2. Color Palette & Roles
83
+
84
+ ### Primary
85
+ - **Deliveroo Teal** (`#00CCBC`): Primary brand colour. CTA button backgrounds, active tab indicators, rating stars, Roo logo fill, order tracking journey line. The system's single saturated action colour.
86
+ - **Teal Hover** (`#00A99C`): Pressed/hover state for primary teal elements. Slightly darker for depth.
87
+ - **Teal Ink** (`#003733`): Deep teal for text on teal backgrounds. PDS 2.0 AA-compliant text/icon colour on Seaweed fills.
88
+
89
+ ### Brand
90
+ - **Brand Teal** (`#00CCBC`): Equivalent to primary — the "Seaweed" core token in the PDS token system.
91
+ - **Promo Gold** (`#FFC100`): Reserved exclusively for promotional deals, voucher highlights, and offer CTAs. Never used as a general accent.
92
+
93
+ ### Canvas & Surface
94
+ - **Pure White** (`#ffffff`): Default page and card background.
95
+ - **Surface Grey** (`#f5f5f5`): Tinted surface for section backgrounds, input fields, ghost containers.
96
+ - **Dark Canvas** (`#121212`): Night/dark mode background — the warm near-black used when system dark mode is active.
97
+
98
+ ### Text
99
+ - **Heading** (`#1a1a1a`): Primary headings and strong labels. Near-black, not pure black.
100
+ - **Body** (`#4a4a4a`): Standard body copy, descriptions, secondary labels.
101
+ - **Muted** (`#767676`): Captions, metadata, placeholder text. Passes AA on white.
102
+ - **Teal Ink on Teal** (`#003733`): Labels and icons on teal fill.
103
+
104
+ ### Status
105
+ - **Error / Critical** (`#DF1619`): System error state, `color.background.critical` token.
106
+ - **Hairline** (`#e0e0e0`): Borders, dividers, card outlines.
107
+
108
+ ## 3. Typography Rules
109
+
110
+ ### Font Family
111
+ - **Display**: Stratos by Production Type (customised for Deliveroo). Bold, italic, angled at 6° to echo the Roo's geometry. Used for hero headlines and brand moments.
112
+ - **Body / UI**: System sans-serif stack (`system-ui, -apple-system, sans-serif`). Clean, legible, and fast-loading.
113
+
114
+ ### Hierarchy
115
+
116
+ | Role | Font | Size | Weight | Line Height | Notes |
117
+ |------|------|------|--------|-------------|-------|
118
+ | Display Hero | Stratos | 48px | 700 | 1.10 | -0.5px tracking, 6° italic angle |
119
+ | Display Large | Stratos | 36px | 700 | 1.15 | Section headlines |
120
+ | Sub-section | Stratos / System | 24px | 600 | 1.20 | Card titles, feature heads |
121
+ | Body Large | System | 18px | 400 | 1.50 | Feature descriptions |
122
+ | Body | System | 16px | 400 | 1.50 | Standard reading text |
123
+ | Button | System | 16px | 600 | 1.00 | CTA label |
124
+ | Caption | System | 14px | 400 | normal | Metadata, secondary labels |
125
+ | Tag / Badge | System | 12px | 400–600 | normal | Restaurant tags, status pills |
126
+
127
+ ### Principles
128
+ - **Stratos for brand voice**: The custom typeface appears only at headline/brand scales. Its angled geometry and bold weight carry Deliveroo's energetic personality.
129
+ - **System font for function**: UI text, form labels, body copy, and navigation use the system sans. This keeps the app fast and legible across platforms without custom font loading.
130
+ - **Pill geometry and type pairing**: The pill CTA button's full-radius curves soften the angular Stratos headlines, creating a push-pull between energy (headlines) and approachability (buttons).
131
+ - **Food-forward hierarchy**: Typography always defers to food photography in visual hierarchy. Headlines introduce context; photography sells the experience.
132
+
133
+ ## 4. Component Stylings
134
+
135
+ ### Buttons
136
+
137
+ **Primary CTA (Teal Pill)**
138
+ - Background: `#00CCBC`
139
+ - Text: `#003733`
140
+ - Radius: 9999px
141
+ - Padding: 14px 24px
142
+ - Font: 16px system-ui weight 600
143
+ - Hover: `#00A99C` background
144
+ - Use: "Order now", "Add to basket", "Sign up" — primary user flow action
145
+
146
+ **Secondary (White Outlined Pill)**
147
+ - Background: `#ffffff`
148
+ - Text: `#1a1a1a`
149
+ - Border: 1.5px solid `#e0e0e0`
150
+ - Radius: 9999px
151
+ - Padding: 14px 24px
152
+ - Font: 16px weight 600
153
+ - Use: "View menu", "See all restaurants" — secondary or ghost action
154
+
155
+ **Promo (Gold Pill)**
156
+ - Background: `#FFC100`
157
+ - Text: `#1a1a1a`
158
+ - Radius: 9999px
159
+ - Padding: 14px 24px
160
+ - Font: 16px weight 600
161
+ - Use: Deal/voucher CTAs only ("Get 20% off", "Claim deal")
162
+
163
+ ### Inputs
164
+
165
+ **Search Input (Address / Restaurant Search)**
166
+ - Background: `#f5f5f5`
167
+ - Border: 1.5px solid `#e0e0e0`
168
+ - Radius: 9999px
169
+ - Padding: 12px 16px
170
+ - Font: 16px weight 400
171
+ - Focus: 1.5px solid `#00CCBC`
172
+ - Placeholder: `#767676`
173
+ - Use: Primary discovery surface — address entry and restaurant/cuisine search
174
+
175
+ ### Cards & Containers
176
+
177
+ **Restaurant Card**
178
+ - Background: `#ffffff`
179
+ - Radius: 8px
180
+ - Shadow: `0px 2px 8px rgba(0,0,0,0.10)`
181
+ - Use: Listing card with hero food image, restaurant name, rating stars, delivery ETA, category tags
182
+
183
+ **Promo Card**
184
+ - Background: `#FFC100`
185
+ - Text: `#1a1a1a`
186
+ - Radius: 8px
187
+ - Use: Promotional deal highlights — gold background distinguishes from regular restaurant cards
188
+
189
+ **Category Card**
190
+ - Background: `#f5f5f5`
191
+ - Radius: 8px
192
+ - Use: Cuisine category selector (Pizza, Sushi, Burgers, etc.) with icon
193
+
194
+ ### Badges & Tags
195
+
196
+ **Status Pill (ETA / Order Status)**
197
+ - Background: `#00CCBC`
198
+ - Text: `#003733`
199
+ - Radius: 9999px
200
+ - Padding: 4px 10px
201
+ - Font: 12px weight 600
202
+ - Use: Delivery ETA on restaurant cards ("25–35 min"), order status in tracking view
203
+
204
+ **Category Tag**
205
+ - Background: `#f5f5f5`
206
+ - Text: `#1a1a1a`
207
+ - Radius: 9999px
208
+ - Padding: 4px 10px
209
+ - Font: 12px weight 400
210
+ - Use: Restaurant category labels ("Asian", "Fast food", "Healthy")
211
+
212
+ ### Tabs & Navigation
213
+
214
+ **Bottom Nav Tab**
215
+ - Text (inactive): `#4a4a4a`
216
+ - Active: `#00CCBC` text
217
+ - Active: 2px bottom indicator `#00CCBC`
218
+ - Font: 16px weight 400
219
+ - Use: App bottom navigation (Home, Orders, Account, Offers)
220
+
221
+ ### Toggles
222
+
223
+ **Filter Toggle (On)**
224
+ - Background: `#00CCBC`
225
+ - Radius: 9999px
226
+ - Use: Dietary/preference filter toggles (Vegetarian, Halal, Gluten-free)
227
+
228
+ ---
229
+
230
+ **Verified:** 2026-06-22 (omd:add-reference CREATE — KR IP geo-blocked from deliveroo.co.uk + design.deliveroo.net, tokens from Tier 1 official sources)
231
+ **Tier 1 sources:** https://deliveroo.design/ (brand + hiring surface), https://medium.com/deliveroo-design/brightening-up-accessibility-with-a-new-colour-system-5921915641ed (official Deliveroo Design Medium — PDS 2.0 colour system details, food-themed token names, `#DF1619` critical token), https://cdn.simpleicons.org/deliveroo (official hex #00CCBC confirmed)
232
+ **Tier 2 sources:** getdesign.md/deliveroo — not listed; styles.refero.design?q=deliveroo — not listed
233
+ **Conflicts unresolved:** Teal variant: #00CCBC (logo sources, SimpleIcons) vs #00CDBC (SchemeColor) vs #00c1b2 (designpieces/htmlcolors). Resolved: #00CCBC wins — confirmed by SimpleIcons official Deliveroo SVG fill value and Mobbin brand palette. Other variants are minor colour sampling discrepancies.
234
+
235
+ ## 5. Layout Principles
236
+
237
+ ### Spacing System
238
+ - Base unit: 8px
239
+ - Scale: 4px, 8px, 12px, 16px, 24px, 32px, 48px, 64px
240
+ - Notable: Restaurant cards use 16px internal padding; section headers get 24–32px margins
241
+
242
+ ### Grid & Container
243
+ - Mobile-first: single-column scroll with horizontal-scrolling category/restaurant rows
244
+ - Desktop: max content width ~1140px, 3–4 column restaurant grid
245
+ - Hero: full-width address entry bar with the pill search input as the central CTA
246
+ - Category carousels: horizontally scrolling chip rows for cuisine selection
247
+
248
+ ### Whitespace Philosophy
249
+ - **Food-first breathing room**: Generous vertical spacing between sections lets food photography dominate without competition
250
+ - **Surface segmentation**: `#f5f5f5` grey bands separate content sections without elevation — flat and clean
251
+ - **Pill rhythm**: The repeated pill (9999px radius) on buttons and inputs creates a consistent curvilinear cadence against the more angular Stratos headlines
252
+
253
+ ### Border Radius Scale
254
+ - None (0px): Dividers, horizontal rule elements
255
+ - Small (4px): Fine-grained UI labels
256
+ - Standard (8px): Cards, image containers, dropdowns — the workhorse
257
+ - Large (16px): Bottom sheet containers, modal cards
258
+ - Full (9999px): All buttons, search inputs, status pills, toggles
259
+
260
+ ## 6. Depth & Elevation
261
+
262
+ | Level | Treatment | Use |
263
+ |-------|-----------|-----|
264
+ | Flat (Level 0) | No shadow | Surface sections, inline text, tinted containers |
265
+ | Subtle (Level 1) | `0px 2px 8px rgba(0,0,0,0.10)` | Restaurant cards, standard product cards |
266
+ | Elevated (Level 2) | `0px 4px 16px rgba(0,0,0,0.14)` | Floating panels, sticky headers, bottom sheets |
267
+ | Sheet (Level 3) | Large shadow + scrim overlay | Full-screen order confirmation sheets, checkout modals |
268
+
269
+ **Shadow Philosophy**: Deliveroo's shadow system is restrained and food-friendly. Neutral rgba(0,0,0) shadows are used rather than brand-coloured shadows, keeping the focus on food photography rather than UI chrome. The single-layer approach (no multi-layer blue-tinted shadows) reflects a warmer, more consumer-friendly posture versus a technical/fintech brand. Cards lift just enough to feel tappable without visually competing with the food imagery above them.
270
+
271
+ ## 7. Do's and Don'ts
272
+
273
+ ### Do
274
+ - Use Deliveroo Teal (`#00CCBC`) with deep teal ink (`#003733`) text — the PDS 2.0 AA-compliant combination
275
+ - Apply pill geometry (9999px radius) to all primary buttons and search inputs — it's the system signature
276
+ - Use Stratos italic/bold only for brand headline moments — let food photography carry the visual weight
277
+ - Reserve Promo Gold (`#FFC100`) strictly for deals and promotional elements — it must mean "discount"
278
+ - Use `#f5f5f5` surface grey for section segmentation without elevation
279
+ - Lead with food photography — the design system exists to frame great food imagery
280
+ - Use the Roo Head / "The Rooute" journey line motif as brand graphic device in marketing
281
+
282
+ ### Don't
283
+ - Use white text on teal (`#00CCBC`) backgrounds — dark teal ink (`#003733`) is the AA-compliant choice
284
+ - Apply Promo Gold to non-promotional elements — it will dilute the "deal signal"
285
+ - Use sharp corners on interactive elements — Deliveroo is a pill-native system
286
+ - Overload layouts with text — food photography is the primary selling surface
287
+ - Use the Stratos headline treatment at body/caption sizes — it reads as shouting at small scale
288
+ - Apply heavy drop shadows (elevation above Level 2) to restaurant cards — food imagery should not be overshadowed
289
+ - Use the teal for destructive/error states — error red (`#DF1619`) owns that semantic
290
+
291
+ ## 8. Responsive Behavior
292
+
293
+ ### Breakpoints
294
+ | Name | Width | Key Changes |
295
+ |------|-------|-------------|
296
+ | Mobile | <640px | Single-column layout, horizontal-scroll rows, bottom nav |
297
+ | Tablet | 640–1024px | 2-column restaurant grid, larger hero |
298
+ | Desktop | 1024–1280px | 3–4 column restaurant grid, sidebar filters |
299
+ | Large Desktop | >1280px | Centred content, max-width 1140px, expanded filters |
300
+
301
+ ### Touch Targets
302
+ - Primary buttons: 52px minimum height (14px vertical padding + 24px text)
303
+ - Bottom nav items: full thumb-zone height, icon + label
304
+ - Restaurant cards: full-bleed tappable surface (not just text area)
305
+ - Filter toggles: 44×24px minimum touch target
306
+
307
+ ### Collapsing Strategy
308
+ - Hero address bar: full-width pill input maintained at all sizes
309
+ - Restaurant grid: 1→2→3→4 columns across breakpoints
310
+ - Category carousel: horizontal scroll maintained on mobile, wraps to 2-column grid on desktop
311
+ - Stratos headlines: scale down proportionally, weight stays bold
312
+ - Bottom navigation: transforms to sidebar/top nav on desktop
313
+
314
+ ## 9. Agent Prompt Guide
315
+
316
+ ### Quick Color Reference
317
+ - Primary CTA: Deliveroo Teal (`#00CCBC`)
318
+ - CTA text on teal: Deep Teal Ink (`#003733`)
319
+ - CTA Hover: Teal Pressed (`#00A99C`)
320
+ - Background: Pure White (`#ffffff`)
321
+ - Surface section: Light Grey (`#f5f5f5`)
322
+ - Heading text: Near-black (`#1a1a1a`)
323
+ - Body text: Dark Grey (`#4a4a4a`)
324
+ - Muted / caption: Mid Grey (`#767676`)
325
+ - Promo only: Gold (`#FFC100`)
326
+ - Error: Critical Red (`#DF1619`)
327
+ - Dark canvas: `#121212`
328
+
329
+ ### Example Component Prompts
330
+ - "Create a restaurant listing card: white background, 8px radius, `0px 2px 8px rgba(0,0,0,0.10)` shadow. Full-bleed hero image above. Below: restaurant name at 18px system-ui weight 600 color #1a1a1a. Rating in teal `#00CCBC` stars. Two pill badges: ETA `#00CCBC` bg `#003733` text 12px/600, category `#f5f5f5` bg `#1a1a1a` text 12px/400."
331
+ - "Build a primary order button: `#00CCBC` background, `#003733` text, 9999px radius, 14px 24px padding, 16px system-ui weight 600. Hover state: `#00A99C`. Full-width on mobile."
332
+ - "Design the hero address search bar: `#f5f5f5` background, 9999px radius, 1.5px `#e0e0e0` border, 12px 16px padding. Focus state: 1.5px `#00CCBC` border. Magnifier icon in `#4a4a4a` left-aligned."
333
+ - "Create a deal card: `#FFC100` gold background, `#1a1a1a` text, 8px radius. Headline 18px weight 700, subtext 14px weight 400. CTA pill button: `#1a1a1a` bg, `#ffffff` text, 9999px radius."
334
+ - "Design promo tag badge: `#00CCBC` background, `#003733` text, 9999px radius, 4px 10px padding, 12px/600. For ETA display: '25–35 min'."
335
+
336
+ ### Iteration Guide
337
+ 1. Teal (`#00CCBC`) is the primary CTA colour — always pair with `#003733` dark teal ink text (not white)
338
+ 2. All interactive elements use pill geometry (9999px) — never sharp corners
339
+ 3. Shadow is always neutral rgba(0,0,0) — no brand-coloured shadows
340
+ 4. Promo Gold (`#FFC100`) appears ONLY on discount/deal surfaces
341
+ 5. Food photography is the hero — typography and UI frame it, not compete
342
+ 6. Stratos bold italic is for marketing headlines only; system font everywhere else
343
+ 7. Surface grey (`#f5f5f5`) segments sections without elevation
344
+ 8. Error state always uses `#DF1619` — teal never carries a negative semantic
345
+
346
+ ---
347
+
348
+ ## 10. Voice & Tone
349
+
350
+ Deliveroo's voice is **warm, direct, and food-obsessed** — a cheerful guide that celebrates the pleasure of eating, not a clinical logistics system. Copy is short, action-oriented, and hungry. The brand speaks in the language of craving ("You deserve tonight off", "Find the good stuff") rather than the language of efficiency ("Delivery in under 30 minutes"). The friendly kangaroo mascot sets the register: spirited, approachable, with a subtle British wit. Menus and restaurant cards use food-first language; operational copy (tracking, payment) stays brief and reassuring.
351
+
352
+ | Context | Tone |
353
+ |---|---|
354
+ | Hero / marketing | Warm, celebratory. "Restaurants you love, delivered to your door." |
355
+ | CTA buttons | Direct, imperative. "Order now", "Start your order", "Add to basket". |
356
+ | Empty states | Encouraging, not apologetic. "No restaurants near you yet — try a different address." |
357
+ | Order tracking | Calm, reassuring. "Yasmine is on her way with your order." |
358
+ | Error / issue | Empathetic, action-forward. "Something went wrong. Let's try that again." |
359
+ | Push notifications | Conversational, urgent. "Your food is 5 minutes away! 🛵" (emoji permitted) |
360
+ | Promo / deals | Excited, punchy. "20% off your next order. Don't wait." |
361
+
362
+ **Voice samples (verified from deliveroo.design / public brand surfaces):**
363
+ - "How do you show customers when their order's arriving?" — hero header on deliveroo.design *(verified 2026-06-22)*
364
+ - "Restaurants you love, delivered to your door" — brand tagline, widely documented *(public fact)*
365
+ - "Your order is on its way" — tracking state copy, illustrative *(editorial interpretation)*
366
+
367
+ **Forbidden register**: corporate logistics language ("fulfilment", "last-mile"), aggressive urgency ("Order NOW before it's gone!"), impersonal transactional tone, technical jargon in customer-facing copy.
368
+
369
+ ## 11. Brand Narrative
370
+
371
+ Deliveroo was founded in **2013** by **Will Shu** (CEO) and **Greg Orlowski** (CTO), both former Morgan Stanley analysts in London who noticed the absence of quality restaurant delivery in the city. Shu famously personally delivered on a bicycle for the first year — an origin story that anchors the brand's rider-centric identity and shaped the design decision to centre the journey line (the rider's path from restaurant to door) as the brand's graphic signature: *the Rooute*.
372
+
373
+ The **2016 rebrand by DesignStudio** — the same agency behind Airbnb's 2014 identity overhaul — introduced the current visual language: the abstracted "Roo Head" kangaroo icon, the Stratos typeface (angled 6° to echo the Roo's nose), and the teal colour system. The rebrand positioned Deliveroo as a premium-yet-friendly food platform rather than a logistics utility. DesignStudio created over 400 assets to demonstrate the identity's flexibility across ten global markets.
374
+
375
+ The **PDS 2.0 colour accessibility overhaul** in 2024 — led by Laura Soto Miranda and the Deliveroo Design team — was the system's most significant internal evolution. The food-themed token naming (Seaweed, Anchovy, Tomato) gave the palette personality while codifying WCAG AA compliance: teal surfaces now carry dark teal ink (`#003733`) rather than white text. This is the brand growing up while staying true to its food-first identity.
376
+
377
+ What Deliveroo refuses: the cold, efficient aesthetic of logistics (no dark enterprise UIs, no heavy grids), the aggressive urgency of discount food apps (gold is reserved for promos, not primary actions), and the genericness of white-label delivery chrome. What it embraces: the joy of eating, the Roo character as a recognisable global icon, and a design system built around food photography as the primary persuasive surface.
378
+
379
+ ## 12. Principles
380
+
381
+ 1. **Food is the hero.** Every design decision asks: does this help the food shine? *UI implication:* typography, colour, and layout exist to frame photography — never to compete with it.
382
+ 2. **One brand colour, maximum recognition.** Teal (`#00CCBC`) means Deliveroo. It is not shared with secondary accents. *UI implication:* reserve teal for action and active states exclusively; promo gold is a separate semantic.
383
+ 3. **Accessible by system.** PDS 2.0 encodes accessibility into the token pairing itself — `color.background.[ROLE]` + `color.foreground.on.[ROLE]`. *UI implication:* designers cannot accidentally create a non-AA combination if they use semantic alias tokens.
384
+ 4. **Warmth over efficiency.** This is about the pleasure of food, not supply chain. *UI implication:* Copy that humanises ("Yasmine is on the way") over copy that abstacts ("Rider dispatched").
385
+ 5. **Motion tells the story of delivery.** The Rooute — the teal journey line — is the brand's kinetic signature. *UI implication:* order tracking experiences lead with the animated map path, not the logistics text.
386
+
387
+ ## 13. Personas
388
+
389
+ *Personas below are fictional archetypes informed by publicly observable Deliveroo user segments, not individual people.*
390
+
391
+ **Sophie Turner, 28, East London.** A junior creative agency employee working late on a pitch. Orders Deliveroo 2–3 times a week after 7pm. Values the restaurant variety and speed. Gets mildly annoyed when the ETA is off by more than 5 minutes. Trusts the rating system. Has Deliveroo Plus and mentally calculates whether it pays for itself each month.
392
+
393
+ **Marcus O'Brien, 40, Manchester.** A father of two who uses Deliveroo on Friday nights as the family treat. Filters heavily by category (pizza, Thai) and ETA. Cares a lot about correct orders. Uses the saved favourites feature. Wouldn't describe himself as a "foodie" — he just wants reliable, tasty food delivered without faff.
394
+
395
+ **Isabella Chen, 34, Edinburgh.** A remote worker who uses Deliveroo for lunch breaks when she doesn't want to leave her flat. Discovers new cuisines via the homepage curation. Responds well to promo nudges (vouchers in push notifications). Values the app's clean, photography-forward browsing experience.
396
+
397
+ **Jamie Park, 22, Bristol.** A university student who uses Deliveroo late-night for post-night-out food. Price-sensitive — often scans promo codes before ordering. Uses group ordering with flatmates. Discovers new spots through the trending section. The Roo character resonates with him as playfully British.
398
+
399
+ ## 14. States
400
+
401
+ | State | Treatment |
402
+ |---|---|
403
+ | **Empty (no restaurants near address)** | White canvas. Friendly Roo illustration. Single sentence in `#1a1a1a` at 18px: "We're not in your area yet." Teal CTA: "Try a different address". |
404
+ | **Empty (basket, nothing added)** | Muted `#767676` copy at 16px: "Your basket is empty." Teal link: "Browse restaurants". |
405
+ | **Loading (restaurant list)** | Skeleton cards at exact final dimensions — image placeholder + two text line skeletons + badge skeleton. `#f5f5f5` shimmer at 1.4s. |
406
+ | **Loading (map / order tracking)** | Animated Roo Head or teal journey-line pulse on the map canvas. Previous estimated time displayed while new ETA loads. |
407
+ | **Error (order failed)** | Red-tinted banner at top (`#DF1619` border). Empathetic message + "Try again" teal CTA. Never generic — states what went wrong (payment declined / restaurant unavailable). |
408
+ | **Error (delivery issue)** | In-app chat surface with proactive message from Deliveroo. Teal CTA: "Contact rider" or "Report issue". |
409
+ | **Success (order placed)** | Full-screen confirmation with animated Roo. "Order confirmed! 🎉" in Stratos bold. ETA pill badge in teal. |
410
+ | **Success (review submitted)** | Brief inline confirmation. 3s auto-dismiss toast: "Review submitted. Thanks!" |
411
+ | **Skeleton (restaurant card)** | `#f5f5f5` image block (full card width) + two skeleton text lines. 8px radius maintained. |
412
+ | **Disabled (out of delivery zone)** | Restaurant card with reduced opacity overlay (`rgba(255,255,255,0.6)`) and "Not in your area" label in `#767676`. Teal elements are muted to `#b3e8e5`. |
413
+
414
+ ## 15. Motion & Easing
415
+
416
+ **Durations**:
417
+
418
+ | Token | Value | Use |
419
+ |---|---|---|
420
+ | `motion-instant` | 0ms | Toggle state commits, selection ticks |
421
+ | `motion-fast` | 100ms | Button press feedback, tap highlights |
422
+ | `motion-standard` | 200ms | Card transitions, sheet appearances, tab switches |
423
+ | `motion-deliberate` | 300ms | Full-screen state changes, order confirmation reveal |
424
+ | `motion-slow` | 500ms | Rooute journey line animation, map path drawing |
425
+
426
+ **Easings**:
427
+
428
+ | Token | Curve | Use |
429
+ |---|---|---|
430
+ | `ease-enter` | `cubic-bezier(0.2, 0.6, 0.25, 1)` | Cards arriving, bottom sheets sliding up |
431
+ | `ease-exit` | `cubic-bezier(0.4, 0.0, 1, 1)` | Dismissals, overlay closing |
432
+ | `ease-spring` | `cubic-bezier(0.34, 1.56, 0.64, 1)` | Order confirmation pop animation (celebratory moments only) |
433
+ | `ease-standard` | `cubic-bezier(0.25, 0.1, 0.25, 1)` | Standard two-way transitions |
434
+
435
+ **Signature motions:**
436
+
437
+ 1. **The Rooute journey line.** Order tracking draws the teal path from restaurant to delivery address using `motion-slow` with `ease-enter`, creating a visual narrative of the rider's route. This is Deliveroo's signature animated brand moment.
438
+ 2. **Order confirmation burst.** The full-screen success state uses the spring easing (`ease-spring`) on the Roo illustration at `motion-deliberate` — the one place a celebratory overshoot is appropriate. Food delivery is emotionally positive.
439
+ 3. **Restaurant card entry.** Cards entering a grid use `motion-standard / ease-enter` with a 4px fade-from-below. Staggered by 40ms per card for a cascade feel without feeling slow.
440
+ 4. **Reduce motion.** Under `prefers-reduced-motion: reduce`, all transitions collapse to `motion-instant`. The Rooute does not animate — the path appears immediately. The order confirmation celebration becomes a static illustration.
441
+
442
+ <!--
443
+ OmD v0.1 Sources — Philosophy Layer (sections 10–15)
444
+
445
+ Tier 1 live inspect: KR IP geo-blocked from deliveroo.co.uk and design.deliveroo.net (Cloudflare Error 1009). Token data sourced from:
446
+ - https://deliveroo.design/ — brand surface; hero copy "How do you show customers when their order's arriving?" verified 2026-06-22
447
+ - https://medium.com/deliveroo-design/brightening-up-accessibility-with-a-new-colour-system-5921915641ed — official Deliveroo Design Medium blog; food-themed token naming (Seaweed, Anchovy, Tomato), `#DF1619` critical token, PDS 2.0 AA compliance approach
448
+ - https://cdn.simpleicons.org/deliveroo — SVG fill="00CCBC" confirming primary brand hex
449
+ - https://fontsinuse.com/uses/14757/deliveroo — Stratos (Production Type) + Adelle confirmed
450
+ - https://www.creativeboom.com/news/deliveroo-serves-up-a-sizzling-new-identity-to-drive-a-wider-global-appetite/ — Rooute, teal brand code, Roo Head geometry, 2023 refresh
451
+ - Search synthesis: #00A99C pressed state, #003733 teal ink, #121212 dark canvas, #FFC100 promo gold, pill geometry, food-first hierarchy — widely corroborated across multiple brand color databases and design articles
452
+
453
+ Personas (§13) are fictional archetypes. Names are illustrative; they do not refer to real people.
454
+
455
+ Interpretive claims about "food-first" design philosophy, pill-native system, and contrast-first PDS 2.0 direction are editorial readings connecting observed Deliveroo design decisions to their stated accessibility overhaul goals.
456
+
457
+ Brand narrative sourced from public record: Will Shu and Greg Orlowski founding in 2013; DesignStudio 2016 rebrand; 400 assets across 10 markets. These are widely documented public facts.
458
+ -->