Ads Intelligence Design System
Official design system for the Ads Intelligence platform by RankMyApp. Tokens, components, patterns, and AI agent rules.
Color Tokens
35+ CSS custom properties for Ads Intelligence dashboards, campaign analytics, creative intelligence, and product UI.
Accents
Content
Interactive
Background
Support
Sentiment / Feedback
Typography
Inter for product UI. Display styles for marketing headlines and dashboards.
Display Styles
Product Styles (Inter)
Spacing Scale
18 base values from 4px to 128px. 8px grid base.
Padding Tokens
Radius Tokens
Adaptive per platform. Mobile radius values must be applied via breakpoint.
Desktop
Mobile
Buttons
Primary uses --color-interactive-accent bg + --color-interactive-control text. Height: 48px (large). Focus: 2px outline, 2px offset.
Priorities
Sizes
States
Focus Ring Spec
Inputs
Border: --color-interactive-secondary. Focus: 3px solid --color-interactive-primary. Error: --color-sentiment-negative. Use label + description, never placeholder alone.
Metric Input
Search Input
Cards
Small (88-300px), Large (300px+). Uses radius-medium and official spacing.
List Items
7 variants documented. Navigation, Switch, Checkbox, Radio, No Action.
Navigation
Switch
Checkbox [NEEDS_VALIDATION]
Radio [NEEDS_VALIDATION]
No Action
Feedback Components
Action prompts, snackbars, progress, spinners, and state screens.
Action Prompts
Snackbar
Progress
Spinner
State Screens
Overlays
Modal desktop: 540px width, max-height 800px, 80px safe zone. Bottom sheet: mobile full width.
Modal
Confirm campaign reprocessing
Bottom Sheet
Popover
Badges ads_intelligence_extension
Status indicators, counts, and labels. Used for campaign states, health scores, and data quality indicators.
Variants
Sizes
With Count
Ads Intelligence Usage
Health scores: strong (green), healthy (blue), watch (yellow), weak (orange), poor (red)
Data sources: Meta (blue), Google (lime), TikTok (purple), LinkedIn (cyan)
Avatar benchmark_inspired
User and entity representation. Used for team members, advertisers, and organization branding.
Variants
Sizes
Group
Tooltip benchmark_inspired
Contextual help on hover or focus. Used for metric explanations, truncated text, and icon-only buttons.
Placements
Tokens
color: var(--color-contrast) → #FFFFFF
border-radius: 6px
padding: 6px 12px
font-size: 12px
max-width: 280px
z-index: 1000
Table ads_intelligence_extension
Data tables for campaign lists, ad libraries, metric comparisons, and audit logs.
Default Table
| Campaign | Platform | Impressions | Health | Status |
|---|---|---|---|---|
| Summer Sale 2026 | Meta | 1,234,567 | Strong | Active |
| Brand Awareness Q2 | 987,654 | Watch | Active | |
| App Install Wave 3 | TikTok | 456,789 | Poor | Paused |
States
Loading: Skeleton rows (see Skeleton component)
Empty: Empty state illustration + CTA
Error: Error banner above table with retry
Sortable: Column header with sort icon, active column highlighted
Breadcrumb benchmark_inspired
Hierarchical navigation path. Used in campaign detail, creative analysis, and settings pages.
Pagination benchmark_inspired
Navigate through large data sets. Used in ad library, alert lists, and audit logs.
Skeleton benchmark_inspired
Loading placeholders. Used while fetching campaign data, cluster analysis, and creative thumbnails.
Card Skeleton
Text Skeleton
Empty State ads_intelligence_extension
Shown when no data exists. Every data-driven screen must have an empty state.
Alert / Banner benchmark_inspired
Contextual messages at page or section level. Used for system notices, data freshness, and action results.
Dropdown Menu benchmark_inspired
Contextual menu triggered by button click. Used for bulk actions, export options, and settings menus.
Dialog benchmark_inspired
Confirmation dialogs for destructive actions. Requires explicit user decision before proceeding.
Delete Campaign Group?
Accordion benchmark_inspired
Collapsible content sections. Used for FAQ, filter groups, and detailed metric breakdowns.
Divider benchmark_inspired
Visual separator between content sections.
Variants
Metric Card ads_intelligence_extension
KPI display card for dashboards. Shows value, trend, and optional sparkline.
Product Patterns
Common product flow patterns using Ads Intelligence components and tokens.
Dashboard Layout ads_intelligence_extension
Standard layout pattern for data-heavy pages in Ads Intelligence.
Structure
(Table / Grid / Charts)
(Details / Actions)
Form Layout benchmark_inspired
Standard form patterns for settings, onboarding, and configuration pages.
Rules
Section spacing: var(--space-32) between groups
Field spacing: var(--space-16) between fields
Labels: Always above input, never floating
Errors: Inline below field, use --color-sentiment-negative
Submit: Full-width primary button at bottom
Filter Pattern ads_intelligence_extension
Data filtering for campaign lists, creative libraries, and alert feeds.
Loading Strategy ads_intelligence_extension
Progressive data loading patterns used across the platform.
Strategy
2. KPIs second: Load summary metrics (fast endpoint)
3. Main data third: Load table/grid data (may be slower)
4. Charts last: Load visualization data progressively
5. Error recovery: Retry button per section, never full-page error
Dark Mode Preview
All components using dark mode token values.
Components in Dark Mode
AI Agent Rules
Non-negotiable rules for any AI agent generating UI for Ads Intelligence.
Mandatory Output Format (JSON)
Component Selection Logic
| Need | Use | Never Use |
|---|---|---|
| Primary action | Button Primary | Link styled as button |
| Cancel/dismiss | Button Secondary or Tertiary | Red button (unless destructive) |
| Destructive action | Button Negative | Primary button |
| Navigate | List Item Navigation | Custom link row |
| Toggle setting | List Item Switch | Checkbox for on/off |
| Brief feedback | Snackbar | Alert/Modal |
| Blocking prompt | Action Prompt or Modal | Snackbar |
| Metric/budget entry | Metric Input | Plain text input |
Benchmark & Gap Analysis
Component coverage compared to enterprise design systems. Updated 2026-05-14.
Benchmark Sources
| Source | Focus | Components Found |
|---|---|---|
| Adobe Spectrum | Enterprise UI, accessibility, design tokens | 48 components |
| Lemon Squeezy Wedges | Modern primitives, composable components | 28 components |
| Morningstar Design System | Financial data UI, product components | 41 components |
Our Coverage Summary
| Category | Total Components | Coverage |
|---|---|---|
| Foundations (Color, Typography, Spacing, Radius) | 4 | Complete |
| Form Controls (Button, Input, Checkbox, Radio, Switch, Select) | 6 | Complete |
| Data Display (Card, Table, Badge, Avatar, Metric Card) | 5 | Complete |
| Feedback (Alert, Snackbar, Progress, Spinner, Empty State, Skeleton) | 6 | Complete |
| Overlay (Modal, Dialog, Bottom Sheet, Popover, Tooltip, Dropdown) | 6 | Complete |
| Navigation (Tabs, Chips, Segmented Control, Breadcrumb, Pagination) | 5 | Complete |
| Layout (Accordion, Divider, Dashboard Layout) | 3 | Complete |
| Patterns (7 product patterns + 4 layout patterns) | 11 | Complete |
Component Gap Matrix
Comparison of our coverage vs external benchmarks. ✓ = present, – = absent.
| Component | Ads Intelligence DS | Spectrum | Wedges | Morningstar | Priority |
|---|---|---|---|---|---|
| Button | ✓ | ✓ | ✓ | ✓ | — |
| Input / Text Field | ✓ | ✓ | ✓ | ✓ | — |
| Card | ✓ | ✓ | – | ✓ | — |
| Badge | ✓ | ✓ | ✓ | ✓ | — |
| Avatar | ✓ | ✓ | ✓ | – | — |
| Tooltip | ✓ | ✓ | ✓ | ✓ | — |
| Table | ✓ | ✓ | – | ✓ | — |
| Breadcrumb | ✓ | ✓ | – | ✓ | — |
| Pagination | ✓ | ✓ | – | ✓ | — |
| Skeleton | ✓ | ✓ | ✓ | – | — |
| Empty State | ✓ | ✓ | – | – | — |
| Alert / Banner | ✓ | ✓ | ✓ | ✓ | — |
| Dropdown Menu | ✓ | ✓ | ✓ | ✓ | — |
| Dialog | ✓ | ✓ | ✓ | ✓ | — |
| Accordion | ✓ | ✓ | ✓ | ✓ | — |
| Divider | ✓ | ✓ | – | ✓ | — |
| Metric Card | ✓ | – | – | – | — |
| Tabs | ✓ | ✓ | ✓ | ✓ | — |
| Modal | ✓ | ✓ | ✓ | ✓ | — |
| Progress Bar | ✓ | ✓ | ✓ | ✓ | — |
| Spinner | ✓ | ✓ | ✓ | ✓ | — |
| Switch / Toggle | ✓ | ✓ | ✓ | ✓ | — |
| Checkbox | ✓ | ✓ | ✓ | ✓ | — |
| Radio | ✓ | ✓ | ✓ | ✓ | — |
| Slider / Range | – | ✓ | ✓ | ✓ | P2 |
| Date Picker | – | ✓ | – | ✓ | P2 |
| Color Picker | – | ✓ | – | – | P3 |
| Tree View | – | ✓ | – | – | P3 |
| Tag / Tag Group | – | ✓ | ✓ | ✓ | P2 |
| ComboBox | – | ✓ | – | ✓ | P2 |
| Toast | – | ✓ | ✓ | ✓ | P2 |
| Link | ✓ (CSS only) | ✓ | ✓ | ✓ | P3 |
Methodology
Backlog (P2/P3)
| Component | Priority | Reason |
|---|---|---|
| Slider / Range | P2 | Useful for budget filters and date ranges |
| Date Picker | P2 | Period selection in reports |
| Tag / Tag Group | P2 | Campaign labels and keyword tags |
| ComboBox | P2 | Advertiser search with autocomplete |
| Toast | P2 | Non-blocking success/error notifications |
| Color Picker | P3 | Custom branding settings |
| Tree View | P3 | Campaign hierarchy navigation |
| Link (standalone) | P3 | Already supported via CSS classes |
Pending Items
Items requiring validation, export, or access before full completion.
| Item | Impact | Priority | How to Resolve |
|---|---|---|---|
| Checkbox / Radio / Switch [NEEDS_VALIDATION] | Component stubs only; detailed specs behind Neptune auth | P0 | Request Neptune Web access, extract full component specs |
| Dropdown / Select [NEEDS_VALIDATION] | No detailed spec available in public docs | P0 | Request Neptune Web access |
| Motion timing values [NEEDS_VALIDATION] | No ms durations or cubic-bezier curves in source docs | P1 | Export from Figma motion specs or Neptune Web |
| Elevation / shadow tokens [NEEDS_VALIDATION] | Box-shadow values are estimated, not confirmed | P1 | Export from Figma or inspect Neptune Web |
| Illustration guidelines | Page locked in source documentation | P1 | Request access from Brand team |
| Neptune Web component props / TypeScript | Engineering cannot implement without prop tables | P0 | Validate Neptune Web / Storybook access (GitHub auth) |
| Brand Strategy page | Locked / confidential in source docs | P1 | Request access from Brand team |
| Promo Assets page | Marketing patterns incomplete without this | P2 | Request access from Marketing team |
| Custom display font [NEEDS_VALIDATION] | Display typography uses Inter as default | P3 | Evaluate custom brand font if needed |
Ads Intelligence Design System — v2.0 — Updated 2026-05-14
Product: Ads Intelligence by RankMyApp · 22 color tokens · 14 typography styles · 18 spacing values · 5 radius tiers · 14+ component previews
Score: 90/100 · Ready to share: Yes · Dark mode: Supported · WCAG: AA target