Quartz Dark Colors

Quartz Dark is an additional theme created for SAP Fiori applications to work in environments where low light is necessary or unavoidable. The dark theme also ensures a clean and lightweight design that is consistent and coherent across all SAP Fiori applications.

Usages of the Quartz Dark theme could be working at night, in a factory or other environment with low light, or working outside at night using portable devices.

Be aware that Quartz Dark does not replace high-contrast themes and supports the minimal contrast requirements of the Web Contrast Accessibility Guidelines (WCAG) 2.1.

Color Balance

Color balance refers to the recommended mixture of light and dark, and colored and non-colored areas of any SAP Fiori app interface.

Approaching the ideal color balance for each page creates a visual rhythm throughout the application. It also helps to draw the user’s attention to the most important information and functions. Furthermore, it promotes a distinct and consistent look and feel throughout all SAP Fiori apps.

  • The Quartz Dark theme background colors are subtle, calm, reduced, and minimalistic.
  • A reduced background color scheme ensures a stable base for any application content. Foreground colors support the importance, prominence, and visual connection of the information displayed.
Color balance (Quartz Dark)
Color balance (Quartz Dark)

Color Usage

Each theme is based on a set of individual base reference values. These are:

Primary (main user interface colors)

Secondary (accent colors)

Grayscale (neutral values)

Semantic (value state colors)

The reference colors listed on this page give a helpful indication as to where they are used in the UI controls and layouts. However, it is extremely important that reference values are not used directly in the control styling. The Quartz Dark reference color values are specific to this particular theme, but are assigned to control parameters.

The reference colors are used as base values, which are then distributed into the UI controls via a stable set of theme control parameters that are available in each theme. Theme control parameters represent semantically named parts of the controls. They are decoupled from the actual color values so that the color values can be easily replaced. The theming guideline explains how these reference values are mapped to the user interface controls.

Primary Colors

The recommended primary colors leverage the uniqueness of SAP Fiori apps. The primary colors represent the overall look and feel.

Quartz Dark Theme Primary Colors


Primary 1

Home/ Shell Header

#354a5f
rgb(53, 74, 95)


Primary 2
Brand / Links

#91C8F6
rgb(145, 200, 246)


Primary 3
App Headers and Containers

#29313A
rgb(41, 49, 58)


Primary 4
Home / Shell Background Base

#232A31
rgb(35, 42, 49)


Primary 5
Borders and Derived Controls

#8696A9
rgb(134, 150, 169)


Primary 6
Text and Titles

#FAFAFA
rgb(250, 250, 250)


Primary 7
Subtitles and Labels

#D3D7D9
rgb(211, 215, 217)

SAP Fiori Launchpad Gradient

The gradient is mainly applied to launchpad or dashboard overview page types.

 


Top

#181D22
rgb(24, 29, 34)


Bottom

#272F37
rgb(39, 47, 55)

Accent Colors

Secondary colors can be applied to accentuate important elements. They make a vivid contribution to the overall UI and should be used sparingly.

 


Accent 1
Accent Colors

#FFC847
rgb(255, 200, 71)


Accent 2
Accent Colors

#E7A1A1
rgb(231, 161, 161)


Accent 3
Accent Colors

#F37AA2
rgb(243, 122, 162)


Accent 4
Accent Colors

#E269C9
rgb(226, 105, 201)


Accent 5
Accent Colors

#8CA7D5
rgb(140, 167, 213)


Accent 6
Accent Colors

#6BD3FF
rgb(107, 211, 255)


Accent 7
Accent Colors

#7FC6C6
rgb(127, 198, 198)


Accent 8
Accent Colors

#B2E484
rgb(178, 228, 132)


Accent 9
Accent Colors

#B995E0
rgb(185, 149, 224)


Accent 10
Accent Colors

#B0BCC5
rgb(176, 188, 197)

Grayscale

Grayscale areas play an important role in any SAP Fiori user interface. They minimize the risk of over-stimulation and foster simplicity. White and the light grays are mainly used for areas in the background or for borders. Darker gray shades are primarily used for text.

 

Text and Titles

#FAFAFA
rgb(250, 250, 250)

Subtitles and Labels

#D3D7D9
rgb(211, 215, 217)

Prompt / Placeholder Text

#B8BEC1
rgb(184, 190, 193)

Borders and Derived Controls

#8696A9
rgb(134, 150, 169)

Header / Container / List / Table Borders

#3A4552
rgb(58, 69, 82)

Column Header Background

#232931
rgb(35, 41, 49)

Application Content Background

#1C2228
rgb(28, 34, 40)

Header / Card / Container Background

#29313A
rgb(35, 41, 49)

Semantic Colors

Semantic colors can be used to represent a negative, critical, positive, neutral, or information status. For more information, see How To Use Semantic Colors / Industry-Specific Colors.

Semantic Foregroud Colors


Negative
Semantic Foreground Colors

#FF8888
rgb(255, 136, 136)


Critical
Semantic Foreground Colors

#FABD64
rgb(250, 189, 100)


Positive
Semantic Foreground Colors

#ABE2AB
rgb(171, 226, 171)


Neutral
Semantic Foreground Colors

#D3D7D9
rgb(211, 215, 217)


Information
Semantic Foreground Colors

#91C8F6
rgb(145, 200, 246)

Semantic Background Colors


Negative
Semantic Background Colors

#3B0000
rgb(59, 0, 0)


Critical
Semantic Background Colors

#2B1A01
rgb(43, 26, 1)


Positive
Semantic Background Colors

#153C15
rgb(21, 60, 21)


Neutral
Semantic Background Colors

#5C666B
rgb(92, 102, 107)


Information
Semantic Background Colors

#062E4F
rgb(6, 46, 79)

Indication Colors

The indication color palette is used to follow the color conventions in a line of business or industry. All values are themeable and the meaning of each color depends on the business context. For more information, see How To Use Semantic Colors / Industry-Specific Colors.

 


UI Indication 1
Indication Colors

#FF5555
rgb(255, 85, 85)


UI Indication 2
Indication Colors

#FF8888
rgb(255, 136, 136)


UI Indication 3
Indication Colors

#FABD64
rgb(250, 189, 100)


UI Indication 4
Indication Colors

#ABE2AB
rgb(171, 226, 171)


UI Indication 5
Indication Colors

#91C8F6
rgb(145, 200, 246)


UI Indication 6
Indication Colors

#7fc6c6
rgb(127, 198, 198)


UI Indication 7
Indication Colors

#b995e0
rgb(185, 149, 224)


UI Indication 8
Indication Colors

#e269c9
rgb(226, 105, 201)

Accessibility

Color Contrast

Color usages for the Quartz Dark theme within SAP UI controls are checked against the WCAG 2.1 accessibility requirements.

Controls and colors are carefully selected to fulfill the minimum contrast requirements. Contrast ratios vary for different controls due to variations in size, weight, fill, or structure.

The minimum contrast thresholds for the standard SAP Fiori theme are as follows:

  • 4.5:1 for text and icons in normal size or smaller.
  • 3.0:1 for text and icons in large size (and normal size bold).
  • 3.0:1 for graphical objects (like charts) as well as visual details that identify a UI element and its state.

Goals of Good Color Contrast

The user must be able to see everything that is needed to understand and operate the screen.

  • Texts are readable.
  • Icons are recognizable and distinguishable (unless they are purely decorative).
  • UI elements can be identified visually (not by trial and error).
  • Active elements can be recognized as such.
  • The focus indicator can be found quickly (on a 15″ monitor, a user with good vision should find it in less than a second from a distance of 2.5 meters).
  • Emphasized and selected controls are recognizable.
  • Scroll indicators are recognizable.
  • Groups and other structure elements can be recognized.
  • All other visual information can be recognized.

For the last two points, you can also use other options to make the visual elements easier to recognize, such as layout, spacing, or additional texts.

Related Links

Quartz Light Colors

Quartz Light is the standard theme for SAP Fiori applications.

Theming

SAP Fiori uses a variety of colors. They are mapped to control parameters, thus allowing you to overwrite them easily in the UI Theme Designer.

Accessibility for SAP Themes

WCAG target versions for SAP’s visual themes.

 

Calendar

The calendar control lets users select a single date, multiple days, entire week(s), or a date range. The calendar shows all time-related data (year, month, week, day, date) at a glance. It also allows users to navigate directly from one month or year to another, or to display multiple months.

When to Use

Use the calendar if:

  • You want the user to select a single date, multiple days, entire week(s), or a date range.
  • You want to display multiple months at once.
  • The calendar always needs to be visible and prominent.
  • Users need to see the year, month, week, weekday and date at a glance to decide which date to select. For example, a user might want to select a date based on the day of the week.
  • Users might be used to different locale-specific date formats (such as day-month-year or month-day-year). Enabling them to select the date visually using the calendar bypasses format-specific interpretation.
  • You want to highlight special days or hide/disable specific days.

Do not use the calendar if:

  • The user is a power user who has to enter a lot of data fast. In this case, use the date picker.
  • The keyboard is the primary input device. In this case, use the date picker.
  • The available screen space is limited and displaying the calendar permanently would take up too much space.
  • The user’s primary goal is to select a date range. In this case, use date range selection.
  • You want to display a range of weekdays in a single row. In this case, use the calendar date interval.
  • The user wants to compare calendars from different people. In this case, use the planning calendar.
  • The user wants to select combined date and time values. In this case, use the date/time picker.

Components

The calendar can stand alone as a control, but is also part of many other controls, such as the date picker, date/time picker or the date range selector.

By default, the focus starts on the current day, but can be customized to fit the use case.

Calendar with current date and selected date
Calendar with current date and selected date
Clickable areas of the calendar
Clickable areas of the calendar

The control allows you to show or hide the calendar weeks. You can also customize the calendar by defining the start and end of a week, or by defining the earliest or latest date.

Specific days can also be disabled, for example non-working days or public holidays.

Calendar without calendar weeks and with disabled days
Calendar without calendar weeks and with disabled days

Month and Year View

The control offers a day view, month view, year view, or year ranges.

Month view
Month view
Year view
Year view
Year range
Year range

Legend for Highlighted Days

Within the calendar, special days can be highlighted. A legend is used to define the meaning of the highlights. Application development teams are responsible for using the colors consistently within one product area.

Calendar with highlighted days and legend
Calendar with highlighted days and legend

Types

The following calendar types are available:

  • Single day selection: The user can select a single day at a time.
  • Single interval selection: The user can select an interval or one entire week.
  • Multiple day selection: The user can select multiple days, which do not have to be next to each other. It’s also possible to select entire week(s) and a date range.
  • Multiple months: Use this calendar type if users need to see more than one month to make their selection. You can offer single day selection or multiple selection (such as multiple days, entire weeks, or date ranges). We recommend showing no more than two or three calendars at the same time.
Single day selection
Single day selection
Single interval selection
Single interval selection
Multiple day selection
Multiple day selection
Multiple month view
Multiple month view

Behavior and Interaction

The behavior and interaction of the calendar depends on the calendar type. Some interactions are only available for specific calendar types.

Selecting a Single Date

Clicking the date selects it. Clicking the date again deselects it.

Single day selection
Single day selection

Selecting a Single Interval

The user selects a single interval by clicking the first and last day of the date range, which also selects all the days in between. Alternatively, the user can select two different dates and press Shift+Enter twice.

Single interval selection
Single interval selection

Selecting an Entire Week

To select an entire week, the user clicks the number for calendar week (if displayed). Alternatively, the user can select one day within the week and press Shift+Space simultaneously.

Selection of an entire week by clicking on the calendar week
Selection of an entire week by clicking on the calendar week

Selecting Multiple Days

Multiple days are selected by clicking the desired days individually. Clicking the selected days again deselects them.

Selection of multiple days
Selection of multiple days

Changing Months

If the current month is selected, the view changes to the month view and the user can change the month. By clicking a month, the user changes the month and the view changes back to the day view.

Changing the month using the month view
Changing the month using the month view

Clicking the arrow in the day view of the calendar shows the next month of the same year.

Changing the month using the arrow
Changing the month using the arrow

Changing Years

Clicking the current year changes the view to year view. When the user selects a year, the view changes back to the day view.

Changing the year using the year view
Changing the year using the year view

Clicking the arrow in the month view shows the same selected month in the next year.

Changing the year using the arrow
Changing the year using the arrow

Clicking the year range changes the view to year range view. When the user selects a year range, the view changes back to the year view.

Changing the year range in year view
Changing the year range in year view

Clicking the arrow in the year view shows the next year range, changing in increments of 20 years.

Changing the year range in year view
Changing the year range in year view

Clicking the arrow in the year range switches to the next 180 year span.

Changing the year range
Changing the year range

Responsiveness

Use the calendar within a responsive layout container. The calendar control itself is not responsive.

When using the multiple month view, the calendar adapts to the size of the screen. On small screens, only one calendar is displayed.

Related Topics

Elements and Controls

Implementation

Avatar Group

The avatar group displays a number of avatars, which act as a digital representation of a user. This control is useful for visualizing a team, project team members, or a group of employees, for example.

Avatar group - Group type
Avatar group - Group type
Avatar group - Individual type
Avatar group - Individual type

When to Use

Use the avatar group if:

  • You want to display a group of at least 2 people.
  • You want to display several people who have something in common (for example, people who are in the same team, project, or company).

Do not use the avatar group if:

  • You want to display a gallery for simple images. Use the carousel instead.
  • You want to display a single avatar.
  • You want to show visual content other than avatars.

Types

There are two types of avatar groups: group and individual.

Guidelines
For both types, always provide a distinct description, such as a label.

Group Type – Focus on the Sum of People

The group type displays overlapping avatars. Use this type if it’s important to display the sum of people at first sight, rather than the individuals. Examples for the group type include overviews in cards and organization charts, as well as cases where you need to display a large number of people (100+).

This is the default type.

Variants for the group type (user's image, initials, placeholders)
Variants for the group type (user's image, initials, placeholders)

Individual Type – Focus on Each Person

The avatars are displayed next to each other and don’t overlap. Use this type if each person is as important as the group as a whole, and the user’s main focus is to get more information about some individuals in the group. The user can find out more about a person by interacting with the avatar to access secondary information, such as a business card.

This type is useful for a smaller group of avatars, such as a project team or teams in a line organization.

Variants for the individual type (user's image, initials, placeholders)
Variants for the individual type (user's image, initials, placeholders)

Components

Avatars

The avatar group consists of at least two avatars and can display as many avatars as you need.

Order

You can set the order of the avatars in the group freely. For example, the order can be alphabetical, history-based, or random.

Guidelines
Once you’ve decided on the order that best fits your use case, use it consistently within your app.

Content

The avatar group reuses the avatar control and its logic: if a person’s image is available, the avatar displays the image. If no image is available, it displays the person’s initials on a colored background. If there are more than 3 initials or the language system doesn’t support initials, the avatar displays a gender-neutral person icon. You can also adapt this placeholder icon to meet your own requirements.

Size

The avatar group supports the different sizes of the avatar control.

Guidelines
Use size S as a default. If the avatar group is the main element in your app, consider using a bigger size such as M or L to better support the user.
Avatar groups
Avatar groups

Overflow Button

If an avatar group has too many members to display, an overflow button is displayed at the end of the group.

Overflow button with 99
Overflow button with 99 "overflowed" avatars

Color Options

The overflow button has different color options:

  • Neutral default color
  • Random color – The color of the overflow button is a random color from the accent color palette.
  • Specific accent color – The color of the overflow button is selected from the accent color palette.

All the colors mentioned are themeable.

Overflow button in the neutral and all available accent colors
Overflow button in the neutral and all available accent colors

Overflow (Popover) Content

When users interact with the overflow shape, they expect information about the “overflowed” avatars. By default, an overview of all “overflowed” avatars is displayed directly in a popover. Adapt the content in the popover to your individual app needs.

Guidelines

  • If the group contains less than 100 avatars, ensure that all overflowed avatars are visible in the popover. This is the minimum visualization for overflowed avatars.
  • Recommended: Provide primary or secondary information in the overflow to offer additional value for the user.
  • If you have more than 100 “overflowed” avatars, we recommend navigating to another page that displays all avatars properly. For example, you can display them in a grid list together with primary or even secondary information. Ensure that the avatars in the list display in the same order as in the avatar group control on the page before.

Minimum version: overflow popover with simple avatars
Minimum version: overflow popover with simple avatars
Recommended version: overflow popover with context-specific information
Recommended version: overflow popover with context-specific information

Behavior and Interaction

The group and individual types have different behavior and interactions.

Group Type

The group type is one big active area. In other words, the entire control is basically the active area. When the user interacts with the avatar group, an overview of ALL visible AND “overflowed” avatars appears. You can display the full avatar group in an overflow popover, or on a details page.

Active area for the group type (schematic visualization)
Active area for the group type (schematic visualization)
Group type with overflow popover using the grid list control
Group type with overflow popover using the grid list control

Individual Type

The individual avatars and the overflow button have their own active areas.

Active areas for the individual type (schematic visualization)
Active areas for the individual type (schematic visualization)

Interact with Avatar

When the user activates the avatar, a popover opens. The user expects to find more details about the person behind the avatar.

Possible content in popover (popover content is use case dependent)
Possible content in popover (popover content is use case dependent)

Interact with Avatar in Overflow Popover

When an avatar is in the overflow popover, the user should have the access to the same detailed information as for avatars displayed in the visible group outside the overflow. Choosing the avatar either triggers navigation within the popover or navigation to another page (for example, with a person’s profile).

Guidelines
To show the details for an avatar in the overflow popover, use the same method as you are using for avatars in the visible group (outside of the overflow popover).
Navigation within popover to avatar's details
Navigation within popover to avatar's details

Open Full List

You can add an optional Open Full List link to the overflow popover. The link should lead to a page that displays the full set people of the group. An example might be a page with a grid list and simple filtering options.

 Popover with 'overflowed' avatars and 'Open Full List' link
Popover with 'overflowed' avatars and 'Open Full List' link

Responsiveness

The avatar group is responsive. If there is not sufficient space to display all the avatars in a group, the overflow button appears and one or more avatars move into the overflow popover. The circular overflow button indicates the exact number of avatars that can’t be displayed on the screen. The size of the overflow button adapts to fit the number of items in the overflow.

Avatar groups with a different number of avatars inside
Avatar groups with a different number of avatars inside

Top Tips

Carefully select the primary and secondary information you want to display for the avatars. Base the content on your user research findings.

Related Topics

Elements and Controls

Implementation