Colors & Typography

Use this guide to keep Hint Marketplace apps visually consistent with the Hint UI.

Colors

Background

HexSwatchVisual roleToken nameWhen to use
#FFFFFFbackground-whitecolor-bg-defaultMain background for cards, nav, footer, page header, and message window backgrounds.
#EFF5FDsurface-mediumcolor-bg-surfaceTable headers, active item background on sub-menu.

Control / interaction

HexSwatchVisual roleToken nameWhen to use
#0E68E2control-primarycolor-action-primaryPrimary button background, icon button, stroke for active/hover state of input field.
#E9F1FDcontrol-secondarycolor-action-secondaryUse when it is too strong to use control-primary.
#E5E8EDcontrol-disabledcolor-action-disabledDisabled control background color.

Control states

  • Hover - 8% darker than the control color.
  • Active/pressed - 12% darker than the control color.

Text & icon

HexSwatchVisual roleToken nameWhen to use
#1D2334text-maincolor-text-primaryDefault text.
#43739Etext-secondarycolor-text-secondaryLabels when a second color is needed for information hierarchy, secondary info, placeholder in text field, or selection.
#8A90A5text-disabledcolor-text-disabledText for disabled control.
#FFFFFFtext-on-primarycolor-text-on-primaryText on primary blue button.
#0E68E2text-linkcolor-text-linkText link.

Stroke / outline / divider

HexSwatchVisual roleToken nameWhen to use
#E6ECF4outline-lightcolor-border-subtleSecondary or subtle boundaries such as table rows, container outlines, or visual grouping. Use for disabled or low-priority components.
#C2C7CFoutline-mediumcolor-border-defaultUse when elements need clear separation from the background. Use on light backgrounds where a lighter stroke is too subtle.
#C4DCF8field-outlinefield-outlineInput fields, dropdowns, and similar component outlines.

Status colors

HexSwatchVisual roleToken nameWhen to use
#00602Dsuccess-icon/textcolor-status-success-textSuccess icons or text.
#DCFCE7success-backgroundcolor-status-success-bgLight success background fill for success toasts or status chips.
#CD0211error-icon/textcolor-status-error-textError icons or red text.
#FFE2E2error-backgroundcolor-status-error-bgLight red fill or background for critical alerts and status chips, and occasionally, critical action buttons (ex: Delete Account),
#973C00warning-icon/textcolor-status-warning-textWarning icons or text.
#FEF3C6warning-backgroundcolor-status-warning-bgLight yellow background for warning alerts or status chips.

Typography

NameWeight / Size / Line height / TrackingExampleWhen to useWhen not to use
heading-md400 / 24pt / 32pt / -Welcome back! Here's what's new.Use for top-level page titles, such as dashboard or major section headers. Example: "Patients", "Sponsors", "Online Signup".Do not use for card headers or inline sub-sections. It can feel too heavy for localized areas.
heading-sm400 / 18pt / 24pt / -Welcome back! Here's what's new.Use for sub-sections or grouped content titles, like a card header or expandable panel label. Example: widget header "Tasks", "Interactions" in patient chart.Do not use for body emphasis or standalone text. Do not use as a page title or for paragraph text - it blends too closely with body size.
title-md-bold700 / 16pt / 24pt / 0.15ptWelcome back! Here's what's new.Use for key labels or section headings within complex layouts (modal titles, list headers). Use for active or selected states in navigation (sidebar, tabs). Use when you need consistent hierarchy within dense product areas.Do not use as a global or page title (use H1-H4 instead). Do not use for long or multi-line text - it is designed for short, high-visibility labels. Do not rely on bold weight alone to show active state - pair with color or background change.
title-md400 / 16pt / 24pt / 0.15ptWelcome back! Here's what's new.Use for default or inactive navigation items, unselected tabs, or short descriptive labels near icons. Use for UI labels that need to match the active style (Title 16 Bold) but appear in a lighter weight. Ideal for maintaining visual rhythm in navigation or multi-item lists where emphasis alternates by weight.Do not use as body text or paragraph content - it is too large for continuous reading. Do not use for section headers requiring stronger visual hierarchy - use Title 16 Bold or H4 instead. Do not use for metadata or low-emphasis info.
title-sm500 / 14pt / 20pt / 0.1ptWelcome back! Here's what's new.Use for smaller titles or secondary emphasis. Example: column headers in tables, button text.Do not use for long-form text or small metadata. The tighter tracking reduces readability in body copy.
label-md500 / 14pt / 16pt / 0ptWelcome back! Here's what's new.Use for form field labels, table headers, and other UI elements requiring medium emphasis.Do not use for multi-line text or long sentences. It is meant for short labels only.
body-md400 / 14pt / 20pt / 0.25ptWelcome back! Here's what's new.Use for all standard paragraph or descriptive content. Ideal for instructions, details, or general UI text.Do not use for interactive elements like buttons or labels. It is not designed for emphasis or brevity.
body-sm400 / 12pt / 16pt / 0ptWelcome back! Here's what's new.Use when space is limited or for secondary info. Example: timestamps, metadata, or small inline help text.Do not use for essential content or areas requiring high readability. It can appear too subtle.
label-sm500 / 11pt / 16pt / 0.5ptWelcome back! Here's what's new.Use for secondary labels, captions, or inline hints - often in smaller UI components or data-dense areas.Do not use for important information or high-contrast environments. It may be too small to read comfortably.