Syncro
Syncro
DESIGN SYSTEMS
School Board Toolkit
School Board Toolkit
CIVIC DESIGN
BlueVoice Admin
BlueVoice Admin
BLUEVOICE ADMIN

Design Tokens

A single source of truth for all design decisions. These tokens power the entire system — from colors and typography to spacing and animation.

COLORSSemantic color tokens for bg, surface, text, and brand18
TYPOGRAPHYFont families, sizes, weights, and line heights12
SPACINGConsistent spacing scale from 4px to 96px10
ANIMATIONEasing curves, durations, and stagger delays8
EFFECTSShadows, blurs, and border radius values6
BREAKPOINTSResponsive breakpoints: sm, md, lg, xl, 2xl5
tokens.js
export const tokens = {
  colors: {
    light: {
      bg:           '#F6F3ED',
      surface:      '#EDE7DC',
      surface2:     '#E4DDD0',
      border:       '#C9BFB0',
      borderSubtle: '#DDD6C8',
      text:         '#141214',
      textMuted:    '#6B6456',
      textSubtle:   '#A09689',
      violet:       '#6564DB',
      violetLight:  '#A8A7ED',
      violetBg:     '#EEEEFF',
      violetDark:   '#4544B8',
      coral:        '#FE5F55',
      coralLight:   '#FFA09B',
      coralBg:      '#FFF0EF',
      red:          '#E71D36',
      success:      '#4A6741',
      warning:      '#C89A2E',
    },
    dark: {
      bg:           '#141214',
      surface:      '#1E1C1E',
      surface2:     '#252325',
      border:       '#2E2A2E',
      borderSubtle: '#3A353A',
      text:         '#F0EDE6',
      textMuted:    '#888088',
      textSubtle:   '#554F55',
      violet:       '#8584E8',
      violetLight:  '#6564DB',
      violetBg:     '#1E1C2E',
      coral:        '#FE5F55',
      red:          '#E71D36',
      success:      '#7A9E6F',
      warning:      '#C89A2E',
    },
  },
  typography: {
    families: {
      display: "'Gambarino', Georgia, serif",
      body:    "'Switzer', sans-serif",
      mono:    "'JetBrains Mono', monospace",
    },
    sizes: {
      xs:  '10px',
      sm:  '12px',
      base:'14px',
      md:  '16px',
      lg:  '20px',
      xl:  '24px',
      '2xl': '32px',
      '3xl': '48px',
    },
  },
  spacing: {
    1: '4px',  2: '8px',  3: '12px',
    4: '16px', 6: '24px', 8: '32px',
    12: '48px', 16: '64px',
    20: '80px', 24: '96px',
  },
  animation: {
    durations: { fast: '150ms', base: '300ms', slow: '600ms', slower: '700ms' },
    easing: {
      out:    'cubic-bezier(0.0, 0.0, 0.2, 1)',
      in:     'cubic-bezier(0.4, 0.0, 1, 1)',
      inOut:  'cubic-bezier(0.4, 0.0, 0.2, 1)',
      spring: 'cubic-bezier(0.34, 1.56, 0.64, 1)',
    },
    stagger: '100ms',
  },
  effects: {
    radii: { sm: '4px', md: '8px', lg: '12px', xl: '16px', full: '9999px' },
    shadows: {
      sm:  '0 1px 3px rgba(0,0,0,0.08)',
      md:  '0 4px 16px rgba(0,0,0,0.12)',
      lg:  '0 8px 32px rgba(0,0,0,0.16)',
      orb: '0 0 80px 20px rgba(101,100,219,0.35)',
    },
  },
  breakpoints: {
    sm: '640px', md: '768px', lg: '1024px',
    xl: '1280px', '2xl': '1440px',
  },
};

Typography

The type system behind Raga — three families working in harmony across display, body, and code.

Font Families

Gambarino

ABCDEFGHIJKLM
NOPQRSTUVWXYZ
abcdefghijklm
nopqrstuvwxyz
0123456789

Switzer

ABCDEFGHIJKLM
NOPQRSTUVWXYZ
abcdefghijklm
nopqrstuvwxyz
0123456789

JetBrains Mono

ABCDEFGHIJKLM
NOPQRSTUVWXYZ
abcdefghijklm
nopqrstuvwxyz
0123456789

Type Styles

Display

GAMBARINO · DISPLAY · TIGHT

Heading

GAMBARINO · 36PX · HEADING

Body text sample

SWITZER · 16PX · BODY · NORMAL

Small text

SWITZER · 14PX · BODY · MUTED

MONO CAPTION

JETBRAINS MONO · 11PX · CAPTION · WIDE

Size

Body text uses 16px+ with 1.5 line height for readability. Smaller sizes are for non-essential information.

Aa4XL60–128PX
Aa3XL40–72PX
Aa2XL32–48PX
AaXL24–30PX
AaL20PX
AaM16–17PX
AaS15PX
AaXS13PX
Aa2XS11PX

Weight

AaLight300
AaNormal400
AaMedium500
AaSemibold600
AaBold700

Text Color

All text colors meet WCAG 2.1 AA contrast requirements against their respective backgrounds.

HEXNAMECONTRASTUSAGE
#141214HEADING
16.1:1AAA
Titles, headings, emphasis
#6B6456BODY
6.4:1AA
Paragraphs, descriptions
#A09689CAPTION
3.5:1AA
Metadata, labels, timestamps

Colors

Semantic color tokens that adapt to light and dark mode — the full palette powering every surface, text, and accent in Raga.

Brand Palette

Coral is the primary accent in light mode. Violet takes over in dark mode.

#FE5F55

CORAL

PRIMARY (LIGHT)

#FFA09B

CORAL LIGHT

ACCENT

#8584E8

VIOLET

PRIMARY (DARK)

#6564DB

VIOLET DARK

ACCENT

System Colors

Functional UI colors — switch theme to see variants.

#F6F3ED

BACKGROUND

#EDE7DC

SURFACE

#C9BFB0

BORDER

#4A6741

SUCCESS

#C89A2E

WARNING

#E71D36

ERROR

Spacing

A consistent spatial scale rooted in multiples of 4px — from micro-details to full-section breathing room.

SCALETOKENSIZEVALUE
1spacing-1
4px
2spacing-2
8px
4spacing-4
16px
6spacing-6
24px
8spacing-8
32px
12spacing-12
48px
16spacing-16
64px

Iconography

Icons from Phosphor Icons — a flexible icon family with multiple weights for visual hierarchy.

Icon Library

@phosphor-icons/react ↗
PACKAGEICONSWEIGHTS USEDLICENSE
@phosphor-icons/react1,200+ available5 of 6MIT

Icon Weights

ICONWEIGHTUSAGEEXAMPLE
thinLarge decorative icons (40px+)Data viz accents
lightDecorative, subtle UI elementsCard icons, close buttons
regularDefault for all UINav, buttons, actions
boldSmall sizes, emphasisArrows at 10–12px
fillActive states, status indicatorsTheme toggle, badges

Site Icons

ArrowRight
ArrowUp
ArrowDown
ArrowUpRight
X
ListBullets
Search
ArrowsOut
CheckCircle
WarningCircle
Info
CircleNotch
Sparkle
Sun
Moon
ChatCircle
EnvelopeSimple
LinkedinLogo
Globe
LinkSimple

Containers

Three surface levels for grouping content — each maps to a real CSS token used across the portfolio.

var(--color-surface)

Surface Card

Used for work cards, about sections, and content blocks

var(--color-surface-2)

Surface-2 Card

Used for nested content, code blocks, token tables

transparent

Transparent + Border

Used for nav pills, available pill, see work pill, design system cards

Dividers

Structural lines that separate content zones without adding visual weight.

Horizontal

Hero / footer dividers

var(--color-border)

Horizontal Subtle

Token rows, spacing rows

var(--color-border-subtle)

Vertical

Design system sidebar

var(--color-border)