DESIGN.md · Analysis

Driftline

playground.codedesign.app · 23 Aug 2026 · 47 colors · Newsreader, Georgia, serif, Inter, system-ui, -apple-system, sans-serif

Driftline

A product feedback intelligence platform that transforms scattered customer insights into actionable product roadmaps. Driftline combines sophisticated data clustering with a refined, minimalist interface aesthetic.

Colors

surface#fafaf7
surface-dim#f2f2ec
surface-bright#ffffff
surface-container-lowest#ece4d0
surface-container-low#e6e5dd
surface-container#d9d8ce
surface-container-high#d9d1c2
surface-container-highest#26271f
on-surface#0e0f0c
on-surface-variant#6e6f66
inverse-surface#181818
inverse-on-surface#fffdf8
outline#9a9a8e
outline-variant#c4c3b8
surface-tint#5c33ff
primary#0e0f0c
on-primary#ffffff
primary-container#26271f
on-primary-container#fffdf8
inverse-primary#ffffff
secondary#5c33ff
on-secondary#ffffff
secondary-container#5b6ee8
on-secondary-container#ffffff
tertiary#69715c
on-tertiary#ffffff
tertiary-container#d9d1c2
on-tertiary-container#26271f
error#ff6b6b
on-error#ffffff
error-container#ffb4ab
on-error-container#0e0f0c
primary-fixed#26271f
primary-fixed-dim#181818
on-primary-fixed#fffdf8
on-primary-fixed-variant#6e6f66
secondary-fixed#5b6ee8
secondary-fixed-dim#4a5bc4
on-secondary-fixed#ffffff
on-secondary-fixed-variant#ffffff
tertiary-fixed#69715c
tertiary-fixed-dim#52594a
on-tertiary-fixed#ffffff
on-tertiary-fixed-variant#fffdf8
background#fafaf7
on-background#0e0f0c
surface-variant#e6e5dd

Typography

display
fontFamily: Newsreader, Georgia, serif · fontSize: 84px · fontWeight: 400 · lineHeight: 92px · letterSpacing: -0.02em
headline-lg
fontFamily: Newsreader, Georgia, serif · fontSize: 48px · fontWeight: 400 · lineHeight: 56px · letterSpacing: -0.015em
headline-md
fontFamily: Newsreader, Georgia, serif · fontSize: 32px · fontWeight: 400 · lineHeight: 40px · letterSpacing: -0.01em
title-lg
fontFamily: Inter, system-ui, -apple-system, sans-serif · fontSize: 20px · fontWeight: 600 · lineHeight: 28px · letterSpacing: 0em
body-lg
fontFamily: Inter, system-ui, -apple-system, sans-serif · fontSize: 18px · fontWeight: 400 · lineHeight: 28px · letterSpacing: 0em
body-md
fontFamily: Inter, system-ui, -apple-system, sans-serif · fontSize: 16px · fontWeight: 400 · lineHeight: 24px · letterSpacing: 0em
label-md
fontFamily: Inter, system-ui, -apple-system, sans-serif · fontSize: 14px · fontWeight: 500 · lineHeight: 20px · letterSpacing: 0.01em
label-sm
fontFamily: Inter, system-ui, -apple-system, sans-serif · fontSize: 12px · fontWeight: 500 · lineHeight: 16px · letterSpacing: 0.02em

Design guidance

Overview

Driftline is a product feedback intelligence platform that transforms scattered customer insights into actionable product roadmaps. The design system embodies a philosophy of "Refined Minimalism"—a marriage of sophisticated serif typography with clean, purposeful sans-serif UI elements. The aesthetic is deliberately understated and professional, avoiding visual noise while maintaining visual hierarchy through careful use of weight, scale, and a restrained accent color (deep purple #5c33ff). The brand personality is confident, data-driven, and human-centered: the interface speaks in clear, declarative language that respects the user's intelligence. The emotional response is one of clarity and control—users feel they have mastered their feedback chaos. Voice example: "Your roadmap stops being a guessing game."

Colors

The color system is anchored in a warm, off-white surface palette (#fafaf7 as primary surface, #ffffff for elevated cards) paired with a near-black text color (#0e0f0c) that provides 14.5:1 contrast for accessibility. The primary accent is a deep purple (#5c33ff, secondary #5b6ee8) used sparingly on CTAs, badges, and interactive states—this color signals actionability and brand presence without overwhelming the interface. A muted sage tertiary (#69715c) provides a secondary accent for status indicators and supporting elements. The surface stack progresses from #fafaf7 (base) through #e6e5dd (container) to #26271f (highest container), creating subtle depth without relying on shadows. Error states use a warm red (#ff6b6b) for feedback and warnings. All interactive elements transition via cub

Typography

The type system pairs a serif headline family (Newsreader, Georgia fallback) with a humanist sans-serif body family (Inter, system-ui fallback). Display and headline levels use the serif at weights 400–600, creating an editorial, trustworthy tone that differentiates product messaging from utilitarian UI. Body and label text use Inter at 400–600 weight, with letter-spacing ranging from 0em (body) to 0.02em (labels) to maintain readability at small sizes. The display level (84px, 400 weight, -0.02em tracking, 92px line-height) anchors hero sections with authority; headline-lg (48px, 400 weight) introduces major sections; body-md (16px, 400 weight, 24px line-height) serves as the default reading size. On small labels over busy table backgrounds, apply text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1)

Layout

The layout uses a 12-column grid with a max-width of 1280px, maintaining a fluid container that scales responsively. The primary gutter is 24px, applied consistently to section padding and component spacing. Hero sections use lg spacing (40px) for vertical rhythm between headline, subheading, and CTA group. Cards and containers use md spacing (24px) for internal padding, creating breathing room around content. The spacing scale (xs: 4px, sm: 12px, md: 24px, lg: 40px, xl: 64px) is used hierarchically: xs for icon-to-text gaps, sm for list item padding, md for card padding and section margins, lg for major section separation. Container max-widths range from 800–900px for narrow reading experiences (hero copy, testimonials) to 1280px for data-dense tables and product interfaces. White-space i

Elevation & Depth

Depth is conveyed through a restrained shadow system and subtle background color shifts rather than dramatic layering. Level 1 (Base): surface at #fafaf7 with no shadow. Level 2 (Standard Card): background #ffffff with box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15), border: 1px solid #e6e5dd. Level 3 (Elevated/Hover): same background with box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12), creating a subtle lift. Input fields and interactive elements use a 3px focus ring with rgba(92, 51, 255, 0.1) (10% opacity of the secondary accent) to signal focus state without jarring the user. Shadows are soft and sp

Shapes

The shape philosophy is "Soft-Technical"—rounded corners are applied with intention to soften the industrial nature of data tables and forms while maintaining a sense of precision. Buttons use 10px border-radius (md), creating a friendly but professional appearance. Cards use 14px (lg), slightly more generous to signal containment and importance. Input fields use 8px (DEFAULT), balancing approachability with clarity. The pill component (badges, status indicators) uses 999px (full) to create a capsule effect that draws attention to metadata. Table cells and list items use 0px (no rounding) to m

Components

Action Elements Buttons are the primary interaction pattern. The primary button (button-primary) uses #0e0f0c background with #ffffff text, 11px vertical / 18px horizontal padding, 44px height, and 10px border-radius. On hover, the background shifts to #26271f (primary-container) with a 150ms transition. The secondary button (button-secondary) uses a transparent background with a 1px border (#c4c3b8) and #0e0f0c text; on hover, it fills with #e6e5dd (surface-container-low). The ghost button (button-ghost) has no border or background fill, relying on text color (#0e0f0c) for visibility; hover state applies #f2f2ec background. All buttons use Inter, 14px, 500 weight, 20px line-height (label-md).

Containers & Surfaces Cards (card) are the primary container component: #ffffff backgrou

Do's and Don'ts

**Do**

  • Do use the serif (Newsreader) for headlines and display text to establish editorial authority and brand differentiation.
  • Do apply the secondary accent (#5c33ff) exclusively to CTAs, focus states, and high-priority interactive elements—never use it for decorative or background purposes.
  • Do maintain the 24px gutter consistently across all sections and components to create visual rhythm and predictability.
  • Do use the full shadow stack (md: 0 3px 8px, lg: 0 8px 24px) to create depth hierarchy; never use harsh or small-blur shadows.
  • Do apply 150ms cubic-bezier(0.4, 0, 0.2, 1) transitions to all interactive state changes (hover, focus, active) for responsive, snappy feedback.

**Don't**

  • Don't mix serif and sans-serif at the same hierarchy level—reserve serif for headlines, sans-serif for body and UI.
  • Don't use the secondary accent (#5c33ff) on backgrounds or large surface areas; it should appear as a focal point, not a canvas.
  • Don't apply border-radius > 14px to buttons or inputs; the soft-technical aesthetic requires restraint in rounding.
  • Don't use shadows with blur < 8px or spread < 0px; they appear harsh and break the refined, diffused light aesthetic.
  • Don't exceed 2 accent colors in a single interface; the system is built on restraint and clarity, not visual complexity.