Design System
Live reference driven by design-system/tokens.ts. Every entry is derived from the same token that controls the site.
Han Sun
name
name
class
.type-name
size var
--type-name-size: 20px
lh var
--type-name-lh: 1.25
color
text-foreground
description
Person name — largest text on the page
AI-friendly and Human-friendly applications of the AI operating system era.
name
title
class
.type-title
size var
--type-title-size: 16px
lh var
--type-title-lh: 1.25
color
text-foreground
description
Section title or project title
What I'm working on right now
name
label
class
.type-label
size var
--type-label-size: 14px
lh var
--type-label-lh: 1.5
color
text-muted-foreground
description
Section caption / status label
The complexity of space launch now is exceeding the capability of excel spreadsheet and manual operations.
name
body
class
.type-body
size var
--type-body-size: 14px
lh var
--type-body-lh: 1.5
color
text-muted-foreground
description
Paragraph body text
name
meta
class
.type-meta
size var
--type-meta-size: 13px
lh var
--type-meta-lh: 1.5
color
text-muted-foreground/70
description
Project metadata labels and values
name
background
cssVar
--background
value
oklch(1 0 0)
usage
bg-background
desc
Page and section background
name
muted
cssVar
--muted
value
oklch(0.97 0 0)
usage
bg-muted
desc
Placeholder fills, subtle surfaces
name
foreground
cssVar
--foreground
value
oklch(0.145 0 0)
usage
text-foreground
desc
Primary text, icons
name
muted-foreground
cssVar
--muted-foreground
value
oklch(0.556 0 0)
usage
text-muted-foreground
desc
Secondary text, captions, labels
name
border
cssVar
--border
value
oklch(0.922 0 0)
usage
bg-border
desc
Standard border color
name
separator
cssVar
foreground / 6%
value
rgba(foreground, 6%)
usage
bg-foreground/[0.06]
desc
Section divider lines
name
dot-border
cssVar
foreground / 30%
value
rgba(foreground,30%)
usage
bg-foreground/30
desc
Separator corner dots
name
accent-green
cssVar
#1db954
value
#1db954
usage
—
desc
Status indicator (Spotify green)
name
section-padding-x
cssVar
--space-section-x: 4rem (64px)
utility
.section-pad
description
Horizontal padding inside every section
name
section-padding-y
cssVar
--space-section-y: 4rem (64px)
utility
.section-pad
description
Vertical padding inside every section
name
text-col-width
cssVar
--space-text-col: 900px (900px)
utility
.prose-col
description
Max width for text content blocks — matches main area width
name
image-margin
cssVar
--space-image: 3rem (48px)
utility
.image-margin
description
Top & bottom margin around media
name
project-gap
cssVar
--space-project-gap: 3rem (48px)
utility
.project-gap
description
Gap between project cards
name
label-gap
cssVar
--space-label-gap: 2rem (32px)
utility
.label-gap
description
Section label → first content item
name
title-meta-gap
cssVar
--space-title-meta: 0.75rem (12px)
utility
.title-meta-gap
description
Project title → meta grid
name
meta-col-gap
cssVar
--space-meta-col: 2rem (32px)
utility
.gap-x-[var(--space-meta-col)]
description
MetaGrid label / value column gap
name
interactive
value
4px
usage
.rounded-[4px]
description
Buttons, inputs, nav items, tags
name
media
value
8px
usage
.rounded-[8px]
description
Images, cards, large placeholders
components/section-label.tsx
components/meta-grid.tsx
components/project-card.tsx
default
Full project detail — title, metadata, image, and description. Use for featured or standalone project entries.
image-only
Image + title only. Use in grid layouts (2-column) where density matters more than detail.
components/project-header.tsx
components/section.tsx
components/contact-buttons.tsx
app/page.tsx (inline)
components/nav-bar.tsx
components/theme-toggle.tsx
components/gallery-scroll.tsx
components/animated-lines.tsx
app/globals.css
app/globals.css
Section label text
B2B, Custom-Built

Space Launch Scheduling Management System
Space Launch Scheduling Management System
The complexity of space launch now is exceeding the capability of excel spreadsheet and manual operations.
Space Launch Scheduling Management System
Space Launch Scheduling Management System