---
version: alpha
name: vidIQ
description: "Dark interface measured from vidiq.com: satoshi type, vivid blue accents, tonal surfaces and 16px corners."
colors:
  background: "#0A0D15"
  surface: "#0A0D15"
  on-surface: "#A2A7B8"
  on-background: "#A2A7B8"
  on-surface-strong: "#FFFFFF"
  on-surface-variant: "#F7F7F7"
  on-surface-muted: "#9D9EA1"
  surface-container-low: "#0D1017"
  surface-container: "#161922"
  surface-container-high: "#2D2F39"
  outline: "#2D2F39"
  outline-variant: "#1E212B"
  primary: "#2574F5"
  on-primary: "#000000"
  secondary: "#1863DC"
  tertiary: "#EA4335"
typography:
  headline-display:
    fontFamily: satoshi
    fontSize: 60px
    fontWeight: 700
    lineHeight: 1.1
    letterSpacing: -0.021em
  headline-lg:
    fontFamily: satoshi
    fontSize: 42px
    fontWeight: 700
    lineHeight: 1
    letterSpacing: -0.04em
  headline-md:
    fontFamily: satoshi
    fontSize: 40px
    fontWeight: 700
    lineHeight: 1.1
    letterSpacing: -0.016em
  headline-sm:
    fontFamily: satoshi
    fontSize: 20px
    fontWeight: 500
    lineHeight: 1.25
  body-md:
    fontFamily: satoshi
    fontSize: 16px
    fontWeight: 400
    lineHeight: 1.5
  body-lg:
    fontFamily: satoshi
    fontSize: 18px
    fontWeight: 700
    lineHeight: 1.44
  body-sm:
    fontFamily: satoshi
    fontSize: 14px
    fontWeight: 400
    lineHeight: 1.4
  caption:
    fontFamily: satoshi
    fontSize: 12px
    fontWeight: 400
    lineHeight: 1.5
  label-md:
    fontFamily: satoshi
    fontSize: 16px
    fontWeight: 500
    lineHeight: 1.5
  label-sm:
    fontFamily: satoshi
    fontSize: 14px
    fontWeight: 500
    lineHeight: 1.5
  headline-display-mobile:
    fontFamily: satoshi
    fontSize: 32px
    fontWeight: 700
    lineHeight: 1.1
    letterSpacing: -0.04em
  headline-md-mobile:
    fontFamily: satoshi
    fontSize: 28px
    fontWeight: 700
    lineHeight: 1.1
    letterSpacing: -0.023em
rounded:
  sm: 12px
  md: 16px
  lg: 111px
spacing:
  xs: 2px
  sm: 8px
  md: 12px
  lg: 20px
  xl: 36px
  gutter: 8px
  section: 96px
  container: 1120px
components:
  button-primary:
    textColor: "{colors.on-surface-variant}"
    typography: "{typography.label-sm}"
    rounded: "{rounded.lg}"
    padding: 0px 12px
    height: 35px
  button-secondary:
    textColor: "{colors.on-surface-variant}"
    typography: "{typography.label-sm}"
    rounded: "{rounded.lg}"
    padding: 0px 12px
    height: 35px
  button-ghost:
    textColor: "{colors.secondary}"
    rounded: 80px
    padding: 2px 0px
  card:
    backgroundColor: "{colors.surface-container-low}"
    textColor: "{colors.on-primary}"
    typography: "{typography.body-md}"
    rounded: "{rounded.md}"
    padding: 0px
  link:
    textColor: "{colors.on-surface}"
---

# vidIQ Design System

## Overview

vidIQ describes itself as: “Unlock faster YouTube growth with vidIQ. AI keyword research, video SEO, thumbnails, and daily content ideas trusted by millions of creators. Free to start.” The interface is dark, built on **Cool Charcoal (#0A0D15)** with **Blue (#A2A7B8)** text, and **Vivid Blue (#2574F5)** as the main accent.

Type is set in **satoshi**. Headlines run large with tight negative tracking; body text is 16px. Depth comes from soft drop shadows. Corners are mostly 16px.

Measured from [vidiq.com](https://vidiq.com/) on October 30, 2026 at 1440×900 and 390×844 from 332 rendered elements. Values are computed styles from the live page, not the original source files.

## Colors

The palette has 14 roles, plus gradient stops #0463FD, #B8D5FF, #67A1FF, #3880F7.

- **Cool Charcoal (#0A0D15):** Page background, seen 5 times. Token `background`.
- **Blue (#A2A7B8):** Primary text and headings, seen 45 times. Token `on-surface`.
- **White (#FFFFFF):** Headings and emphasis, seen 30 times. Token `on-surface-strong`, CSS `--tw-ring-offset-color`.
- **Snow (#F7F7F7):** Secondary text, seen 20 times. Token `on-surface-variant`.
- **Gray (#9D9EA1):** Muted text and metadata, seen 18 times. Token `on-surface-muted`.
- **Cool Charcoal (#0D1017):** Raised areas one step from the page, seen 17 times. Token `surface-container-low`.
- **Cool Charcoal (#161922):** Cards and panels, seen 1 time. Token `surface-container`.
- **Cool Graphite (#2D2F39):** Hover and pressed fills, seen 1 time. Token `surface-container-high`.
- **Cool Graphite (#2D2F39):** Borders and dividers, seen 15 times. Token `outline`.
- **Cool Graphite (#1E212B):** Secondary dividers, seen 3 times. Token `outline-variant`.
- **Vivid Blue (#2574F5):** Brand color in the logo, seen 4 times. Token `primary`.
- **Near Black (#000000):** Text and icons on primary. Token `on-primary`.
- **Vivid Blue (#1863DC):** Accent in text, fills and borders, seen 2 times. Token `secondary`.
- **Vivid Red (#EA4335):** Accent, seen 4 times. Token `tertiary`.

## Typography

**satoshi** carries the whole interface. Fallback stack: `satoshi, satoshi Fallback`.

- **headline-display:** satoshi 60px at weight 700, line height 1.1, tracking -0.021em (32px on mobile). Page title (h1).
- **headline-lg:** satoshi 42px at weight 700, line height 1, tracking -0.04em. Section headings (h2).
- **headline-md:** satoshi 40px at weight 700, line height 1.1, tracking -0.016em (28px on mobile). Sub-section headings.
- **headline-sm:** satoshi 20px at weight 500, line height 1.25. Card and feature titles.
- **body-md:** satoshi 16px at weight 400, line height 1.5. Body text.
- **body-lg:** satoshi 18px at weight 700, line height 1.44. Lead paragraphs.
- **body-sm:** satoshi 14px at weight 400, line height 1.4. Secondary and small text.
- **caption:** satoshi 12px at weight 400, line height 1.5. Captions and fine print.
- **label-md:** satoshi 16px at weight 500, line height 1.5. Buttons, navigation and labels.
- **label-sm:** satoshi 14px at weight 500, line height 1.5. Small labels and badges.

## Layout

Spacing does not follow a strict grid: 66% of measured values are multiples of 4px, so match the measured steps rather than rounding to a grid.

- **Scale:** xs 2px, sm 8px, md 12px, lg 20px, xl 36px.
- **Sections:** 96px vertical padding between major sections.
- **Gaps:** 8px is the most common gap in flex and grid layouts.
- **Container:** content is capped at 1120px.
- **Breakpoints:** 320px, 361px, 374px, 420px, 475px, 541px, 640px, 769px, 770px, 1172px, 1280px, 1365px, 1536px, 1920px.

## Elevation & Depth

Raised elements use soft drop shadows. The most used recipes:

- `rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 28px 8px 0px, rgba(0, 0, 0, 0.01) 0px 18px 7px 0px, rgba(0, 0, 0, 0.02) 0px 10px 6px 0px, rgba(0, 0, 0, 0.05) 0px 4px 4px 0px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px`
- `rgba(232, 51, 171, 0.55) 0px 4px 14px -4px`

## Shapes

Most elements use 16px corners. Measured radii, most used first:

- **md (16px):** 64 elements.
- **lg (111px):** 52 elements.
- **sm (12px):** 32 elements.

## Components

Measured from the rendered page. Token values reference the tokens above.

- **button-primary (“Sign Up for Free”):** transparent fill, #F7F7F7 text, 14px/500, 111px radius, padding 0px 12px, shadow `rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 28px 8px 0px, rgba(0, 0, 0, 0.01) 0px 18px 7px 0px, rgba(0, 0, 0, 0.02) 0px 10px 6px 0px, rgba(0, 0, 0, 0.05) 0px 4px 4px 0px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px`.
- **button-secondary (“Sign In”):** transparent fill, #F7F7F7 text, 14px/500, 111px radius, padding 0px 12px, shadow `rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 28px 8px 0px, rgba(0, 0, 0, 0.01) 0px 18px 7px 0px, rgba(0, 0, 0, 0.02) 0px 10px 6px 0px, rgba(0, 0, 0, 0.05) 0px 4px 4px 0px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px`.
- **button-ghost (“Do Not Sell or Share My Personal”):** transparent fill, #1863DC text, 13px/500, 80px radius, padding 2px 0px.
- **card:** #0D1017 fill, #000000 text, 16px/400, 16px radius, padding 0px, border 1px solid #2D2F39.
- **link:** transparent fill, #A2A7B8 text, padding 0px.

## Do's and Don'ts

- Do use #0A0D15 for the page and lift surfaces in small steps: #0D1017, #161922, #2D2F39.
- Do keep text in 4 levels: #A2A7B8, #FFFFFF, #F7F7F7, #9D9EA1.
- Do use #2574F5 as the brand accent: header, logo and key highlights.
- Do set headlines in satoshi with tight tracking (-0.021em).
- Do reuse the measured spacing steps (8px, 12px, 20px).
- Do use 16px corners on most elements; larger surfaces also use 111px and 12px.
- Don't introduce new font families beyond satoshi.
- Don't use #2574F5 for large backgrounds or body text.
- Don't make interface transitions slower than 0.55s.

## Motion

Interface transitions are quick: 0.3s, 0.15s, 0.55s, 0.16s. Longer ambient animations run 6s, 3.6s, 0.7s.

- **Easing:** `cubic-bezier(0.4, 0, 0.2, 1)`, `cubic-bezier(0, 0, 0.2, 1)`, `ease-in-out`.
- **Reduced motion:** the page responds to `prefers-reduced-motion`.

Generated by [Sitepeel](https://sitepeel.dev/design-md/vidiq.com/), the free DESIGN.md generator (engine 2026.10.29+bf9d681d83cf).
