/* * ProPublica (propublica@1.0.0) * Palette: propublica@1.0.0 * Fonts: heading=playfair-display@1.0.0, body=lora@1.0.0, sans=inter@1.0.0, mono=jetbrainsmono-nerdfont@1.0.0 * Generated by brand-atoms converter — do not edit by hand. */ package com.brandatoms.propublica import androidx.compose.ui.graphics.Color /** Source-of-truth color swatches. */ object BrandSwatch { /** Warm Black — --p-color-warm-black — primary text and warm ink. */ val WarmBlack = Color(0xFF111110) /** Black — --p-color-black — absolute black; mark fills. */ val Black = Color(0xFF000000) /** Warm White — --p-color-warm-white — the warm cream canvas. */ val WarmWhite = Color(0xFFF2F1ED) /** White — --p-color-white — bright canvas alternate. */ val White = Color(0xFFFFFFFF) /** Investigative Red — ProPublica promo red — the CTA and emphasis color. */ val InvestigativeRed = Color(0xFFD92D03) /** Investigative Red Deep — Pressed / active variant of investigative red. */ val InvestigativeRedDeep = Color(0xFFA00000) /** Theme Blue — Deep slate-blue theme accent from the propublica-2026 theme. */ val ThemeBlue = Color(0xFF304154) /** Gray Warm — Warm gray secondary text. */ val GrayWarm = Color(0xFF5A5A5A) /** Gray Medium — Medium gray tertiary text and meta. */ val GrayMedium = Color(0xFF727272) /** Gray Quiet — Quiet gray for disabled / meta. */ val GrayQuiet = Color(0xFF979797) /** Gray Border — Heavier border weight. */ val GrayBorder = Color(0xFFC7C7C7) /** Gray Divider — Quiet rule weight. */ val GrayDivider = Color(0xFFDFDFDF) /** Gray Tint — Quiet surface tint. */ val GrayTint = Color(0xFFEBEBEB) } /** Semantic color roles for light mode. */ object BrandLight { val Background = BrandSwatch.WarmWhite val Surface = BrandSwatch.GrayTint val SurfaceElevated = BrandSwatch.White val TextPrimary = BrandSwatch.WarmBlack val TextSecondary = BrandSwatch.GrayWarm val TextTertiary = BrandSwatch.GrayMedium val Primary = BrandSwatch.InvestigativeRed val PrimaryHover = BrandSwatch.InvestigativeRedDeep val Accent = BrandSwatch.InvestigativeRed val AccentHover = BrandSwatch.InvestigativeRedDeep val Error = BrandSwatch.InvestigativeRedDeep val Border = BrandSwatch.GrayDivider } /** Semantic color roles for dark mode. */ object BrandDark { val Background = BrandSwatch.WarmBlack val Surface = BrandSwatch.ThemeBlue val SurfaceElevated = BrandSwatch.GrayWarm val TextPrimary = BrandSwatch.WarmWhite val TextSecondary = BrandSwatch.GrayDivider val TextTertiary = BrandSwatch.GrayBorder val Primary = BrandSwatch.InvestigativeRed val PrimaryHover = BrandSwatch.InvestigativeRedDeep val Accent = BrandSwatch.InvestigativeRed val AccentHover = BrandSwatch.InvestigativeRedDeep val Error = BrandSwatch.InvestigativeRed val Border = BrandSwatch.GrayWarm } /** Brand-level color role overrides. */ object BrandColor { val Identity = BrandSwatch.WarmWhite val OnIdentity = BrandSwatch.WarmBlack val Primary = BrandSwatch.InvestigativeRed val PrimaryHover = BrandSwatch.InvestigativeRedDeep val Accent = BrandSwatch.InvestigativeRed val AccentHover = BrandSwatch.InvestigativeRedDeep val Mark = BrandSwatch.WarmBlack val Error = BrandSwatch.InvestigativeRedDeep val TextPrimaryLight = BrandSwatch.WarmBlack val TextPrimaryDark = BrandSwatch.WarmWhite val BackgroundLight = BrandSwatch.WarmWhite val BackgroundDark = BrandSwatch.WarmBlack val SurfaceLight = BrandSwatch.GrayTint val SurfaceDark = BrandSwatch.ThemeBlue val TextSecondaryLight = BrandSwatch.GrayWarm val TextTertiaryLight = BrandSwatch.GrayMedium val BorderLight = BrandSwatch.GrayDivider } /** Typography family names by brand role. */ object BrandFont { /** Playfair Display (playfair-display@1.0.0) */ const val Heading = "Playfair Display" /** Lora (lora@1.0.0) */ const val Body = "Lora" /** Inter (inter@1.0.0) */ const val Sans = "Inter" /** JetBrainsMono Nerd Font (jetbrainsmono-nerdfont@1.0.0) */ const val Mono = "JetBrainsMono Nerd Font" }