Color
Blue is Patepang’s color everywhere: soft blue for who we are, deep blue for what can be pressed, navy and ivory around them. Apricot is kept for memories.
The brand’s colors
#Patepang has one color, in two strengths. Soft blue is the blue of the app icon: it says who we are, and it is never asked to carry words. Deep blue is the same blue with enough weight to read and to press.
Navy and ivory hold everything else: navy for words, ivory for the ground. Pale blue and white complete the set. Apricot stands apart on purpose and has one job.
- Soft blue#61A8DCWho Patepang is: the app icon, the logo on ivory, navy and pale blue from 160 px wide, and you in every illustration. Never words, never a control.
- Deep blue#245C8FWhat can be pressed and followed: the main button, links, the focus ring. Also the logo on light grounds under 160 px, and one-ink print.
- Navy#18273AWords on light grounds, and the dark grounds themselves: the footer, the dark app icon.
- Ivory#F7F5F0The canvas everything sits on, and words on dark grounds.
- Pale blue#E2ECF5Calm fields: a chosen chip, a card set apart. What stands on it is deep blue.
- White#FFFFFFThe logo on soft blue and on deep blue, and the words on a deep blue button.
- Apricot#E7956CMemories only: the panyecek of the wordmark in a memory moment, and the three momen illustrations.
Roles in an interface
#An interface never reads a color by its name. It reads a role: the canvas, the words, the main button. Each role has a value for the light scheme and one for the dark, and a screen that uses roles follows the scheme with no further work.
The roles below are the ones the sites draw with today. The app’s theme has a role for the same job under the name in the last column.
| Role | Light | Dark | Sites and app |
|---|---|---|---|
| Canvas | #F7F5F0 | #0F1824 | --canvas · canvas |
| Raised surface | #FFFEFB | #172334 | --raised · surface.raised |
| Sunken surface | #EFECE5 | #0B121C | --sunken · surface.sunken |
| Words | #18273A | #F2EFE8 | --ink · text.primary |
| Second words | #4B5869 | #C6D0DC | --ink-2 · text.secondary |
| Captions | #66717F | #9AA6B4 | --ink-3 · text.tertiary |
| Hairline | #E3DFD6 | #26344A | --line · border.subtle |
| Strong line | #8792A0 | #6E7C8F | --line-strong · border.strong |
| Link | #245C8F | #8DBDEB | --link · brand.text |
| Main button | #245C8F | #61A8DC | --btn · brand.solid |
| Words on the main button | #FFFFFF | #0F1824 | --on-btn · brand.onSolid |
| Focus ring | #245C8F | #8DBDEB | --focus · border.focus |
| Brand tint | #E2ECF5 | #1A2B42 | --brand-subtle · brand.subtle |
| Words on the brand tint | #245C8F | #A9CBEA | --on-brand-subtle · brand.onSubtle |
| Deep ground | #18273A | #0B121C | --deep · hero.top |
| Words on the deep ground | #F7F5F0 | #F2EFE8 | --deep-ink · hero.ink |
| Soft blue field | #61A8DC | #245C8F | --sky · accent.decor |
| Words on the soft blue field | #18273A | #F2EFE8 | --on-sky · text.primary |
Measured contrast
#Every pair that carries words or marks a control is measured with the WCAG 2.2 formula, in both schemes, and none is used before it passes: 4.5:1 for words, 3:1 for the focus ring.
These figures are computed from the values on this page each time the site is built, so they cannot drift from them.
| Pair | Light | Dark | At least |
|---|---|---|---|
| Words | 13.86:1 | 15.54:1 | 4.5:1 |
| Second words | 6.65:1 | 11.44:1 | 4.5:1 |
| Captions | 4.55:1 | 7.21:1 | 4.5:1 |
| Captions on a card | 4.92:1 | 6.40:1 | 4.5:1 |
| A link | 6.42:1 | 9.02:1 | 4.5:1 |
| The main button | 6.99:1 | 6.92:1 | 4.5:1 |
| A chosen chip | 5.85:1 | 8.46:1 | 4.5:1 |
| The footer | 13.86:1 | 16.36:1 | 4.5:1 |
| Words on soft blue | 5.86:1 | 6.09:1 | 4.5:1 |
| The focus ring | 6.42:1 | 9.02:1 | 3:1 |
Soft blue is not among them. It reaches only 2.58:1 under white and 2.37:1 on ivory, which is why it never carries words and never marks a control. Words on a soft blue field are navy (5.86:1).
Supporting colors
#These colors stand beside the blues and never replace them. In an illustration a color is a person: soft blue is always you, and the others are the people you meet.
- Forest green#1F5F4FOther people in illustrations.
- Leaf#5DA78BOther people in illustrations.
- Amber#F0C468Other people, the sun, the moon and a glow in illustrations; a warning’s words on dark grounds.
- Light blue#A9CBEAOther people and traces in illustrations; second words on the deep ground.
- Brick#A0461EMemories, where apricot has to carry words on a light ground.
The twelve pigments of the illustrations, with their pairs for dark paper, are on Illustration.
Status colors
#A status color says that something worked, needs a look, or went wrong. It always comes with an icon or a word, because color alone is not a message, and it is never used to decorate or to tell people apart in an interface.
| Status | Light | Dark | Says |
|---|---|---|---|
| Success | #2C6936 · #E3F0E4 | #8FD09B · #1C2B1F | Something worked. |
| Warning | #7A5200 · #FBEFD3 | #F0C468 · #2E2716 | Something needs a look: a connection fading, a draft. |
| Danger | #B0261D · #FBE7E4 | #FF9C90 · #3A1E1B | Something went wrong, or an action removes or ends something. |
| Information | #245C8F · #E2ECF5 | #8DBDEB · #18273A | Something to know, with no action asked. |
Rules
#Do
- Use deep blue for the one main action of a screen, for links, and for the focus ring.
- Put navy words on ivory, and ivory words on navy.
- Keep apricot for memories: the panyecek in a memory moment, and the momen illustrations.
- Read colors from roles in code, so both schemes are right at once.
- Pair every status color with an icon or a word.
Do not
- Set words, icons that must be read, or the edge of a control in soft blue.
- Use blue for a hover, a press, or a selection: those have their own quiet tones.
- Add gradients, glows, or a second decorative color.
- Use black. Words are navy; only one-ink print that cannot be blue is black or white, in full.
- Lay a color over a photo of a person.
Every value on this page is also a file: tokens.json and tokens.css.
Not yet in line
#Blue for everything was decided on 11 November 2026. The logo, the app icon and the sites already follow it. What does not yet:
- The app’s main button and brand-colored words are forest green (brand.solid #1F5F4F, and #7FCDB4 in the dark theme). They move to deep blue.
- The app’s words are a warm charcoal (#22201C) and its dark theme stands on a charcoal ground (#141513). Words move to navy; the dark ground is settled with that move.
- The app’s two-dots motif draws one forest green dot and one apricot dot. By the rules here, you are soft blue and apricot is for memories alone.
- On the sites, success and danger are close to the app’s values but not the same (--ok #1F6B4A, --bad #A03A2A).
- On the sites, the strong line (--line-strong #8792A0) reaches 2.90:1 on the canvas. Where it is the only edge of a control it needs 3:1; the app’s value for that role (#8A8378) passes.
Each is closed in its own repository, and this page is updated when it is.