# Appearance

> Match your brand from the dashboard, no app update needed.

Source: https://conciergesdk.com/docs/appearance/

Change colors and copy in the dashboard and every installed app picks it up within five minutes (the SDKs cache `GET /v1/sdk/config` for 300 seconds). No release, no review.

## Dashboard settings

| Setting | Default | What it does |
|---|---|---|
| Accent (light) | `#6B4CF2` | Your bubbles, buttons and links in light mode. |
| Accent (dark) | `#9E85FF` | The same in dark mode. |
| Title | `Support` | The chat screen's title. |
| Welcome | `Hi! How can we help?` | The first thing a new user sees. |
| Show team names | On | Replies show who wrote them (and push titles use that name). |
| Show team photos | Off | Avatars next to team replies. |

## Override in code

Anything set in code wins over the dashboard. Unset values fall back to the dashboard, then to defaults.

```swift
// iOS
Concierge.appearance = ConciergeAppearance(
    accentLight: UIColor(named: "Brand"),
    accentDark: UIColor(named: "BrandDark"),
    title: "Help",
    welcome: "Hey! What's up?",
    showsCloseButton: true
)
```

```kotlin
// Android
Concierge.appearance = ConciergeAppearance(
    accentLight = Color(0xFF0A7AFF),
    accentDark = Color(0xFF4DA3FF),
    title = "Help",
    colorScheme = ConciergeColorScheme.System, // or Light / Dark
)
```

## Dark mode and accessibility

Both SDKs follow the system appearance, Dynamic Type or the system font scale, and VoiceOver or TalkBack. Each message is read as one element: author, text, time.

## Language

The chat's built-in text ships in 34 languages and follows the device language; set `Concierge.locale` (or the `locale` option) to choose one. Your dashboard title and welcome show as you wrote them. See [Localization](https://conciergesdk.com/docs/localization.md).

> **Coming soon:** Per-language dashboard text and two-way message translation, so you write English and your user reads Japanese.
