Foundations/Colors

Color System

SwiftDS defines its palette in `DSColor`, with warm sand brand tones, adaptive light and dark surfaces, and semantic status colors. The values below match the package tokens directly.

Primary

DSColor.primary

Warm sand primary brand color

#C4A882

DSColor.primaryHover

Hover and pressed state for primary actions

#B09872

DSColor.primaryMuted

Soft tinted background for primary emphasis

#F5F0E8

DSColor.primaryFG

Foreground color placed on top of primary fills

#FFFFFF

Secondary

DSColor.secondary

Warm slate supporting neutral color

#6B6560

DSColor.secondaryHover

Hover state for secondary actions

#5A5450

DSColor.secondaryMuted

Muted background for secondary surfaces

#F1EDE8

Accent

DSColor.accent

Accent color in the same warm sand family

#C4A882

DSColor.accentMuted

Soft accent tint for subtle highlights

#F5F0E8

Backgrounds

DSColor.background

Default app background in light mode

#FAFAFA

DSColor.backgroundDark

Default app background in dark mode

#0E0E0C

DSColor.surface

Base card and sheet surface in light mode

#FFFFFF

DSColor.surfaceDark

Base card and sheet surface in dark mode

#161613

DSColor.surfaceElevated

Elevated surface in light mode

#FAFAF9

DSColor.surfaceElevatedDark

Elevated surface in dark mode

#1E1E1B

Border

DSColor.border

Default border in light mode

#E8E8E8

DSColor.borderDark

Default border in dark mode

#2C2B28

DSColor.borderSubtle

Subtle border in light mode

#F0F0F0

DSColor.borderSubtleDark

Subtle border in dark mode

#252420

Foreground

DSColor.foreground

Primary text in light mode

#1A1816

DSColor.foregroundDark

Primary text in dark mode

#F0EDE8

DSColor.muted

Muted text and supporting copy

#5A5650

DSColor.subtle

Subtle text, placeholders, and low-emphasis UI

#9A9690

Semantic

DSColor.success

Success and positive confirmation

#22C55E

DSColor.successMuted

Muted success background

#F0FDF4

DSColor.warning

Warning and attention states

#F59E0B

DSColor.warningMuted

Muted warning background

#FFFBEB

DSColor.error

Error and destructive states

#EF4444

DSColor.errorMuted

Muted error background

#FEF2F2

DSColor.info

Informational and neutral status color

#3B82F6

DSColor.infoMuted

Muted information background

#EFF6FF

Dark Mode

`DSColor.adaptive(light:dark:)` exposes package-level adaptive pairs when a component needs an explicit light and dark value. Many built-in components also resolve `background`, `surface`, `foreground`, and `border` variants internally from the active `ColorScheme`.

Example: `DSColor.background` is `#FAFAFA` in light mode, while `DSColor.backgroundDark` is `#0E0E0C` for dark mode surfaces.