DESIGN.md · Analysis

P12 Apple Certificate

chungchip12.com · 20 Jun 2026 · 47 colors · Inter

P12 Apple Certificate

A professional Apple P12 certificate provisioning platform serving Vietnamese iOS developers. The design emphasizes trust, clarity, and technical precision through a clean, accessible interface with strategic use of Apple-inspired blues and professional grays.

Colors

surface#f5f5f7
surface-dim#ececf1
surface-bright#ffffff
surface-container-lowest#f8f8f8
surface-container-low#f0f0f0
surface-container#e8e8ed
surface-container-high#dcdce2
surface-container-highest#d0d0d8
on-surface#1d1d1f
on-surface-variant#86868b
inverse-surface#2a2a2e
inverse-on-surface#f5f5f7
outline#a0a0a5
outline-variant#c8c8cc
surface-tint#0077be
primary#0077be
on-primary#ffffff
primary-container#cce5ff
on-primary-container#001d3c
inverse-primary#4cc9f0
secondary#003697
on-secondary#ffffff
secondary-container#d6e3ff
on-secondary-container#001050
tertiary#4361ee
on-tertiary#ffffff
tertiary-container#e0e7ff
on-tertiary-container#0d1b7a
error#d32f2f
on-error#ffffff
error-container#ffcdd2
on-error-container#b71c1c
primary-fixed#cce5ff
primary-fixed-dim#99c7ff
on-primary-fixed#001d3c
on-primary-fixed-variant#004a8f
secondary-fixed#d6e3ff
secondary-fixed-dim#b8ceff
on-secondary-fixed#001050
on-secondary-fixed-variant#002168
tertiary-fixed#e0e7ff
tertiary-fixed-dim#c5ceff
on-tertiary-fixed#0d1b7a
on-tertiary-fixed-variant#2e4bb8
background#f5f5f7
on-background#1d1d1f
surface-variant#e8e8ed

Typography

display
fontFamily: Inter · fontSize: 60px · fontWeight: 700 · lineHeight: 68px · letterSpacing: -0.04em
headline-lg
fontFamily: Inter · fontSize: 40px · fontWeight: 600 · lineHeight: 48px · letterSpacing: -0.02em
headline-md
fontFamily: Inter · fontSize: 28px · fontWeight: 600 · lineHeight: 36px · letterSpacing: -0.01em
title-lg
fontFamily: Inter · fontSize: 20px · fontWeight: 600 · lineHeight: 28px · letterSpacing: 0em
body-lg
fontFamily: Inter · fontSize: 18px · fontWeight: 400 · lineHeight: 28px · letterSpacing: 0.02em
body-md
fontFamily: Inter · fontSize: 16px · fontWeight: 400 · lineHeight: 24px · letterSpacing: 0.01em
label-md
fontFamily: Inter · fontSize: 14px · fontWeight: 600 · lineHeight: 20px · letterSpacing: 0.01em
label-sm
fontFamily: Inter · fontSize: 12px · fontWeight: 500 · lineHeight: 16px · letterSpacing: 0.03em

Design guidance

Overview

P12 Apple Certificate is a professional provisioning platform designed for Vietnamese iOS developers seeking secure, reliable Apple certificate management. The brand serves a technically sophisticated audience requiring both clarity and trustworthiness in a high-stakes development workflow. The aesthetic is 'Technical Minimalism'—combining Apple's design language (clean typography, generous whitespace, precise color hierarchy) with professional service credibility. The interface evokes calm competence: users feel they're interacting with a system that understands their technical needs and respects their time. Voice: direct, knowledgeable, reassuring. Example: 'Your P12 certificate is ready for immediate use—no delays, full support 24/7.'

Colors

The color system centers on Apple-inspired blues as the primary accent, reinforcing trust and technical authority. Primary (#0077be) is deployed on all call-to-action buttons, critical links, and interactive focus states—it's the color users click to provision certificates or access support. Secondary (#003697) anchors the brand identity, used in logos, headers, and premium tier indicators. Tertiary (#4361ee) provides a supporting accent for secondary actions, badges, and informational highlights. The surface stack uses a light, neutral palette (surface #f5f5f7, surface-bright #ffffff, surface-dim #ececf1) that mirrors Apple's iOS design, ensuring legibility and reducing cognitive load. On-surface text (#1d1d1f) maintains high contrast (WCAG AAA) for accessibility. Error red (#d32f2f) is r

Typography

The type system uses Inter exclusively, a humanist sans-serif that balances technical precision with approachability—essential for a platform serving developers. Display (60px, 700 weight, -0.04em tracking) is reserved for hero headlines and major section breaks; it commands attention without aggression. Headline-lg (40px, 600 weight) anchors page sections and modal titles. Headline-md (28px, 600 weight) introduces subsections and card headers. Title-lg (20px, 600 weight) labels feature groups and form sections. Body-lg (18px, 400 weight, 0.02em tracking) is used for hero copy and prominent descriptions—the slightly increased letter-spacing (0.02em) improves scannability. Body-md (16px, 400 weight) is the default paragraph text, optimized for 1.5x line-height (24px) to ensure comfortable r

Layout

The layout uses a fixed 12-column grid with a max-width of 900px, centered on the viewport with 24px gutters on mobile and tablet. This constraint ensures text remains readable (optimal line length ~60–80 characters) and prevents the interface from feeling sparse on large displays. The spacing scale follows a 8px base unit: xs (4px) for micro-adjustments, sm (12px) for compact grouping, md (24px) for standard section separation, lg (40px) for major section breaks, and xl (64px) for hero-to-content transitions. Cards and containers use md (24px) padding internally; section margins use lg (40px) vertically. The container-max-width of 900px reflects the platform's focus on dense, information-rich layouts—pricing tables, certificate details, and support documentation all benefit from this cons

Elevation & Depth

Depth is conveyed through a restrained shadow system that mimics Apple's iOS design language. Level 1 (Base): no shadow; surface-bright (#ffffff) cards sit flush on surface (#f5f5f7) backgrounds. Level 2 (Standard Card): box-shadow: 0 4px 8px rgba(0,0,0,0.08); used for default cards, input fields, and inactive buttons. This subtle shadow (8px blur, 4px offset, 8% black opacity) creates just enough separation to indicate interactivity without visual heaviness. Level 3 (Elevated/Hover): box-shadow: 0 8px 16px rgba(0,0,0,0.12); applied on button hover, card hover, and modal overlays. The increase

Shapes

The shape philosophy is 'Precise Accessibility'—rounded corners are used judiciously to soften the technical aesthetic while maintaining clarity. Buttons and primary interactive elements use rounded.lg (1rem / 16px), creating a friendly, approachable feel without sacrificing professional appearance. Cards and containers use rounded.xl (1.5rem / 24px), a slightly more generous radius that echoes iOS app design and signals that these are content containers, not chrome. Input fields use rounded.DEFAULT (0.5rem / 8px), a subtle radius that indicates interactivity without drawing attention away fro

Components

Action Elements Buttons are the primary interaction mechanism. Button-primary uses primary (#0077be) background with white text, 48px height, 14px vertical padding, 24px horizontal padding, and rounded.lg (16px). On hover, the background shifts to #0056b3 (darker, more saturated) and the shadow elevates to 0 8px 16px rgba(0,0,0,0.12), signaling interactivity. On active/pressed, the background becomes #003d7a with no shadow change. Transitions use 200ms cubic-bezier(0.4, 0, 0.2, 1) for smooth, snappy feedback. Button-secondary uses surface-container-high (#dcdce2) background with on-surface text (#1d1d1f), a 1px outline-variant border, and the same padding/height as primary. On hover, the background shifts to surface-container-highest (#d0d0d8). Button-ghost is transparent with a 1px pr

Do's and Don'ts

**Do**

  • Do use primary (#0077be) exclusively for call-to-action buttons, critical links, and focus states—never dilute the primary color by overusing it on secondary elements.
  • Do maintain the 900px container max-width on desktop to ensure text remains readable and the interface feels intentional, not stretched.
  • Do apply the 8px spacing scale consistently: use md (24px) for card padding and section margins, lg (40px) for major breaks, ensuring visual rhythm feels predictable.
  • Do use Inter exclusively for all typography—never mix typefaces. The humanist sans-serif is essential to the brand's technical-yet-approachable voice.
  • Do apply elevation shadows (not color shifts) for depth: use elevation.sm for default cards, elevation.md for hover, elevation.lg for modals.
  • Do ensure all interactive elements have a minimum 44px touch target and visible focus states (border color shift + focus ring) for accessibility.

**Don't**

  • Don't use secondary (#003697) or tertiary (#4361ee) as primary CTA colors—they are supporting accents only. Primary (#0077be) is the only color for main actions.
  • Don't add gradients, textures, or blur effects to card backgrounds—the system relies on solid colors and shadows for clarity and performance.
  • Don't exceed the 900px container max-width; wider layouts dilute the visual hierarchy and make text harder to scan.
  • Don't use rounded corners smaller than rounded.DEFAULT (8px) on interactive elements; smaller radii feel harsh and reduce perceived affordance.
  • Don't apply text-shadow or drop-shadow to body text; use it only on small labels (12px or smaller) over busy backgrounds to maintain legibility.
  • Don't mix font weights arbitrarily—use 400 for body text, 500 for labels, 600 for headlines, 700 for display. Inconsistent weights create visual noise.