Trovella Wiki

Color System

The reasoning behind deep teal, gold accent, and warm neutrals -- psychology, competitive differentiation, and accessibility constraints.

Color is the single most impactful design decision for perceived product quality. Users form trust judgments within milliseconds, and color is the first thing they process -- before reading a single word. For the specific HSL token values and CSS implementation, see Design Tokens. This page documents the reasoning behind the choices.

Palette Summary

RoleColor familyHSL huePurpose
PrimaryDeep teal188CTAs, links, navigation highlights, focus rings
AccentGold/brass45Discovery moments, badges, highlights -- used sparingly
NeutralWarm off-white40Backgrounds, text, borders -- covers 60-70% of screen area
SidebarDark teal188Navigation surface that recedes behind content
SemanticGreen, amber, red, blue155, 45, 5, 220Success, warning, error, info -- universal conventions

Why Deep Teal

The primary color decision flows from three factors:

Brand Alignment

The Creator + Magician + Explorer archetype calls for a color that communicates trust (exploration requires trust), clarity (research demands precision), and moderate energy (curious without being frantic). Teal sits between blue (trust, reliability) and green (growth, balance), combining trust signals with an exploratory quality that pure blue lacks.

Competitive Differentiation

Blue is the most common SaaS primary color -- Salesforce, LinkedIn, Dropbox, and hundreds of others. Purple/indigo is the second most common, heavily amplified by AI-generated design defaults (the "AI Purple Problem"). Deep teal provides differentiation from both of these crowded hue families while remaining in the trustworthy cool-tone neighborhood that B2B users expect.

AI Differentiation

AI code generation models default to indigo/purple because those hues are massively overrepresented in their training data. Choosing teal as the primary color is a structural defense against generic output -- every component generated by an AI agent using Trovella's design tokens will look distinct from the statistical average.

Why Gold Accent

The accent color (hue 45, gold/brass) serves a specific role: it marks moments of discovery, completion, and reward. The Magician archetype needs a "reveal" color -- something that signals "we found something for you" or "something noteworthy happened here."

Gold is the complementary partner to teal on the color wheel, creating high visual energy when the two appear together. Research shows that navy/teal + warm accent is perceived as 34% more trustworthy than monochromatic schemes. The accent appears on less than 10% of screen area -- its scarcity gives it weight.

Why Warm Neutrals

Neutrals cover 60-70% of screen area in a typical SaaS dashboard. They define the product's visual character more than the primary color. Two products with identical teal primaries feel completely different if one uses cool blue-grays and the other uses warm stone-toned neutrals.

Trovella uses warm neutrals (hue 40, in the stone/sand family) because:

  • Archetype alignment -- the Creator archetype is approachable and human; cool grays feel technical and austere.
  • Industry trend -- the industry is moving away from cool blue-gray toward warmer, more human-feeling interfaces. Apple, Linear, and Notion all use off-white backgrounds rather than pure #FFFFFF.
  • Anti-generic signal -- pure gray (gray-50 through gray-900) is the default Tailwind neutral palette. Using warm-tinted neutrals is a visible departure from the AI-generated default.
  • Dark mode character -- warm dark backgrounds (hue 40, low lightness) feel more comfortable for extended reading than pure black or cool dark gray.

The 60/30/10 Rule

Color distribution across any interface follows this ratio:

  • 60% neutral -- backgrounds, text, borders. The warm off-white and its dark mode counterpart.
  • 30% primary and secondary -- navigation surfaces, card accents, section backgrounds. Deep teal in various lightness levels.
  • 10% accent -- CTAs, discovery moments, badges, highlights. Gold appears sparingly and carries weight because of its scarcity.

AI tends to over-apply the primary color or spread it uniformly. The 60/30/10 constraint prevents this -- if gold appears everywhere, it stops signaling anything special.

Semantic State Colors

These four color families are among the strongest UI conventions. They are not brand-specific -- they are universal:

StateColor familyHuePurpose
SuccessGreen155Confirmations, completed states, positive metrics
WarningAmber45Warnings, pending states, approaching limits
Error / DestructiveRed5Errors, validation failures, destructive actions
InfoBlue220Informational messages, tooltips, neutral status

Each semantic color has a four-step mini-scale: muted background, border, icon/text on light background, and text on tinted background. The scales use matching lightness values across all four colors so they look equally prominent.

Accessibility note: Red-green color blindness affects 8% of men. Trovella never relies on color alone to distinguish error from success -- every state is paired with an icon, label, or pattern.

Light-First, Dark-Ready

Trovella is designed light-first (the default for B2B SaaS) with dark mode as a derived secondary pass. The critical architectural decision is that tokens are structured for both modes from day one:

  • Same semantic token names in both modes (--primary, --background, --border)
  • Light values under :root, dark values under .dark
  • Components never hardcode color values -- they always reference semantic tokens
  • The mode switch is a class toggle, not a media query, allowing user override

This architecture means adding or adjusting dark mode is a token-value change, not a component-by-component refactor. See Theming for the implementation.

Accessibility Requirements

All color usage meets WCAG 2.2 Level AA:

RequirementMinimum ratioApplies to
Normal text (< 24px)4.5:1All body text, labels, links
Large text (>= 24px or >= 19px bold)3:1Headings, large labels
UI components3:1Buttons, inputs, icons, focus rings
Color not sole indicatorN/ANever use color alone to convey meaning

Practical implications:

  • Primary teal at its main shade is dark enough for text use on white backgrounds
  • Muted foreground uses a neutral dark enough to pass 4.5:1 on the warm off-white background
  • Semantic colors on tinted backgrounds (green text on green-muted) are tested explicitly -- these are the most commonly failed checks

Teal-Tinted Shadows

Shadows in Trovella are tinted with the primary hue (188 20% 30% at low opacity) rather than using pure black or gray. This is a subtle but effective brand signal -- tinted shadows feel warmer and more cohesive than neutral shadows, and they are a strong "not-AI-generated" signal because models rarely generate them. See Design Tokens for the full shadow scale values.

  • Design Tokens -- the HSL values, CSS custom properties, and shadow scale
  • Theming -- dark mode toggle, Tailwind v4 mapping
  • Brand Identity -- archetype decisions that drove color choices
  • Anti-Patterns -- how color choices counter AI-generated defaults

On this page