Are.na — decoded design system
Are.na's design system, decoded live by Mozaika: measured color roles, type scale, buttons with real hover/focus states, motion and the brand's own tokens.
This is a static, crawlable rendering for search & AI engines. The interactive version — filters, live decode console, copy & export — is at https://mozaika.design/decode/are.na.
Decoded design system
Are.na's decoded design system: background #FFFFFF, text #000000, accent #00075F, link #FFFFFF, primary #000000; type scale h1 16px / h2 16px / body 16px; 5px spacing base; 0px base radius. The single interactive/action color is #F7F7F7 — used only on interactive or must-notice elements (buttons, links, key highlights), never on large fills.
Color roles
| Role | Value |
|---|---|
| bg | #FFFFFF |
| surface | #EFEFEF |
| border | #D8D8D8 |
| text | #000000 |
| text_muted | #606060 |
| primary | #000000 |
| accent | #00075F |
| link | #FFFFFF |
| button_bg | #F7F7F7 |
| button_text | #333333 |
Using these colors
- Action color
#F7F7F7— the single interactive color; only on things you click or must notice, never large fills. - accent
#00075F— accent for emphasis — keep it rare on the page. - primary
#000000— ≈ the text color — a foreground/text color, not an action color (action = #F7F7F7). - link
#FFFFFF— fails contrast on the background (~1.0:1) — this is a dark UI color, NOT a readable link; use the text or action color for links (verify against the reference).
Typography
- Heading: Arial
- Body: Arial
- h1: 16px
- h2: 16px
- body: 16px
Spacing
- base unit: 5px
- scale: 5px, 10px, 15px, 20px, 25px, 35px, 65px, 100px, 130px
Radii
- base: 0px
- button: 3px
Native design tokens
| Token | Value |
|---|---|
--colors-channelPrivate2 | #DFBEBE |
--colors-foregroundLight | rgba(0, 0, 0, 0.6) |
--colors-focus | #3D46C2 |
--colors-red2 | #DFBEBE |
--colors-link | #333 |
--colors-slate | #696969 |
--colors-gray7 | #000 |
--colors-channelClosed3 | #333 |
--colors-channelPublic1 | #F4F8F3 |
--colors-notification | #A87253 |
…and 70 more measured on the page.
Button states (measured)
- primary hover: border
1px solid rgb(222, 222, 222)· color#000000 - primary focus: border
1px solid rgb(61, 70, 194)· color#000000
Layout (measured)
- container max-width:
650px - nav: 55px fixed
- common grid: 12 columns
Motion choreography (measured)
Load order: div.c-iYglRF
Overlay recipe (measured)
dialog panel: #FFFFFF · radius 3px · enter 400ms linear
Themes
dark counterpart: background #000000, text #FFFFFF.
Responsive (measured)
- breakpoints: 520px · 900px · 1800px
- mobile (390px): nav inline
Install it
Drop this measured system into any shadcn/Tailwind project in one command:
npx shadcn add mozaika.design/r/decode/are.na
registry item · or query it over MCP: get_design_system("Are.na")
Export: DESIGN.md
# Are.na — Design System > light, minimalist, low, custom — deep decode (measured live) ## Colors | Role | Value | |------|-------| | bg | `#FFFFFF` | | surface | `#EFEFEF` | | border | `#D8D8D8` | | text | `#000000` | | text_muted | `#606060` | | primary | `#000000` | | accent | `#00075F` | | link | `#FFFFFF` | | button_bg | `#F7F7F7` | | button_text | `#333333` | **Using these colors** - **Action color** `#F7F7F7` — the single interactive color; it appears only on things you click or must notice (buttons, key highlights), never on large fills or backgrounds. - **accent** `#00075F` — accent for emphasis — keep it rare on the page. - **primary** `#000000` — ≈ the text color — a foreground/text color, not an action color (action = #F7F7F7). - **link** `#FFFFFF` — fails contrast on the background (~1.0:1) — this is a dark UI color, NOT a readable link; use the text or action color for links (verify against the reference). - **Page coverage** (full-page screenshot pixels): `#FFFFFF` 95.4% · `#B2B2B2` 1.6% · `#D0CFCF` 1.1% · `#E8E7E7` 1.1% ## Typography - Heading: **Arial** - Body: **Arial** | Role | Size / weight · line-height · tracking | |------|------------------------------------------| | body | 16px / 400 · lh 23px | | small | 14px / 700 · lh 21px | - Weight ladder: 400 · 700 — use these exact measured weights, not the 400/600 defaults. > **Fonts —** Arial — system font, no web load needed. ## Spacing - base unit: 5px (inferred from the measured scale) - measured scale: 5px, 10px, 15px, 20px, 25px, 35px, 65px, 100px, 130px — snap all gaps/padding to these ## Radius - base: 0px - button: 3px - card: 50px - sharp: 3px ## Buttons | Button | Fill / text | Border | Radius | Padding | Font | Shadow | |--------|-------------|--------|--------|---------|------|--------| | primary | `#F7F7F7` / `#333333` | 1px solid rgba(0, 0, 0, 0) | 3px | 0px 10px 0px 10px | 700 12.5px | none | | secondary | `#F7F7F7` / `#333333` | 1px solid rgba(0, 0, 0, 0) | 3px | 0px 10px 0px 10px | 700 12.5px | none | **States (measured, not guessed)** - primary hover: border `1px solid rgb(222, 222, 222)` · color `#000000` - primary focus: border `1px solid rgb(61, 70, 194)` · color `#000000` - secondary hover: border `1px solid rgb(222, 222, 222)` · color `#000000` ## Their own tokens (verbatim from :root) | Token | Value | |-------|-------| | `--colors-channelPrivate2` | `#DFBEBE` | | `--colors-foregroundLight` | `rgba(0, 0, 0, 0.6)` | | `--colors-focus` | `#3D46C2` | | `--colors-red2` | `#DFBEBE` | | `--colors-link` | `#333` | | `--colors-slate` | `#696969` | | `--colors-gray7` | `#000` | | `--colors-channelClosed3` | `#333` | | `--colors-channelPublic1` | `#F4F8F3` | | `--colors-notification` | `#A87253` | | `--colors-foregroundShadow` | `rgba(0, 0, 0, 0.08)` | | `--colors-gray3` | `#DEDEDE` | _…and 68 more measured on the page._ Prefer these names when extending their system — it's the brand's actual vocabulary. ## Layout (measured) - container max 650px · common grid: 12-col - nav: 55px fixed · bg #FFFFFF | Section (y) | Height | Cols | Gap | Pad y | Split | |---|---|---|---|---|---| | 55 | 2603 | 12 | 15 | 0/0 | — | ## Motion choreography (measured) Load order: `div.c-iYglRF` @0ms - overlay dialog (auto-opened): panel #FFFFFF · r 3px · border 1px solid rgb(237, 237, 237) · shadow rgba(0, 0, 0, 0.08) 0px 0px 20px 0px - enter: transform+opacity from translateY(-10px) scale(0.96),0 · 400ms linear Rebuild the timeline, not just the durations — order, delays and staggers above are the choreography. ## Components (measured) - link: #333333 · no underline ## Themes (both measured) - dark counterpart: bg `#000000` · text `#FFFFFF` - tokens that flip between modes: - `--colors-channelPrivate2`: `#DFBEBE` → `#412020` - `--colors-foregroundLight`: `rgba(0, 0, 0, 0.6)` → `rgba(255, 255, 255, 0.8)` - `--colors-focus`: `#3D46C2` → `#5E6DEE` - `--colors-red2`: `#DFBEBE` → `#412020` - `--colors-link`: `#333` → `#E5E5E5` - `--colors-slate`: `#696969` → `#B2B2B2` - `--colors-gray7`: `#000` → `#FFF` - `--colors-channelClosed3`: `#333` → `#E5E5E5` ## Responsive (measured) - breakpoints: 520px · 900px · 1800px - mobile (390px): body 16px · nav: inline ## How to apply Paste the Tailwind `@theme` (or CSS variables) as your base, then build each section to its spec — verify every color, radius, and font against these tokens. Hover/focus states, shadows and motion timings above are measured from the live page — match them exactly, don't re-guess them.
An automated reading of Are.na's publicly-visible CSS (colors, fonts, spacing, motion) — not affiliated with are.na. No screenshots stored. Removal requests: hello@mozaika.design.