Todoist — design system & UI screens
Light hero beside a tasks product UI with press quotes from The Verge, PC Mag and TechRadar.
This is a static, crawlable rendering for search & AI engines. The interactive version — filters, live decode console, copy & export — is at https://mozaika.design/website/todoist.
Decoded design system
Todoist's decoded design system: background #FEFDFC, text #25221E, accent #E34432, link #0F66AE, primary #E34432; type scale h1 55px / h2 38px / body 15.5px; 4px spacing base; 8px base radius. The single interactive/action color is #E34432 — used only on interactive or must-notice elements (buttons, links, key highlights), never on large fills.
Color roles
| Role | Value |
|---|---|
| bg | #FEFDFC |
| surface | #F0EFEE |
| border | #DDDCDA |
| text | #25221E |
| text_muted | #777572 |
| primary | #E34432 |
| accent | #E34432 |
| link | #0F66AE |
| secondary | #DFAB47 |
| button_bg | #E34432 |
| button_text | #FFFFFF |
Using these colors
- Action color
#E34432— the single interactive color; only on things you click or must notice, never large fills. primary,accent,button_bgare all#E34432— one role, not several (the action color).- accent
#E34432— THE accent / action color — interactive & must-notice only (buttons, links, focus, one key highlight); never large fills or backgrounds. Scarcity is what makes it read as designed. - link
#0F66AE— inline text links and link-styled controls. - secondary
#DFAB47— optional secondary accent — LOW decode confidence; use rarely (a status color or a single decorative moment) or omit it entirely. Prefer one accent unless the reference clearly shows two.
Typography
- Heading: Graphik
- Body: Inter
- h1: 55px
- h2: 38px
- body: 15.5px
Spacing
- base unit: 4px
- scale: 4px, 6px, 7px, 8px, 9px, 10px, 12px, 14px, 16px, 20px
Radii
- base: 8px
- button: 15px
Shadows (elevation)
- subtle:
rgba(37, 34, 30, 0.04) 0px 1px 0px 0px - card:
rgba(37, 34, 30, 0.07) 0px 14px 19px -9px, rgba(37, 34, 30, 0.18) 0px 10px 48px 0px - overlay:
rgba(0, 0, 0, 0.18) 0px 12px 32px 0px
Motion
Micro-interactions run at 150ms (dominant) with cubic-bezier(0.2, 0.8, 0.2, 1).
- durations: 150ms · 200ms · 300ms
- easings:
cubic-bezier(0.2, 0.8, 0.2, 1)·ease-out - animated properties: transform, background-color, opacity, color
Native design tokens
| Token | Value |
|---|---|
--osano-clear-dialog-background | rgba(255,255,255,0) |
--osano-button-border-color | #e44232 |
--osano-button-background-color | #e44232 |
--osano-button-foreground-color | #ffffff |
--osano-dialog-background-color | #ffffff |
--osano-dialog-foreground-color | #6f6d6b |
--osano-info-dialog-overlay-color | rgba(0,0,0,0.45) |
--osano-link-color | #0f66ae |
--osano-toggle-off-track-color | #a0a0a0 |
--osano-toggle-off-thumb-color | #FFFFFF |
…and 110 more measured on the page.
Button states (measured)
- primary hover: background
#CF3520 - primary focus: box-shadow
rgb(225, 240, 244) 0px 0px 0px 4px, rgb(41, 122, 188) 0px 0px 0px 1px
Layout (measured)
- container max-width:
1360px - nav: 72px
Motion choreography (measured)
Load order: div.scroller → div.osano-cm-info-dialog__in → div.osano-cm-window__dialog → button.osano-cm-dialog__close → button.osano-cm-dialog__close → button.osano-cm-dialog__close
Scroll reveal: 3 elements rest at opacity 0, animate in over 0.3s ease-in-out.
Overlay recipe (measured)
dialog panel: #FFFFFF · radius 12px
Responsive (measured)
- breakpoints: 480px · 768px · 960px · 1120px · 1200px
- mobile (390px): hero 37px · nav hamburger
Full design system, per-section tokens & DESIGN.md / Tailwind / CSS exports →
Screens
Sections (12)
- Hero — Todoist hero
- Logo Wall — Press & review logo wall
- Feature — Capture tasks feature
- Feature — Stay organized feature
- Feature — Planning feature
- Feature — Team tasks feature
- Gallery / Showcase — What's Todoist video
- Gallery / Showcase — Templates showcase
- Feature — AI in Todoist feature
- Stats / Metrics — Trust stats
- CTA / Sign-up — Closing CTA
- Footer — Footer