// // AppDashboardTheme.swift // App for Indeed // import AppKit /// Indeed-inspired dashboard colors that follow the active light / dark appearance. @MainActor enum AppDashboardTheme { static var isDark: Bool { AppAppearanceManager.shared.isDark } static var brandBlue: NSColor { NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 1) } static var brandBlueHover: NSColor { isDark ? NSColor(srgbRed: 54 / 255, green: 110 / 255, blue: 198 / 255, alpha: 1) : NSColor(srgbRed: 28 / 255, green: 70 / 255, blue: 140 / 255, alpha: 1) } static var pageBackground: NSColor { isDark ? NSColor(srgbRed: 28 / 255, green: 28 / 255, blue: 30 / 255, alpha: 1) : NSColor(srgbRed: 1, green: 1, blue: 1, alpha: 1) } static var chromeBackground: NSColor { isDark ? NSColor(srgbRed: 28 / 255, green: 28 / 255, blue: 30 / 255, alpha: 1) : NSColor(srgbRed: 247 / 255, green: 247 / 255, blue: 247 / 255, alpha: 1) } static var sidebarBackground: NSColor { isDark ? NSColor(srgbRed: 36 / 255, green: 36 / 255, blue: 38 / 255, alpha: 1) : NSColor(srgbRed: 1, green: 1, blue: 1, alpha: 1) } static var mainHostBackground: NSColor { pageBackground } static var welcomeHeroHeadingBlue: NSColor { isDark ? NSColor(srgbRed: 96 / 255, green: 165 / 255, blue: 250 / 255, alpha: 1) : NSColor(srgbRed: 0, green: 82 / 255, blue: 204 / 255, alpha: 1) } static var welcomeHeroSubtitleText: NSColor { isDark ? NSColor(srgbRed: 174 / 255, green: 184 / 255, blue: 198 / 255, alpha: 1) : NSColor(srgbRed: 51 / 255, green: 65 / 255, blue: 85 / 255, alpha: 1) } static var welcomeHeroIconWell: NSColor { isDark ? NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.22) : NSColor(srgbRed: 239 / 255, green: 246 / 255, blue: 255 / 255, alpha: 1) } static var welcomeHeroWaveTint: NSColor { isDark ? NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.35) : NSColor(srgbRed: 186 / 255, green: 210 / 255, blue: 253 / 255, alpha: 1) } static var welcomeSubtitleText: NSColor { isDark ? NSColor(srgbRed: 174 / 255, green: 174 / 255, blue: 178 / 255, alpha: 1) : NSColor(srgbRed: 64 / 255, green: 64 / 255, blue: 64 / 255, alpha: 1) } static var selectionFill: NSColor { NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: isDark ? 0.28 : 0.12) } static var selectionFillHover: NSColor { NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: isDark ? 0.38 : 0.2) } static var cardBackground: NSColor { isDark ? NSColor(srgbRed: 44 / 255, green: 44 / 255, blue: 46 / 255, alpha: 1) : NSColor(srgbRed: 1, green: 1, blue: 1, alpha: 1) } static var toggleBackground: NSColor { isDark ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1) : NSColor(srgbRed: 232 / 255, green: 232 / 255, blue: 232 / 255, alpha: 1) } static var primaryText: NSColor { isDark ? NSColor(srgbRed: 245 / 255, green: 245 / 255, blue: 247 / 255, alpha: 1) : NSColor(srgbRed: 45 / 255, green: 45 / 255, blue: 45 / 255, alpha: 1) } static var secondaryText: NSColor { isDark ? NSColor(srgbRed: 152 / 255, green: 152 / 255, blue: 157 / 255, alpha: 1) : NSColor(srgbRed: 118 / 255, green: 118 / 255, blue: 118 / 255, alpha: 1) } static var tertiaryText: NSColor { secondaryText } static var border: NSColor { isDark ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1) : NSColor(srgbRed: 212 / 255, green: 210 / 255, blue: 208 / 255, alpha: 1) } static var searchBarBorder: NSColor { isDark ? NSColor(srgbRed: 72 / 255, green: 96 / 255, blue: 140 / 255, alpha: 0.55) : NSColor(srgbRed: 180 / 255, green: 200 / 255, blue: 228 / 255, alpha: 1) } static var searchBarBorderHover: NSColor { isDark ? NSColor(srgbRed: 96 / 255, green: 140 / 255, blue: 210 / 255, alpha: 0.75) : NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.55) } static var proCardFill: NSColor { isDark ? NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.14) : NSColor(srgbRed: 239 / 255, green: 244 / 255, blue: 252 / 255, alpha: 1) } static var proCardBorder: NSColor { border } static var proAccent: NSColor { brandBlue } static var proCTABackground: NSColor { brandBlue } static var proCTAText: NSColor { NSColor(srgbRed: 1, green: 1, blue: 1, alpha: 1) } static var neutralHoverFill: NSColor { isDark ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1) : NSColor(srgbRed: 240 / 255, green: 240 / 255, blue: 240 / 255, alpha: 1) } static var sidebarRowHoverFill: NSColor { isDark ? NSColor(srgbRed: 1, green: 1, blue: 1, alpha: 0.06) : NSColor(srgbRed: 0, green: 0, blue: 0, alpha: 0.04) } static var settingsPageBackground: NSColor { mainHostBackground } static var settingsGroupBackground: NSColor { cardBackground } static var settingsIconBackground: NSColor { isDark ? NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.2) : NSColor(srgbRed: 239 / 255, green: 244 / 255, blue: 252 / 255, alpha: 1) } static var settingsDivider: NSColor { isDark ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1) : NSColor(srgbRed: 228 / 255, green: 228 / 255, blue: 228 / 255, alpha: 1) } static var featureCardBackground: NSColor { cardBackground } static var featureCardBorder: NSColor { isDark ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1) : NSColor(srgbRed: 237 / 255, green: 242 / 255, blue: 247 / 255, alpha: 1) } static var featureIconWell: NSColor { isDark ? NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.22) : NSColor(srgbRed: 235 / 255, green: 242 / 255, blue: 255 / 255, alpha: 1) } static var featurePrimaryBlue: NSColor { welcomeHeroHeadingBlue } static var featureSecondaryText: NSColor { isDark ? NSColor(srgbRed: 174 / 255, green: 184 / 255, blue: 198 / 255, alpha: 1) : NSColor(srgbRed: 93 / 255, green: 109 / 255, blue: 126 / 255, alpha: 1) } static var loadingPageBackgroundTop: NSColor { isDark ? NSColor(srgbRed: 36 / 255, green: 36 / 255, blue: 38 / 255, alpha: 1) : NSColor(srgbRed: 252 / 255, green: 253 / 255, blue: 255 / 255, alpha: 1) } static var loadingPageBackgroundBottom: NSColor { isDark ? NSColor(srgbRed: 28 / 255, green: 28 / 255, blue: 30 / 255, alpha: 1) : NSColor(srgbRed: 241 / 255, green: 245 / 255, blue: 252 / 255, alpha: 1) } static var loadingIconWell: NSColor { featureIconWell } static var loadingHeadingBlue: NSColor { welcomeHeroHeadingBlue } static var loadingSubtitleText: NSColor { welcomeHeroSubtitleText } static var loadingStatusText: NSColor { secondaryText } static var loadingWaveTint: NSColor { welcomeHeroWaveTint } static var loadingBadgeFill: NSColor { isDark ? NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.28) : NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.1) } static var loadingBadgeText: NSColor { brandBlue } static var loadingTrackFill: NSColor { isDark ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1) : NSColor(srgbRed: 228 / 255, green: 233 / 255, blue: 242 / 255, alpha: 1) } static var loadingTrackBorder: NSColor { border } static var loadingIconWellBorder: NSColor { isDark ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1) : NSColor(srgbRed: 1, green: 1, blue: 1, alpha: 1) } }