Stytch DESIGN.md

Brands

Authentication and identity platform with a clean enterprise aesthetic — deep navy, electric purple accents, and security-first UI patterns.

Raw DESIGN.md

At a glance

Group
Brands
Main color
#6347a0Purple design systems
Fonts
InterJetBrains Mono

Colors in this file

  • #7b5ea7

    background

  • #e5e7eb

    Unnamed

  • #ffffff

    background

  • #111827

    Unnamed

  • #6347a0

    Unnamed

  • #1b1f3b

    Unnamed

  • #22c55e

    Unnamed

  • #f3f0f9

    Unnamed

  • #4f87f7

    Unnamed

  • #252a4b

    Unnamed

Authentication and identity platform with a clean enterprise aesthetic — deep navy, electric purple accents, and security-first UI patterns.

1. Visual Theme & Atmosphere

Stytch communicates trust, security, and developer confidence. The palette is anchored in deep navy with electric purple-blue accents — authoritative without being cold. UI is clean and conversion-optimized: authentication flows are frictionless, developer documentation is scannable, and every component signals reliability. The aesthetic bridges the gap between enterprise security and modern developer experience.

2. Color Palette & Roles

TokenHexRole
--color-primary#7B5EA7Brand purple, CTAs
--color-primary-dark#6347A0Hover/active primary
--color-primary-light#F3F0F9Light backgrounds, badges
--color-accent#4F87F7Links, secondary highlights
--color-navy#1B1F3BDeep navy, dark surfaces
--color-navy-light#252A4BElevated dark panels
--color-success#22C55EAuth success, verified
--color-error#EF4444Auth failure, invalid
--color-warning#F59E0BRate limits, caution
--color-neutral-900#111827Headings, primary text
--color-neutral-600#4B5563Body text
--color-neutral-400#9CA3AFSecondary labels
--color-neutral-200#E5E7EBBorders, dividers
--color-neutral-50#F9FAFBPage backgrounds
--color-white#FFFFFFCard surfaces

3. Typography Rules

css--font-sans: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
--font-mono: 'JetBrains Mono', 'Fira Code', monospace;
--font-size-xs: 12px;
--font-size-sm: 13px;
--font-size-base: 15px;
--font-size-md: 17px;
--font-size-lg: 21px;
--font-size-xl: 28px;
--font-size-2xl: 36px;
--font-weight-regular: 400;
--font-weight-medium: 500;
--font-weight-semibold: 600;
--font-weight-bold: 700;
--line-height-tight: 1.25;
--line-height-base: 1.5;
ElementSizeWeightLine Height
Hero Title36px7001.2
Page Title28px7001.25
Section Header21px6001.3
Card Title17px6001.4
Body15px4001.5
Label / Meta13px5001.4
Code / Mono13px4001.5
Caption12px4001.4

4. Component Stylings

css/* Primary Button */
.button-primary {
  background: #7B5EA7;
  color: #FFFFFF;
  border: none;
  border-radius: 8px;
  padding: 10px 20px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s ease;
}
.button-primary:hover { background: #6347A0; }

/* Auth Form Container */
.auth-container {
  background: #FFFFFF;
  border: 1px solid #E5E7EB;
  border-radius: 12px;
  padding: 32px;
  max-width: 420px;
  width: 100%;
  box-shadow: 0 4px 24px rgba(0,0,0,0.08);
}

/* Magic Link / OTP Input */
.otp-input {
  width: 48px;
  height: 56px;
  border: 2px solid #E5E7EB;
  border-radius: 8px;
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  color: #111827;
  transition: border-color 0.15s;
}
.otp-input:focus {
  outline: none;
  border-color: #7B5EA7;
  box-shadow: 0 0 0 3px rgba(123,94,167,0.15);
}

/* Provider Button (SSO / OAuth) */
.button-provider {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  background: #FFFFFF;
  border: 1.5px solid #E5E7EB;
  border-radius: 8px;
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 500;
  color: #111827;
  cursor: pointer;
  transition: border-color 0.15s, box-shadow 0.15s;
}
.button-provider:hover {
  border-color: #7B5EA7;
  box-shadow: 0 2px 8px rgba(123,94,167,0.12);
}

/* Input */
.input {
  border: 1.5px solid #E5E7EB;
  border-radius: 8px;
  padding: 10px 14px;
  font-size: 15px;
  font-family: var(--font-sans);
  color: #111827;
  background: #FFFFFF;
  width: 100%;
  transition: border-color 0.15s;
}
.input:focus {
  outline: none;
  border-color: #7B5EA7;
  box-shadow: 0 0 0 3px rgba(123,94,167,0.15);
}

/* Security Badge */
.security-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 100px;
  font-size: 12px;
  font-weight: 600;
  background: rgba(34,197,94,0.1);
  color: #16A34A;
  border: 1px solid rgba(34,197,94,0.2);
}

5. Layout Principles

TokenValueUsage
--spacing-xs4pxIcon gaps
--spacing-sm8pxInline padding
--spacing-md16pxInput field spacing
--spacing-lg24pxForm sections
--spacing-xl32pxCard padding
--spacing-2xl48pxPage sections
--auth-max-width420pxMax width for auth forms
--radius-sm6pxBadges, chips
--radius-md8pxButtons, inputs
--radius-lg12pxAuth containers, cards

6. Depth & Elevation

css.shadow-form { box-shadow: 0 4px 24px rgba(0,0,0,0.08); }
.shadow-card { box-shadow: 0 2px 12px rgba(0,0,0,0.06); }
.shadow-modal { box-shadow: 0 16px 48px rgba(0,0,0,0.14); }
.shadow-provider-hover { box-shadow: 0 2px 8px rgba(123,94,167,0.12); }

7. Do's and Don'ts

Do:

  • Keep auth flows to a single focused element per screen
  • Show progress indicators in multi-step auth flows
  • Use green success states immediately after verified actions
  • Provide clear error messages with actionable recovery steps
  • Use provider brand logos at the correct aspect ratios in OAuth buttons

Don't:

  • Don't ask for more information than necessary in auth flows
  • Don't use generic "Something went wrong" errors — always specify the issue
  • Don't use red for anything other than actual auth failure states
  • Don't put navigation or marketing content near auth forms

8. Responsive Behavior

BreakpointMin WidthBehavior
Mobile320pxAuth form full-width, centered vertically
Tablet768pxAuth form centered with padding, max 420px
Desktop1024pxSplit-screen: brand/marketing left, auth form right
Wide1440pxSame as desktop with expanded marketing panel

9. Agent Prompt Guide

You are designing for Stytch — an authentication and identity platform.
Primary brand color is purple (#7B5EA7) on white cards and forms.
Deep navy (#1B1F3B) is used for dark surfaces and hero backgrounds.
Auth forms are centered, max 420px wide, white cards with subtle shadow and border radius 12px.
OTP/magic inputs use large bold numbers with purple focus rings.
Provider OAuth buttons are white with thin borders, using brand logos at left.
Security and success states use green (#22C55E) badge-style indicators.
Tone is trustworthy, conversion-focused, and security-forward.

Use it with your agent

Save the file as DESIGN.md in your project root, then ask your agent to follow it for UI work. Or let the agent fetch it over MCP.

Download

curl -o DESIGN.md https://www.uiskillbook.com/design-md/stytch.md

MCP server

https://www.uiskillbook.com/mcp

MCP tool call

get_design_md({ "slug": "stytch" })