ghost · desktop
추출 신뢰도
- 컴포넌트가 사이트와 90% 일치
- 사이트 색상의 100% 반영
- 사이트 텍스트 스타일의 100% 반영
- 사이트에서 확인된 토큰 100%
Snapchat의 웹 프레젠스는 브랜드의 상징인 #FFFC00 노란색을 중심으로 한 고대비 밝은 테마를 사용합니다. 주요 표면에는 거의 검은색에 가까운 #121314를 적용하고, 페이지 배경은 깔끔한 흰색을 사용합니다. 기본 서체로 Avenir Next를, 보조 서체로 Graphik을 함께 사용하여 친근하면서도 체계적인 타이포그래피 위계를 이룹니다. 버튼, 알약 모양 요소, 태그 같은 상호작용 요소는 완전히 둥근 100px 모서리를 사용하고, 입력창은 은은한 5px 모서리를 사용합니다. 내비게이션은 부드러운 그림자가 드리워진 떠 있는 알약 형태입니다. 콘텐츠는 흰색 텍스트가 겹쳐진 대형 미디어 카드로 보여 주어, 앱 미리보기를 중심에 둔 몰입감 있는 구성을 만듭니다. 전체적인 밀도는 보통 수준이며, 여유 있는 간격과 분명한 시각적 위계를 통해 마케팅 디자인과 제품 UI 관례를 자연스럽게 잇습니다.
5px
5px
7px
7px
8px
8px
8px
8px
10px
10px
10px
12px
13px
15px
16px
16px
16px
16px
20px
30px
30px
40px
181px
컴포넌트
Buttons11
ghost · desktop
ghost · desktop
기본 상태100% 일치측정값 22개 일치
ghost · desktop
기본 상태98% 일치측정값 34개 일치
ghost · desktop
primary · desktop
기본 상태100% 일치측정값 22개 일치
primary · desktop
기본 상태100% 일치측정값 21개 일치
primary · desktop
기본 상태100% 일치측정값 21개 일치
secondary · desktop
기본 상태98% 일치측정값 21개 일치
secondary · desktop
기본 상태100% 일치측정값 21개 일치
secondary · desktop
기본 상태100% 일치측정값 21개 일치
Inputs4
desktop
desktop
desktop
기본 상태98% 일치측정값 26개 일치
desktop
기본 상태100% 일치측정값 26개 일치
Cards3
desktop
사이트와의 렌더링 일치도가 5%로, 기준치 96%에 못 미쳐요.
기본 상태5% 일치측정값 135개 일치
기본 상태, 인스턴스 221% 일치측정값 135개 일치
기본 상태, 인스턴스 35% 일치측정값 135개 일치
기본 상태, 인스턴스 435% 일치측정값 135개 일치
desktop
검증 불가: 페이지가 넣은 사진, 미디어, 광고가 대부분을 덮고 있고 그 외에는 다른 점이 없어서, 비교 결과로는 레시피에 대해 알 수 있는 것이 없어요.
기본 상태100% 일치측정값 57개 일치
기본 상태, 인스턴스 2100% 일치측정값 57개 일치
기본 상태, 인스턴스 3100% 일치측정값 57개 일치
기본 상태, 인스턴스 4100% 일치측정값 57개 일치
기본 상태, 인스턴스 5100% 일치측정값 57개 일치
기본 상태, 인스턴스 6100% 일치측정값 57개 일치
desktop
사이트와의 렌더링 일치도가 81%로, 기준치 96%에 못 미쳐요.
기본 상태100% 일치측정값 169개 일치
호버100% 일치측정값 18개 일치
포커스100% 일치측정값 18개 일치
기본 상태, 인스턴스 2100% 일치측정값 169개 일치
기본 상태, 인스턴스 3100% 일치측정값 169개 일치
기본 상태, 인스턴스 481% 일치측정값 169개 일치
기본 상태, 인스턴스 5100% 일치측정값 169개 일치
Extras15
desktop
기본 상태100% 일치측정값 34개 일치
desktop
기본 상태100% 일치측정값 56개 일치
desktop
desktop
desktop
기본 상태100% 일치측정값 34개 일치
desktop
레시피를 만들지 않았어요: 페이지에서 요소를 찾을 수 없었어요.
이 컴포넌트는 비교한 항목이 없어요.
desktop
레시피를 만들지 않았어요: 페이지에서 요소를 찾을 수 없었어요.
이 컴포넌트는 비교한 항목이 없어요.
desktop
기본 상태100% 일치측정값 34개 일치
desktop
기본 상태100% 일치측정값 21개 일치
desktop
기본 상태100% 일치측정값 374개 일치
desktop
기본 상태100% 일치측정값 34개 일치
desktop
desktop
desktop
desktop
레시피를 만들지 않았어요: 페이지에서 요소를 찾을 수 없었어요.
이 컴포넌트는 비교한 항목이 없어요.
Headers10
desktop
Group 12 x: 1183px (사이트: 1173px); Cta x: 1183px (사이트: 1173px) 외 1개.
기본 상태99% 일치측정값 885개 중 3개 다름
호버확인 안 됨
cta의 호버98% 일치측정값 18개 일치
logo의 호버99% 일치측정값 18개 일치
nav link 2의 호버99% 일치측정값 18개 일치
nav link의 호버99% 일치측정값 18개 일치
desktop
기본 상태100% 일치측정값 549개 일치
호버확인 안 됨
nav link 2의 호버100% 일치측정값 18개 일치
nav link의 호버100% 일치측정값 18개 일치
desktop
Group 12 x: 1183px (사이트: 1173px); Cta x: 1183px (사이트: 1173px) 외 1개.
기본 상태99% 일치측정값 885개 중 3개 다름
호버확인 안 됨
cta의 호버98% 일치측정값 18개 일치
logo의 호버99% 일치측정값 18개 일치
nav link 2의 호버99% 일치측정값 18개 일치
nav link의 호버99% 일치측정값 18개 일치
desktop
기본 상태100% 일치측정값 549개 일치
호버확인 안 됨
nav link의 호버100% 일치측정값 18개 일치
desktop
기본 상태100% 일치측정값 885개 일치
호버확인 안 됨
logo의 호버100% 일치측정값 18개 일치
menu toggle의 호버100% 일치측정값 18개 일치
nav link의 호버100% 일치측정값 18개 일치
mobile
레시피를 만들지 않았어요: 페이지에서 요소를 찾을 수 없었어요.
이 컴포넌트는 비교한 항목이 없어요.
mobile
레시피를 만들지 않았어요: 페이지에서 요소를 찾을 수 없었어요.
이 컴포넌트는 비교한 항목이 없어요.
mobile
레시피를 만들지 않았어요: 요소가 보이지 않았어요.
이 컴포넌트는 비교한 항목이 없어요.
mobile
레시피를 만들지 않았어요: 페이지에서 요소를 찾을 수 없었어요.
이 컴포넌트는 비교한 항목이 없어요.
mobile
레시피를 만들지 않았어요: 페이지에서 요소를 찾을 수 없었어요.
이 컴포넌트는 비교한 항목이 없어요.
Snapchat
Overview
Snapchat's site is a white, utilitarian shell built to get out of the way of user content. The chrome is almost entirely Ink (ink, #121314) on Canvas White (surface, #FFFFFF), with a slate secondary tier (body-muted, #53575B) for navigation labels and supporting copy. Personality comes from the media itself: tall portrait video cards, Bitmoji and map imagery, with bold white headlines laid over them. Snapchat yellow (primary, #FFFC00) is rationed. It appears on a single CTA pill in the header (button-primary-3, button-secondary-2) and as the logo hover fill, never as a page background.
Density is compact. Body and nav text sit at 14–16px, controls are short pills (32px for header CTAs such as button-primary-2, 40px for icon buttons such as button-ghost-2), and the header is a 72px bar (header-landing-2) with a centered icon-over-label tab nav. Hierarchy comes from weight and fill, not from size or shadow. Headings jump to 600/700 weight, the active tab gets a 2px #121314 underline (header-inner-text-2), and interactive chrome is separated from the canvas by tonal grey fills (surface-subtle, #F0F1F2) rather than by borders.
Geometry is soft and friendly. Every text button is a 100px pill, icon buttons are circles, and media cards carry 10–20px corners. The result reads as playful but restrained: a neutral frame, generous rounding, and one loud brand color held back for the moment that matters.
Key Characteristics:
- Near-black
ink(#121314) on whitesurfacecarries roughly all text; pureblack(#000000) is reserved for media backdrops and dark surfaces. - Snapchat yellow
primary(#FFFC00) is an accent for one CTA per view, always withon-primary(#121314) text. - Tonal grey
surface-subtle(#F0F1F2) does the work borders would do elsewhere: icon buttons, search pill, header hairline. - All text buttons are pills (
rounded.6xl, 100px); icon buttons are circles (rounded.full). - Avenir Next throughout, with weights 400/500/600/700 and normal tracking everywhere except the
eyebrow. - Content-forward portrait media cards with overlaid white type and large radii (
card, 20px). - Depth is mostly tonal, with one soft shadow (rgba(0, 0, 0, 0.14) 0px 2px 4px 0px) and translucent scrims over video.
Colors
The palette is a neutral ink-and-white frame with two accent families: Snapchat yellow for brand CTAs and a sky blue for actions and links. Use the token names; the hexes are listed for reference.
Brand & Accent
- Snap Yellow (
primary, #FFFC00): the brand accent. Measured on the yellow header CTA (button-secondary-2,button-primary-3) and as the logo hover fill (header-landing-2-logo-hover). Use it on one pill per view. Never use it for large backgrounds or for text. - Ink on Yellow (
on-primary, #121314): the only text color allowed onprimary. - Action Blue (
accent-blue, #0096E5): fill ofbutton-primary(with white text) and text color of the text-onlybutton-ghost. Use it for blue primary actions and informational accents. - Bright Sky (
accent-blue-bright, #0FADFF): a rare border accent, seen on one page. Treat it as a highlight outline, not a fill. - Link Blue (
link, #0000EE): the browser-default link color, still present on directory links (card-2-link) and logo anchors. Keep it for plain inline and directory links only.
Surface
- Canvas White (
surface, #FFFFFF): the page and header background (header-landing-2), and the fill ofselectcontrols. - Mist (
surface-subtle, #F0F1F2): the workhorse secondary surface. Used for circular icon buttons (button-ghost-2,button-ghost-5,action-button-2), the search pill (header-landing-2-group-5,input), the header menu toggle and the footer band. - Graphite (
surface-dark, #444546): the dark pill fill for buttons over media (button-secondary,card-button). - Charcoal (
surface-charcoal, #262626): dark modules and panels. - Pitch (
black, #000000): media backdrops (card-3-group-2) and the bottom legal bar.
Text
- Ink (
ink, #121314): the default text color, and the fill of the black header CTA (button-primary-2,button-secondary-3,nav-link). - Slate (
body-muted, #53575B): inactive nav labels (header-landing-2-text), inactive tabs (tab) and the search placeholder (input). - On Dark (
on-dark, #FFFFFF): text on Ink, Graphite and media, including card headlines (card-title).
Hairlines & Borders
- Hairline Grey (
hairline, #CCCCCC): 1px solid border onselectandselect-2. - Steel (
border-muted, #666666): an occasional darker border, used sparingly. - The header's 1px bottom divider is drawn in
surface-subtle(#F0F1F2), not inhairline. Keep that divider softer than form borders.
Component & State Colors
These colors were measured on components and their states, not in the page palette sampling.
- Pressed Grey #C7C7CC: hover fill for
button-ghost-2,button-ghost-5andheader-landing-2-menu-toggle-hover. - Veil #0000000D: hover wash on
tabandtab-active; also the fill ofinput-2. - Paper #F9F9F9: the padded frame of
card-3-group. - Scrim #00000080: the
video-play-controlbackdrop; its hover lightens to #FFFFFF73. - Placeholder #00000099: text color in
selectandselect-2.
No gradients are measured on the UI chrome. The screenshots show gradient scrims only inside media tiles, behind overlaid headlines.
The site also ships a real dark theme, built by role-swapping rather than by re-branding:
- Surfaces drop to #262626, #121314 and #000000.
- Text flips to #FFFFFF, with #D4D5D6 and #9A9FA7 as the secondary and muted tiers.
- Interactive fills move to #3A3E41.
- Accents stay fixed: brand yellow #FFFC00, Action Blue #0096E5 and Link Blue #0000EE are unchanged.
The override layer only remaps the neutral roles.
Dark Mode
The dark values below were measured with the dark color scheme forced on the page; the light values are the page's normal render.
| Role | Light | Dark |
|---|---|---|
| Surface | surface-subtle | #262626 |
| Surface (secondary) | hairline | #C7C7CC |
| Text | ink | #FFFFFF |
| Text (secondary) | black | #000000 |
| Border | border-muted | #666666 |
| Border (secondary) | accent-blue-bright | #0FADFF |
| Dark only | not observed | #9A9FA7 |
Typography
Font Family
- Avenir Next (fallback stack: Helvetica, sans-serif): the single brand typeface for every heading, body line, nav label, tab and button.
- Arial: confined to form inputs (
input,input-2, the search pillheader-landing-2-group-5) and the embeddedcreator-badge. Treat it as a form-control face, not a second brand voice.
Hierarchy
| Token | Size | Weight | Line Height | Letter Spacing | Use |
|---|---|---|---|---|---|
hero-display | 48px | 600 | 1.25 | normal | Page h1, e.g. the large centered "Öffne dein Snapchat." CTA |
display-md | 34px | 700 | 1.2 | normal | Secondary-page h1 |
title-lg | 28px | 700 | 1.3 | normal | Headlines overlaid on media cards (card-title) |
title-md | 24px | 600 | 1.5 | normal | Section h2s and module titles |
title-sm | 16px | 700 | 1.4 | normal | Small headings (h5) and list titles |
body | 16px | 400 | 1.5 | normal | Default running text, list items |
body-strong | 16px | 500 | 1.5 | normal | Emphasized labels, inactive tab text, h3 labels |
body-sm | 14px | 400 | 1.3 | normal | Directory links and secondary copy |
body-sm-strong | 14px | 600 | 1.45 | normal | Emphasized small spans |
nav-link | 14px | 400 | 1.2 | normal | Text links in nav and footer lists |
button | 14px | 500 | 1.15 | normal | All pill button labels (button-primary, button-primary-2) |
eyebrow | 13px | 700 | 1.5 | 0.78px | Small uppercase grey subheads above link directories |
caption | 12px | 600 | 1.5 | normal | Icon-nav labels under header icons (header-landing-2-text) |
caption-strong | 12px | 700 | 1.5 | normal | Active icon-nav label (header-inner-text-2) |
input | 12px | 700 | 1.15 | normal | Arial search-field text (input) |
Principles
- Four weights, each with a job. 400 is reading text. 500 is controls (
button,body-strong). 600 is display and captions (hero-display,title-md,caption). 700 is titles and active states (display-md,title-lg,caption-strong). - Active vs. inactive is a weight step. The active icon-nav label goes from 600 to 700 and gains an
inkcolor plus a 2px underline (header-inner-text-2). The activetab-activesits at 600, against 500 ontab. - Tracking is normal everywhere except
eyebrow, whose 0.78px of letter spacing compensates for its small uppercase setting. Do not add tracking to headings. - Line height loosens as size drops. Display text runs 1.2–1.3. Body and captions run 1.5. Controls tighten to 1.15–1.2 so pills stay compact.
- The scale is compact. Nothing in the UI chrome is larger than 16px. Size jumps are reserved for display headings at 24px and above.
Note on Font Substitutes
Avenir Next is a commercial (Linotype/Monotype) face and may not be licensable.
- Stand-ins: Nunito Sans or Mulish are the closest open-source geometric-humanist substitutes.
- Weight mapping: keep the same four weights (400/500/600/700).
- Metrics: check x-height. Nunito Sans runs slightly smaller, so 12–14px caption and button text may need about 0.5px more size to match visually. Keep
letterSpacingnormal. - Fallback: Helvetica remains an acceptable fallback, as the site's own stack declares.
Layout
Spacing System
No base step was derived; spacing is defined per component. The verified tokens group into a small set of rhythms:
button-primary-2-padding-y8px /button-primary-2-padding-x16pxbutton-secondary-2-padding-y8px /button-secondary-2-padding-x16pxbutton-primary-3-padding-y8px /button-primary-3-padding-x16pxbutton-secondary-3-padding-y8px /button-secondary-3-padding-x16px
Standard pill: button-primary-padding-y 12px / button-primary-padding-x 20px, read on the blue button-primary.
Large pill: button-secondary-padding-y 15px / button-secondary-padding-x 30px, read on the Graphite button-secondary.
Text button: button-ghost-padding-top 13px on the text-only button-ghost.
Search pill: input-padding-y 10px, input-padding-left 40px (room for the leading search icon), input-padding-right 30px.
Plain field: input-2-padding-y 7px / input-2-padding-x 7px.
Selects: select-padding-y 5px / select-padding-x 10px. select-2-padding-y 5px / select-2-padding-x 10px repeat the same values.
Horizontal padding on pills is always double the vertical padding (8/16, 15/30) or close to it (12/20). Keep that ratio when adding a button size.
No section-to-section vertical rhythm was measured on the page.
Grid & Container
- Header: the only measured container constraint is
header-landing-2-inner-max-width(181px), the capped inner block of the header that holds the search pill. It is not a page container. No page-wide max width or grid gap was verified as a spacing token. - Desktop home page: the screenshots show an asymmetric split. A narrow login column with a vertical divider sits on the left, and a grid of tall portrait media cards fills the right.
- Below the fold: a centered download CTA, then link directories in multi-column lists, then a grey footer band and a black legal bar.
- Spotlight: a two-pane layout with a vertical video plus action rail on one side and a tabbed detail column with a thumbnail grid on the other.
- Stories: a single narrow stacked column.
Whitespace Philosophy
Whitespace is spent on the canvas, not inside the chrome. Controls are tight: compact pills, short selects. Media cards, by contrast, sit on open white with large surrounding margins, and the download CTA is isolated by generous empty space above and below. When adding modules, keep components snug and let the white surface around them provide the breathing room.
Measured Layout
Every spacing token restates a measurement of a verified component recipe, or the step those measurements share.
header-landing-2-inner-max-width: 181px (header-landing-2, max width ofheader-landing-2-inner)button-primary-padding-y: 12px (button-primary, vertical padding of the root)button-primary-padding-x: 20px (button-primary, horizontal padding of the root)button-secondary-padding-y: 15px (button-secondary, vertical padding of the root)button-secondary-padding-x: 30px (button-secondary, horizontal padding of the root)button-ghost-padding-top: 13px (button-ghost, top padding of the root)input-padding-y: 10px (input, vertical padding of the root)input-padding-left: 40px (input, left padding of the root)input-padding-right: 30px (input, right padding of the root)input-2-padding-y: 7px (input-2, vertical padding of the root)input-2-padding-x: 7px (input-2, horizontal padding of the root)select-padding-y: 5px (select, vertical padding of the root)select-padding-x: 10px (select, horizontal padding of the root)button-primary-2-padding-y: 8px (button-primary-2, vertical padding of the root)button-primary-2-padding-x: 16px (button-primary-2, horizontal padding of the root)button-secondary-2-padding-y: 8px (button-secondary-2, vertical padding of the root)button-secondary-2-padding-x: 16px (button-secondary-2, horizontal padding of the root)select-2-padding-y: 5px (select-2, vertical padding of the root)select-2-padding-x: 10px (select-2, horizontal padding of the root)button-primary-3-padding-y: 8px (button-primary-3, vertical padding of the root)button-primary-3-padding-x: 16px (button-primary-3, horizontal padding of the root)button-secondary-3-padding-y: 8px (button-secondary-3, vertical padding of the root)button-secondary-3-padding-x: 16px (button-secondary-3, horizontal padding of the root)
Elevation & Depth
| Level | Treatment | Use |
|---|---|---|
| 0 — Canvas | surface #FFFFFF, no border, no shadow | Page background and header (header-landing-2) |
| 1 — Tonal | Fill change to surface-subtle #F0F1F2, or #F9F9F9 on card-3-group | Circular icon buttons (button-ghost-2, action-button-2), search pill (header-landing-2-group-5), footer band, story card frames |
| 2 — Hairline | 1px solid #F0F1F2 bottom border on header-landing-2 / header-inner; 1px solid #CCCCCC on select / select-2; 2px solid #121314 bottom border on the active nav label (header-inner-text-2) | Separating the header from content, outlining form controls, marking the active tab |
| 3 — Soft shadow | rgba(0, 0, 0, 0.14) 0px 2px 4px 0px | The one measured shadow, sampled on the page. Per the screenshots it lifts the floating yellow "Open Snapchat" pill on mobile |
| 4 — Media scrim | Translucent #00000080 fill (hover #FFFFFF73) on video-play-control | Controls floating over video and imagery |
No backdrop-filter blur was measured on any recipe or page.
Shadow philosophy.
- Depth is mostly tonal. A raised control is a Mist-grey fill on white. A section break is a pale hairline or a fill change to grey or black. Shadows are not the default way to lift things.
- The single measured shadow (rgba(0, 0, 0, 0.14) 0px 2px 4px 0px) is a small, tight, low-opacity tier. Reserve it for an element that floats above scrolling content, such as a sticky CTA pill. Do not use it on cards or buttons that sit in flow.
- Over media, use translucent scrims instead of shadows. The black/white alpha fills on
video-play-controlkeep controls legible without adding chrome.
Shapes
Border Radius Scale
| Token | Value | Use |
|---|---|---|
rounded.xs | 4px | Rare small detail; a single occurrence |
rounded.sm | 5px | Form controls: select, select-2, input-2 |
rounded.md | 6px | Thumbnail media in directory grids (card-2-media) |
rounded.lg | 8px | Logo hit area in the header (header-landing-2-logo) |
rounded.xl | 10px | Story card frames and their media (card-3-group, card-3-media) |
rounded.2xl | 12px | Video player corners (per screenshots) |
rounded.3xl | 16px | Larger video and media containers |
rounded.4xl | 20px | Portrait feature cards (card, card-media), the search pill (input, header-landing-2-group-5) |
rounded.5xl | 36px | Rare large rounding; a single occurrence |
rounded.6xl | 100px | Every text button pill: button-primary, button-secondary, button-primary-2, button-secondary-2, nav-link, card-button |
rounded.7xl | 170px | Rare oversized pill/blob; a single occurrence |
rounded.full | 9999px | Circles: icon buttons (button-ghost-2, button-ghost-5), the action rail, avatars |
Geometry character
Snapchat's geometry is soft and child-safe-friendly, with no sharp corners anywhere in the chrome.
Pills and circles are the rule for interaction:
- Every labelled button uses
rounded.6xl(100px), so it reads as a full pill at any height. - Every icon-only button is a perfect circle (
rounded.full).
Containers scale their radius with their size:
- Small selects and fields:
rounded.sm. - Thumbnails:
rounded.md. - Story frames:
rounded.xl. - Hero portrait cards:
rounded.4xl.
Nested media inherits its parent's radius. card-media and card-group both repeat 20px inside card, so images never poke a square corner out of a rounded frame.
Components
Each component below was distilled from the live page: the recipe is a standalone, placeholder-filled reproduction with literal values, and every frontmatter key named in the anatomy carries the same measurements. A verified component reproduced the original in every check; a flagged one is shipped with the reason it did not; one marked not verifiable could not be compared with the original, which says nothing about the recipe.
Buttons
Button, primary
Verification: verified against the live page at desktop.
Anatomy
button-primary: the component root, a<button>(.c-button-primary), 6-character label
Recipe
HTML · CSS
<div class="c-button-primary-scope">
<button class="c-button-primary" type="button">lorem</button>
</div>
.c-button-primary-scope {
background-color: #FFFFFF;
color: #000000;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-button-primary {
display: flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
padding: 12px 20px;
background-color: #0096E5;
color: #FFFFFF;
border: 0;
border-radius: 100px;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 500;
line-height: 16px;
letter-spacing: normal;
text-transform: none;
text-align: center;
}
States
- No hover or focus change was observed.
Button, secondary
Verification: verified against the live page at desktop.
Anatomy
button-secondary: the component root, a<a>(.c-button-secondary), 8-character label
Recipe
HTML · CSS
<div class="c-button-secondary-scope">
<a class="c-button-secondary" href="#">lorem ip</a>
</div>
.c-button-secondary-scope {
background-color: #FFFFFF;
color: #000000;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-button-secondary {
display: flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: fit-content;
padding: 15px 30px;
background-color: #444546;
color: #FFFFFF;
border-radius: 100px;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 500;
line-height: 16px;
text-decoration-line: none;
}
States
- No hover or focus change was observed.
Button, ghost
Verification: verified against the live page at desktop.
Anatomy
button-ghost: the component root, a<button>(.c-button-ghost), 24-character label
Recipe
HTML · CSS
<div class="c-button-ghost-scope">
<button class="c-button-ghost" type="button">lorem ipsum dolor sit am</button>
</div>
.c-button-ghost-scope {
background-color: #FFFFFF;
color: #000000;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-button-ghost {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
padding: 13px 0px 0px;
background-color: transparent;
color: #0096E5;
border: 0;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 12.8px;
font-weight: 400;
line-height: 16px;
letter-spacing: normal;
text-transform: none;
text-align: center;
}
.c-button-ghost:focus {
outline: none;
}
States
- focus: outline none
Button, primary (2)
Verification: verified against the live page at desktop.
Anatomy
button-primary-2: the component root, a<a>(.c-button-primary-2), 8-character label
Recipe
HTML · CSS
<div class="c-button-primary-2-scope">
<a class="c-button-primary-2" href="#">lorem ip</a>
</div>
.c-button-primary-2-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-button-primary-2 {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: fit-content;
padding: 8px 16px;
background-color: #121314;
color: #FFFFFF;
border-radius: 100px;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 500;
line-height: 16px;
text-decoration-line: none;
}
States
- No hover or focus change was observed.
Button, secondary (2)
Verification: verified against the live page at desktop.
Anatomy
button-secondary-2: the component root, a<button>(.c-button-secondary-2), 6-character label
Recipe
HTML · CSS
<div class="c-button-secondary-2-scope">
<button class="c-button-secondary-2" type="button">lorem</button>
</div>
.c-button-secondary-2-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-button-secondary-2 {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: fit-content;
padding: 8px 16px;
background-color: #FFFC00;
color: #121314;
border: 0;
border-radius: 100px;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 500;
line-height: 16px;
letter-spacing: normal;
text-transform: none;
text-align: center;
white-space: nowrap;
}
States
- No hover or focus change was observed.
Button, ghost (2)
Verification: verified against the live page at desktop.
Anatomy
button-ghost-2: the component root, a<button>(.c-button-ghost-2)button-ghost-2-icon: icon placeholder, 18px (.c-button-ghost-2__icon)
Recipe
HTML · CSS
<div class="c-button-ghost-2-scope">
<button class="c-button-ghost-2" type="button">
<span class="c-button-ghost-2__icon" aria-hidden="true"></span>
</button>
</div>
.c-button-ghost-2-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-button-ghost-2 {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: 40px;
height: 40px;
padding: 0px;
background-color: #F0F1F2;
color: #121314;
border: 0;
border-radius: 100%;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
letter-spacing: normal;
text-transform: none;
text-align: center;
transition: background-color 0.2s ease;
}
.c-button-ghost-2__icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 18px;
height: 18px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-button-ghost-2:hover {
background-color: #C7C7CC;
}
States
- hover (
button-ghost-2-hover): background-color #C7C7CC
Button, ghost (3)
Verification: verified against the live page at desktop.
Anatomy
button-ghost-3: the component root, a<button>(.c-button-ghost-3)
Recipe
HTML · CSS
<div class="c-button-ghost-3-scope">
<button class="c-button-ghost-3" type="button"></button>
</div>
.c-button-ghost-3-scope {
background-color: #000000;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-button-ghost-3 {
display: flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
padding: 0px;
background-color: transparent;
color: #121314;
border: 0;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
letter-spacing: normal;
text-transform: none;
text-align: center;
}
States
- No hover or focus change was observed.
Button, ghost (4)
Verification: verified against the live page at desktop.
Anatomy
button-ghost-4: the component root, a<div>(.c-button-ghost-4)button-ghost-4-icon: icon placeholder, 24x19px (.c-button-ghost-4__icon)
Recipe
HTML · CSS
<div class="c-button-ghost-4-scope">
<div class="c-button-ghost-4">
<span class="c-button-ghost-4__icon" aria-hidden="true"></span>
</div>
</div>
.c-button-ghost-4-scope {
background-color: #000000;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-button-ghost-4 {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: 40px;
height: 40px;
color: #121314;
border-radius: 50%;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
text-align: right;
transition: all 0.3s ease-out;
}
.c-button-ghost-4__icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 19px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
States
- No hover or focus change was observed.
Button, primary (3)
Verification: verified against the live page at desktop.
Anatomy
button-primary-3: the component root, a<button>(.c-button-primary-3), 6-character label
Recipe
HTML · CSS
<div class="c-button-primary-3-scope">
<button class="c-button-primary-3" type="button">lorem</button>
</div>
.c-button-primary-3-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-button-primary-3 {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: fit-content;
padding: 8px 16px;
background-color: #FFFC00;
color: #121314;
border: 0;
border-radius: 100px;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 500;
line-height: 16px;
letter-spacing: normal;
text-transform: none;
text-align: center;
white-space: nowrap;
}
States
- No hover or focus change was observed.
Button, secondary (3)
Verification: verified against the live page at desktop.
Anatomy
button-secondary-3: the component root, a<a>(.c-button-secondary-3), 8-character label
Recipe
HTML · CSS
<div class="c-button-secondary-3-scope">
<a class="c-button-secondary-3" href="#">lorem ip</a>
</div>
.c-button-secondary-3-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-button-secondary-3 {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: fit-content;
padding: 8px 16px;
background-color: #121314;
color: #FFFFFF;
border-radius: 100px;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 500;
line-height: 16px;
text-decoration-line: none;
}
States
- No hover or focus change was observed.
Button, ghost (5)
Verification: verified against the live page at desktop.
Anatomy
button-ghost-5: the component root, a<button>(.c-button-ghost-5)button-ghost-5-icon: icon placeholder, 18px (.c-button-ghost-5__icon)
Recipe
HTML · CSS
<div class="c-button-ghost-5-scope">
<button class="c-button-ghost-5" type="button">
<span class="c-button-ghost-5__icon" aria-hidden="true"></span>
</button>
</div>
.c-button-ghost-5-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-button-ghost-5 {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: 40px;
height: 40px;
padding: 0px;
background-color: #F0F1F2;
color: #121314;
border: 0;
border-radius: 100%;
cursor: pointer;
font-family: Arial;
font-size: 13.3333px;
font-weight: 400;
line-height: normal;
letter-spacing: normal;
text-transform: none;
text-align: center;
transition: background-color 0.2s ease;
}
.c-button-ghost-5__icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 18px;
height: 18px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-button-ghost-5:hover {
background-color: #C7C7CC;
}
States
- hover (
button-ghost-5-hover): background-color #C7C7CC
Inputs
Input
Verification: verified against the live page at desktop.
Anatomy
input: the component root, a<input>(.c-input), 6-character placeholder
Recipe
HTML · CSS
<div class="c-input-scope">
<input class="c-input" type="text" placeholder="lorem">
</div>
.c-input-scope {
background-color: #FFFFFF;
color: #000000;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-input {
display: block;
border-spacing: 0px;
box-sizing: border-box;
width: 181px;
height: 40px;
padding: 10px 30px 10px 40px;
overflow-x: clip;
overflow-y: clip;
background-color: #F0F1F2;
color: #53575B;
border: 0;
border-radius: 20px;
cursor: text;
font-family: Arial;
font-size: 12px;
font-weight: 700;
line-height: 14px;
letter-spacing: normal;
text-transform: none;
text-align: start;
text-overflow: ellipsis;
transition: all 0.2s ease-in-out;
}
.c-input:hover {
min-width: 0px;
min-height: 0px;
}
.c-input:focus {
min-width: 0px;
min-height: 0px;
outline: none;
}
States
- hover: min-width 0px, min-height 0px
- focus: min-width 0px, min-height 0px, outline none
Input (2)
Verification: verified against the live page at desktop.
Anatomy
input-2: the component root, a<input>(.c-input-2), 0-character placeholder
Recipe
HTML · CSS
<div class="c-input-2-scope">
<input class="c-input-2" type="text" placeholder="">
</div>
.c-input-2-scope {
background-color: #FFFFFF;
color: #53575B;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 500;
line-height: 24px;
}
.c-input-2 {
display: inline-block;
border-spacing: 0px;
box-sizing: border-box;
width: 420px;
height: 38px;
padding: 7px;
overflow-x: clip;
overflow-y: clip;
background-color: #0000000D;
color: #121314;
border: 0;
border-radius: 5px;
cursor: text;
font-family: Arial;
font-size: 16px;
font-weight: 500;
line-height: 24px;
letter-spacing: normal;
text-transform: none;
text-align: start;
margin-top: 7px;
}
.c-input-2:focus {
outline: none;
}
States
- focus: outline none
Selects
Select
Verification: verified against the live page at desktop.
Anatomy
select: the component root, a<select>(.c-select), 12-character placeholder
Recipe
HTML · CSS
<div class="c-select-scope">
<select class="c-select"><option>lorem ipsum</option></select>
</div>
.c-select-scope {
background-color: #F8F9FB;
color: #000000;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 400;
line-height: 17px;
}
.c-select {
display: inline-block;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: 147px;
height: 34px;
padding: 5px 10px;
background-color: #FFFFFF;
color: #00000099;
border: 1px solid #CCCCCC;
border-radius: 5px;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 400;
line-height: normal;
letter-spacing: normal;
text-transform: none;
text-align: start;
white-space: pre;
appearance: none;
margin-top: 10px;
}
States
- No hover or focus change was observed.
Select (2)
Verification: verified against the live page at desktop.
Anatomy
select-2: the component root, a<select>(.c-select-2), 12-character placeholder
Recipe
HTML · CSS
<div class="c-select-2-scope">
<select class="c-select-2"><option>lorem ipsum</option></select>
</div>
.c-select-2-scope {
background-color: #F8F9FB;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 400;
line-height: 17px;
}
.c-select-2 {
display: inline-block;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: 201px;
height: 34px;
padding: 5px 10px;
background-color: #FFFFFF;
color: #00000099;
border: 1px solid #CCCCCC;
border-radius: 5px;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 400;
line-height: normal;
letter-spacing: normal;
text-transform: none;
text-align: start;
white-space: pre;
appearance: none;
margin-top: 10px;
}
States
- No hover or focus change was observed.
Cards
Card
Verification: flagged, the render matched 5% of the original pixels, below the 96% required (instance 1) after 2 correction attempts.
Anatomy
- Group: 4 instances in a 2-column grid, 15px gap; the recipe carries the values they all share
card: the component root, a<div>(.c-card)card-group: inner block (.c-card__group)card-title: heading, 38 characters (.c-card__title)card-group-2: inner flex row (.c-card__group-2)card-button: button, 17-character label (.c-card__button)card-group-3: inner block (.c-card__group-3)card-media: image placeholder, 396x690px (.c-card__media)
Recipe
HTML · CSS
<div class="c-card-scope">
<div class="c-card">
<div class="c-card__group">
<h2 class="c-card__title">lorem ipsum dolor sit amet consectetur</h2>
<div class="c-card__group-2">
<button class="c-card__button" type="button">lorem ipsum dolor</button>
</div>
</div>
<div class="c-card__group-3">
<span class="c-card__media" aria-hidden="true"></span>
</div>
</div>
</div>
.c-card-scope {
background-color: #FFFFFF;
color: #000000;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-card {
display: inline-block;
border-spacing: 0px;
box-sizing: border-box;
position: relative;
color: #FFFFFF;
border-radius: 20px;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-card__group {
display: block;
box-sizing: border-box;
width: 100%;
height: 100%;
position: absolute;
left: 0px;
background-image: linear-gradient(#00000099, transparent 30%);
border-radius: 20px;
}
.c-card__title {
display: block;
box-sizing: border-box;
padding: 35px;
margin: 0px;
font-size: 28px;
font-weight: 700;
line-height: 36px;
}
.c-card__group-2 {
display: flex;
justify-content: center;
align-items: center;
align-self: center;
box-sizing: border-box;
width: 100%;
position: absolute;
bottom: 50px;
z-index: 1;
}
.c-card__button {
display: flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: fit-content;
padding: 8px 16px;
background-color: #444546;
color: #FFFFFF;
border: 0;
border-radius: 100px;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 500;
line-height: 16px;
letter-spacing: normal;
text-transform: none;
text-align: center;
}
.c-card__group-3 {
display: block;
box-sizing: border-box;
border-radius: 20px;
}
.c-card__media {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 396px;
height: 690px;
max-height: 690px;
aspect-ratio: 9 / 16;
overflow-x: clip;
overflow-y: clip;
background-color: currentcolor;
border-radius: 20px;
}
States
- No hover or focus change was observed.
Card (2)
Verification: not verifiable, what the page placed in it (photos, media, ads) covers most of it and nothing else differs, so the comparison could not be judged.
Anatomy
- Group: 6 instances in a 3-column grid, 8px gap; the recipe carries the values they all share
card-2: the component root, a<div>(.c-card-2)card-2-link: link (.c-card-2__link)card-2-media: image placeholder, 151x240px (.c-card-2__media)
Recipe
HTML · CSS
<div class="c-card-2-scope">
<div class="c-card-2">
<a class="c-card-2__link" href="#">
<span class="c-card-2__media" aria-hidden="true"></span>
</a>
</div>
</div>
.c-card-2-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-card-2 {
display: inline-block;
border-spacing: 0px;
box-sizing: border-box;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-card-2__link {
display: inline;
box-sizing: border-box;
color: #0000EE;
cursor: pointer;
text-decoration-line: underline;
text-decoration-color: #0000EE;
}
.c-card-2__media {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 151px;
height: 240px;
overflow-x: clip;
overflow-y: clip;
background-color: currentcolor;
border-radius: 6px;
transition: opacity 0.1s ease;
}
States
- No hover or focus change was observed.
Card (3)
Verification: flagged, the render matched 81% of the original pixels, below the 96% required (instance 4) after 2 correction attempts.
Anatomy
- Group: 5 instances in a 1-column grid; the recipe carries the values they all share
card-3: the component root, a<div>(.c-card-3)card-3-group: inner block (.c-card-3__group)card-3-group-2: inner flex row (.c-card-3__group-2)card-3-group-3: inner block (.c-card-3__group-3)card-3-media: image placeholder, 461x721px (.c-card-3__media)card-3-group-4: inner flex row (.c-card-3__group-4), content not capturedcard-3-group-5: inner block (.c-card-3__group-5), content not capturedcard-3-group-6: inner block (.c-card-3__group-6), content not capturedcard-3-group-7: inner block (.c-card-3__group-7)card-3-group-8: inner flex row (.c-card-3__group-8), content not captured
Recipe
HTML · CSS
<div class="c-card-3-scope">
<div class="c-card-3">
<div class="c-card-3__group">
<div class="c-card-3__group-2">
<div class="c-card-3__group-3">
<span class="c-card-3__media" aria-hidden="true"></span>
<span class="c-card-3__group-4"></span>
<div class="c-card-3__group-5"></div>
<div class="c-card-3__group-6"></div>
</div>
<div class="c-card-3__group-7">
<div class="c-card-3__group-8"></div>
</div>
</div>
</div>
</div>
</div>
.c-card-3-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-card-3 {
display: block;
border-spacing: 0px;
box-sizing: border-box;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-card-3__group {
display: block;
box-sizing: border-box;
width: 100%;
padding: 10px;
position: relative;
background-color: #F9F9F9;
border-radius: 10px;
cursor: pointer;
margin-top: 5px;
margin-bottom: 5px;
}
.c-card-3__group-2 {
display: flex;
box-sizing: border-box;
width: 100%;
height: 720px;
max-width: 460px;
position: relative;
background-color: #000000;
border-radius: 10px;
margin-right: auto;
margin-left: auto;
}
.c-card-3__group-3 {
box-sizing: border-box;
width: 100%;
height: 100%;
position: relative;
}
.c-card-3__media {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 461px;
height: 721px;
overflow-x: clip;
overflow-y: clip;
background-color: currentcolor;
border-radius: 10px;
}
.c-card-3__group-4 {
display: flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: 100%;
height: 100%;
position: absolute;
bottom: 0px;
border-radius: 10px;
transition: all 0.25s ease;
}
.c-card-3__group-5 {
display: block;
box-sizing: border-box;
}
.c-card-3__group-6 {
display: block;
box-sizing: border-box;
position: absolute;
}
.c-card-3__group-7 {
box-sizing: border-box;
position: absolute;
}
.c-card-3__group-8 {
display: flex;
box-sizing: border-box;
position: relative;
}
.c-card-3:hover {
padding: 0px;
}
.c-card-3:focus {
padding: 0px;
}
States
- hover: padding 0px
- focus: padding 0px
Image button
Verification: flagged, the render matched 53% of the original pixels, below the 96% required after 2 correction attempts.
Anatomy
image-button: the component root, a<button>(.c-image-button), 17-character label
Recipe
HTML · CSS
<div class="c-image-button-scope">
<button class="c-image-button" type="button">lorem ipsum dolor</button>
</div>
.c-image-button-scope {
background-color: #FFFFFF;
color: #FFFFFF;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-image-button {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: fit-content;
padding: 8px 16px;
background-color: #444546;
color: #FFFFFF;
border: 0;
border-radius: 100px;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 500;
line-height: 16px;
letter-spacing: normal;
text-transform: none;
text-align: center;
}
States
- No hover or focus change was observed.
Nav link
Verification: verified against the live page at desktop.
Anatomy
nav-link: the component root, a<a>(.c-nav-link), 12-character label
Recipe
HTML · CSS
<div class="c-nav-link-scope">
<a class="c-nav-link" href="#">lorem ipsum</a>
</div>
.c-nav-link-scope {
background-color: #FFFFFF;
color: #000000;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-nav-link {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: fit-content;
padding: 8px 16px;
background-color: #121314;
color: #FFFFFF;
border-radius: 100px;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 500;
line-height: 16px;
text-decoration-line: none;
}
States
- No hover or focus change was observed.
Headers
Header (landing)
Verification: verified against the live page at desktop.
Variant observed on https://www.snapchat.com/.
Anatomy
header-landing: the component root, a<nav>(.c-header-landing)header-landing-nav: inner flex row (.c-header-landing__nav)header-landing-nav-item: inner group (.c-header-landing__nav-item)header-landing-nav-link: link (.c-header-landing__nav-link, 5 instances)header-landing-group: inner flex column (.c-header-landing__group, 5 instances)header-landing-group-2: inner group (.c-header-landing__group-2, 5 instances)header-landing-icon: icon placeholder, 24px (.c-header-landing__icon)header-landing-text: label text, 7 characters (.c-header-landing__text, 5 instances)header-landing-nav-item-2: inner group (.c-header-landing__nav-item-2, 3 instances)header-landing-icon-2: icon placeholder, 21x23px (.c-header-landing__icon-2)header-landing-group-3: inner group (.c-header-landing__group-3)header-landing-icon-3: icon placeholder, 26x12px (.c-header-landing__icon-3)header-landing-icon-4: icon placeholder, 22x24px (.c-header-landing__icon-4)header-landing-icon-5: icon placeholder, 25x24px (.c-header-landing__icon-5)header-landing-nav-item-3: inner group (.c-header-landing__nav-item-3)header-landing-icon-6: icon placeholder, 26px (.c-header-landing__icon-6)
Recipe
HTML · CSS
<div class="c-header-landing-scope">
<nav class="c-header-landing">
<ul class="c-header-landing__nav">
<li class="c-header-landing__nav-item">
<a class="c-header-landing__nav-link" href="#">
<span class="c-header-landing__group">
<span class="c-header-landing__group-2">
<span class="c-header-landing__icon" aria-hidden="true"></span>
</span>
<span class="c-header-landing__text">lorem i</span>
</span>
</a>
</li>
<li class="c-header-landing__nav-item-2">
<a class="c-header-landing__nav-link" href="#">
<span class="c-header-landing__group">
<span class="c-header-landing__group-2">
<span class="c-header-landing__icon-2" aria-hidden="true"></span>
</span>
<span class="c-header-landing__text">lorem ips</span>
</span>
</a>
</li>
<li class="c-header-landing__nav-item-2">
<a class="c-header-landing__nav-link" href="#">
<span class="c-header-landing__group">
<span class="c-header-landing__group-3">
<span class="c-header-landing__icon-3" aria-hidden="true"></span>
</span>
<span class="c-header-landing__group-2">
<span class="c-header-landing__icon-4" aria-hidden="true"></span>
</span>
<span class="c-header-landing__text">lore</span>
</span>
</a>
</li>
<li class="c-header-landing__nav-item-2">
<a class="c-header-landing__nav-link" href="#">
<span class="c-header-landing__group">
<span class="c-header-landing__group-2">
<span class="c-header-landing__icon-5" aria-hidden="true"></span>
</span>
<span class="c-header-landing__text">lorem</span>
</span>
</a>
</li>
<li class="c-header-landing__nav-item-3">
<a class="c-header-landing__nav-link" href="#">
<span class="c-header-landing__group">
<span class="c-header-landing__group-2">
<span class="c-header-landing__icon-6" aria-hidden="true"></span>
</span>
<span class="c-header-landing__text">lorem ips</span>
</span>
</a>
</li>
</ul>
</nav>
</div>
.c-header-landing-scope {
background-color: #FFFFFF;
color: #000000;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-header-landing {
display: inline-block;
border-spacing: 0px;
box-sizing: border-box;
color: #000000;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-header-landing__nav {
display: flex;
align-items: flex-end;
box-sizing: border-box;
height: 100%;
padding: 0px;
margin: 0px;
list-style-type: none;
}
.c-header-landing__nav-item {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-right: 3px;
}
.c-header-landing__nav-link {
display: flex;
justify-content: center;
box-sizing: border-box;
width: 72px;
height: 100%;
min-height: 72px;
position: relative;
color: #53575B;
cursor: pointer;
font-family: "Avenir Next", -apple-system, system-ui, Roboto, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 12px;
font-weight: 600;
text-decoration-line: none;
padding-top: 2px;
}
.c-header-landing__nav-link::before {
content: "";
display: block;
box-sizing: border-box;
width: 72px;
height: 64px;
position: absolute;
top: 4px;
right: 0px;
bottom: 4px;
left: 0px;
background-color: #FFFFFF;
border-radius: 8px;
transition: background-color 0.1s ease;
}
.c-header-landing__group {
display: flex;
flex-direction: column;
justify-content: flex-end;
align-items: center;
box-sizing: border-box;
position: relative;
}
.c-header-landing__group-2 {
display: block;
box-sizing: border-box;
margin-bottom: 4px;
}
.c-header-landing__icon {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-landing__text {
display: block;
box-sizing: border-box;
padding-bottom: 4px;
border-bottom-width: 2px;
border-bottom-style: solid;
border-bottom-color: transparent;
}
.c-header-landing__nav-item-2 {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-right: 3px;
margin-left: 3px;
}
.c-header-landing__icon-2 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 21px;
height: 23px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-landing__group-3 {
display: block;
box-sizing: border-box;
position: absolute;
top: 10px;
right: -10px;
}
.c-header-landing__icon-3 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 26px;
height: 12px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-landing__icon-4 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 22px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-landing__icon-5 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 25px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-landing__nav-item-3 {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-left: 3px;
}
.c-header-landing__icon-6 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 26px;
height: 26px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-landing__nav-link:hover::before {
background-color: #F0F1F2;
}
States
header-landing-nav-linkhover: ::before background-color #F0F1F2
Header (landing, 2)
Verification: verified against the live page at desktop.
Variant observed on https://www.snapchat.com/.
Anatomy
header-landing-2: the component root, a<nav>(.c-header-landing-2)header-landing-2-group: inner flex row (.c-header-landing-2__group)header-landing-2-group-2: inner block (.c-header-landing-2__group-2)header-landing-2-logo: link (.c-header-landing-2__logo)header-landing-2-logo-icon: icon placeholder, 24px (.c-header-landing-2__logo-icon)header-landing-2-inner: inner block (.c-header-landing-2__inner)header-landing-2-group-3: inner flex row (.c-header-landing-2__group-3)header-landing-2-group-4: inner group (.c-header-landing-2__group-4)header-landing-2-icon: icon placeholder, 24px (.c-header-landing-2__icon, 2 instances)header-landing-2-group-5: inner group (.c-header-landing-2__group-5)header-landing-2-group-6: inner flex row (.c-header-landing-2__group-6)header-landing-2-nav: inner flex row (.c-header-landing-2__nav)header-landing-2-nav-item: inner group (.c-header-landing-2__nav-item)header-landing-2-nav-link: link (.c-header-landing-2__nav-link, 5 instances)header-landing-2-group-7: inner flex column (.c-header-landing-2__group-7, 5 instances)header-landing-2-group-8: inner group (.c-header-landing-2__group-8, 5 instances)header-landing-2-text: label text, 7 characters (.c-header-landing-2__text, 5 instances)header-landing-2-nav-item-2: inner group (.c-header-landing-2__nav-item-2, 3 instances)header-landing-2-icon-2: icon placeholder, 21x23px (.c-header-landing-2__icon-2)header-landing-2-group-9: inner group (.c-header-landing-2__group-9)header-landing-2-icon-3: icon placeholder, 26x12px (.c-header-landing-2__icon-3)header-landing-2-icon-4: icon placeholder, 22x24px (.c-header-landing-2__icon-4)header-landing-2-icon-5: icon placeholder, 25x24px (.c-header-landing-2__icon-5)header-landing-2-nav-item-3: inner group (.c-header-landing-2__nav-item-3)header-landing-2-icon-6: icon placeholder, 26px (.c-header-landing-2__icon-6)header-landing-2-group-10: inner flex row (.c-header-landing-2__group-10)header-landing-2-group-11: inner block (.c-header-landing-2__group-11)header-landing-2-group-12: inner block (.c-header-landing-2__group-12)header-landing-2-menu-toggle: button (.c-header-landing-2__menu-toggle)header-landing-2-menu-toggle-icon: icon placeholder, 18px (.c-header-landing-2__menu-toggle-icon)header-landing-2-cta: link, 12-character label (.c-header-landing-2__cta, 2 instances)
Recipe
HTML · CSS
<div class="c-header-landing-2-scope">
<nav class="c-header-landing-2">
<div class="c-header-landing-2__group">
<div class="c-header-landing-2__group-2">
<a class="c-header-landing-2__logo" href="#">
<span class="c-header-landing-2__logo-icon" aria-hidden="true"></span>
</a>
</div>
<div class="c-header-landing-2__inner">
<div class="c-header-landing-2__group-3">
<span class="c-header-landing-2__group-4">
<span class="c-header-landing-2__icon" aria-hidden="true"></span>
</span>
<div class="c-header-landing-2__group-5"></div>
</div>
</div>
</div>
<div class="c-header-landing-2__group-6">
<ul class="c-header-landing-2__nav">
<li class="c-header-landing-2__nav-item">
<a class="c-header-landing-2__nav-link" href="#">
<span class="c-header-landing-2__group-7">
<span class="c-header-landing-2__group-8">
<span class="c-header-landing-2__icon" aria-hidden="true"></span>
</span>
<span class="c-header-landing-2__text">lorem i</span>
</span>
</a>
</li>
<li class="c-header-landing-2__nav-item-2">
<a class="c-header-landing-2__nav-link" href="#">
<span class="c-header-landing-2__group-7">
<span class="c-header-landing-2__group-8">
<span class="c-header-landing-2__icon-2" aria-hidden="true"></span>
</span>
<span class="c-header-landing-2__text">lorem ips</span>
</span>
</a>
</li>
<li class="c-header-landing-2__nav-item-2">
<a class="c-header-landing-2__nav-link" href="#">
<span class="c-header-landing-2__group-7">
<span class="c-header-landing-2__group-9">
<span class="c-header-landing-2__icon-3" aria-hidden="true"></span>
</span>
<span class="c-header-landing-2__group-8">
<span class="c-header-landing-2__icon-4" aria-hidden="true"></span>
</span>
<span class="c-header-landing-2__text">lore</span>
</span>
</a>
</li>
<li class="c-header-landing-2__nav-item-2">
<a class="c-header-landing-2__nav-link" href="#">
<span class="c-header-landing-2__group-7">
<span class="c-header-landing-2__group-8">
<span class="c-header-landing-2__icon-5" aria-hidden="true"></span>
</span>
<span class="c-header-landing-2__text">lorem</span>
</span>
</a>
</li>
<li class="c-header-landing-2__nav-item-3">
<a class="c-header-landing-2__nav-link" href="#">
<span class="c-header-landing-2__group-7">
<span class="c-header-landing-2__group-8">
<span class="c-header-landing-2__icon-6" aria-hidden="true"></span>
</span>
<span class="c-header-landing-2__text">lorem ips</span>
</span>
</a>
</li>
</ul>
</div>
<div class="c-header-landing-2__group-10">
<div class="c-header-landing-2__group-11">
<div class="c-header-landing-2__group-12">
<button class="c-header-landing-2__menu-toggle" type="button">
<span class="c-header-landing-2__menu-toggle-icon" aria-hidden="true"></span>
</button>
</div>
</div>
<a class="c-header-landing-2__cta" href="#">lorem ipsum</a>
<a class="c-header-landing-2__cta" href="#">lorem ip</a>
</div>
</nav>
</div>
.c-header-landing-2-scope {
background-color: #FFFFFF;
color: #000000;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-header-landing-2 {
display: flex;
justify-content: center;
border-spacing: 0px;
box-sizing: border-box;
height: 72px;
background-color: #FFFFFF;
color: #000000;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
border-bottom-width: 1px;
border-bottom-style: solid;
border-bottom-color: #F0F1F2;
}
.c-header-landing-2__group {
display: flex;
align-items: center;
flex-grow: 1;
flex-basis: 1px;
box-sizing: border-box;
height: 72px;
}
.c-header-landing-2__group-2 {
display: block;
box-sizing: border-box;
width: 72px;
height: 72px;
padding: 8px;
}
.c-header-landing-2__logo {
display: inline-flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: 56px;
height: 56px;
color: #0000EE;
border-radius: 8px;
cursor: pointer;
text-decoration-line: underline;
text-decoration-color: #0000EE;
transition: background-color 0.1s ease;
}
.c-header-landing-2__logo-icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-landing-2__inner {
display: block;
box-sizing: border-box;
max-width: 181px;
}
.c-header-landing-2__group-3 {
display: flex;
align-items: center;
box-sizing: border-box;
width: 100%;
position: relative;
}
.c-header-landing-2__group-4 {
display: block;
box-sizing: border-box;
position: absolute;
margin-top: 5px;
margin-left: 9px;
}
.c-header-landing-2__icon {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-landing-2__group-5 {
display: block;
box-sizing: border-box;
width: 181px;
height: 40px;
padding: 10px 30px 10px 40px;
overflow-x: clip;
overflow-y: clip;
background-color: #F0F1F2;
color: #53575B;
border: 0;
border-radius: 20px;
cursor: text;
font-family: Arial;
font-size: 12px;
font-weight: 700;
line-height: 14px;
letter-spacing: normal;
text-transform: none;
text-align: start;
text-overflow: ellipsis;
transition: all 0.2s ease-in-out;
}
.c-header-landing-2__group-6 {
display: flex;
box-sizing: border-box;
height: 72px;
}
.c-header-landing-2__nav {
display: flex;
align-items: flex-end;
box-sizing: border-box;
height: 100%;
padding: 0px;
margin: 0px;
list-style-type: none;
}
.c-header-landing-2__nav-item {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-right: 3px;
}
.c-header-landing-2__nav-link {
display: flex;
justify-content: center;
box-sizing: border-box;
width: 72px;
height: 100%;
min-height: 72px;
position: relative;
color: #53575B;
cursor: pointer;
font-family: "Avenir Next", -apple-system, system-ui, Roboto, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 12px;
font-weight: 600;
text-decoration-line: none;
padding-top: 2px;
}
.c-header-landing-2__nav-link::before {
content: "";
display: block;
box-sizing: border-box;
width: 72px;
height: 64px;
position: absolute;
top: 4px;
right: 0px;
bottom: 4px;
left: 0px;
background-color: #FFFFFF;
border-radius: 8px;
transition: background-color 0.1s ease;
}
.c-header-landing-2__group-7 {
display: flex;
flex-direction: column;
justify-content: flex-end;
align-items: center;
box-sizing: border-box;
position: relative;
}
.c-header-landing-2__group-8 {
display: block;
box-sizing: border-box;
margin-bottom: 4px;
}
.c-header-landing-2__text {
display: block;
box-sizing: border-box;
padding-bottom: 4px;
border-bottom-width: 2px;
border-bottom-style: solid;
border-bottom-color: transparent;
}
.c-header-landing-2__nav-item-2 {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-right: 3px;
margin-left: 3px;
}
.c-header-landing-2__icon-2 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 21px;
height: 23px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-landing-2__group-9 {
display: block;
box-sizing: border-box;
position: absolute;
top: 10px;
right: -10px;
}
.c-header-landing-2__icon-3 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 26px;
height: 12px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-landing-2__icon-4 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 22px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-landing-2__icon-5 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 25px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-landing-2__nav-item-3 {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-left: 3px;
}
.c-header-landing-2__icon-6 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 26px;
height: 26px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-landing-2__group-10 {
display: flex;
justify-content: flex-end;
align-items: center;
flex-grow: 1;
flex-basis: 1px;
box-sizing: border-box;
height: 72px;
padding-right: 24px;
}
.c-header-landing-2__group-11 {
display: block;
box-sizing: border-box;
margin-right: 12px;
}
.c-header-landing-2__group-12 {
display: block;
box-sizing: border-box;
position: relative;
}
.c-header-landing-2__menu-toggle {
display: inline-flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: 40px;
height: 40px;
padding: 0px;
background-color: #F0F1F2;
color: #121314;
border: 0;
border-radius: 100%;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
letter-spacing: normal;
text-transform: none;
text-align: center;
transition: background-color 0.2s ease;
}
.c-header-landing-2__menu-toggle-icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 18px;
height: 18px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-landing-2__cta {
display: flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: fit-content;
padding: 8px 16px;
background-color: #121314;
color: #FFFFFF;
border-radius: 100px;
cursor: pointer;
font-size: 14px;
font-weight: 500;
line-height: 16px;
text-decoration-line: none;
margin-left: 10px;
}
.c-header-landing-2__logo:hover {
background-color: #FFFC00;
}
.c-header-landing-2__nav-link:hover::before {
background-color: #F0F1F2;
}
.c-header-landing-2__menu-toggle:hover {
background-color: #C7C7CC;
}
States
header-landing-2-logohover (header-landing-2-logo-hover): background-color #FFFC00header-landing-2-nav-linkhover: ::before background-color #F0F1F2header-landing-2-menu-togglehover (header-landing-2-menu-toggle-hover): background-color #C7C7CC
Header (inner)
Verification: flagged, the header-inner-group-12 x did not reproduce the measured 1173px after 2 correction attempts.
Variant observed on https://www.snapchat.com/spotlight.
Anatomy
header-inner: the component root, a<nav>(.c-header-inner)header-inner-group: inner flex row (.c-header-inner__group)header-inner-group-2: inner block (.c-header-inner__group-2)header-inner-logo: link (.c-header-inner__logo)header-inner-logo-icon: icon placeholder, 24px (.c-header-inner__logo-icon)header-inner-inner: inner block (.c-header-inner__inner)header-inner-group-3: inner flex row (.c-header-inner__group-3)header-inner-group-4: inner group (.c-header-inner__group-4)header-inner-icon: icon placeholder, 24px (.c-header-inner__icon, 2 instances)header-inner-group-5: inner group (.c-header-inner__group-5)header-inner-group-6: inner flex row (.c-header-inner__group-6)header-inner-nav: inner flex row (.c-header-inner__nav)header-inner-nav-item: inner group (.c-header-inner__nav-item)header-inner-nav-link: link (.c-header-inner__nav-link, 4 instances)header-inner-group-7: inner flex column (.c-header-inner__group-7, 5 instances)header-inner-group-8: inner group (.c-header-inner__group-8, 5 instances)header-inner-text: label text, 7 characters (.c-header-inner__text, 4 instances)header-inner-nav-item-2: inner group (.c-header-inner__nav-item-2, 3 instances)header-inner-nav-link-2: link (.c-header-inner__nav-link-2)header-inner-icon-2: icon placeholder, 21x23px (.c-header-inner__icon-2)header-inner-text-2: label text, 9 characters (.c-header-inner__text-2)header-inner-group-9: inner group (.c-header-inner__group-9)header-inner-icon-3: icon placeholder, 26x12px (.c-header-inner__icon-3)header-inner-icon-4: icon placeholder, 22x24px (.c-header-inner__icon-4)header-inner-icon-5: icon placeholder, 25x24px (.c-header-inner__icon-5)header-inner-nav-item-3: inner group (.c-header-inner__nav-item-3)header-inner-icon-6: icon placeholder, 26px (.c-header-inner__icon-6)header-inner-group-10: inner flex row (.c-header-inner__group-10)header-inner-group-11: inner block (.c-header-inner__group-11)header-inner-group-12: inner block (.c-header-inner__group-12)header-inner-cta: thebutton-ghost-2button (.c-header-inner__cta)header-inner-cta-icon: icon placeholder, 18px (.c-header-inner__cta-icon)header-inner-cta-2: thebutton-primary-2button, 8-character label (.c-header-inner__cta-2)header-inner-cta-3: thebutton-secondary-2button, 6-character label (.c-header-inner__cta-3)
Recipe
HTML · CSS
<div class="c-header-inner-scope">
<nav class="c-header-inner">
<div class="c-header-inner__group">
<div class="c-header-inner__group-2">
<a class="c-header-inner__logo" href="#">
<span class="c-header-inner__logo-icon" aria-hidden="true"></span>
</a>
</div>
<div class="c-header-inner__inner">
<div class="c-header-inner__group-3">
<span class="c-header-inner__group-4">
<span class="c-header-inner__icon" aria-hidden="true"></span>
</span>
<div class="c-header-inner__group-5"></div>
</div>
</div>
</div>
<div class="c-header-inner__group-6">
<ul class="c-header-inner__nav">
<li class="c-header-inner__nav-item">
<a class="c-header-inner__nav-link" href="#">
<span class="c-header-inner__group-7">
<span class="c-header-inner__group-8">
<span class="c-header-inner__icon" aria-hidden="true"></span>
</span>
<span class="c-header-inner__text">lorem i</span>
</span>
</a>
</li>
<li class="c-header-inner__nav-item-2">
<a class="c-header-inner__nav-link-2" href="#">
<span class="c-header-inner__group-7">
<span class="c-header-inner__group-8">
<span class="c-header-inner__icon-2" aria-hidden="true"></span>
</span>
<span class="c-header-inner__text-2">lorem ips</span>
</span>
</a>
</li>
<li class="c-header-inner__nav-item-2">
<a class="c-header-inner__nav-link" href="#">
<span class="c-header-inner__group-7">
<span class="c-header-inner__group-9">
<span class="c-header-inner__icon-3" aria-hidden="true"></span>
</span>
<span class="c-header-inner__group-8">
<span class="c-header-inner__icon-4" aria-hidden="true"></span>
</span>
<span class="c-header-inner__text">lore</span>
</span>
</a>
</li>
<li class="c-header-inner__nav-item-2">
<a class="c-header-inner__nav-link" href="#">
<span class="c-header-inner__group-7">
<span class="c-header-inner__group-8">
<span class="c-header-inner__icon-5" aria-hidden="true"></span>
</span>
<span class="c-header-inner__text">lorem</span>
</span>
</a>
</li>
<li class="c-header-inner__nav-item-3">
<a class="c-header-inner__nav-link" href="#">
<span class="c-header-inner__group-7">
<span class="c-header-inner__group-8">
<span class="c-header-inner__icon-6" aria-hidden="true"></span>
</span>
<span class="c-header-inner__text">lorem ips</span>
</span>
</a>
</li>
</ul>
</div>
<div class="c-header-inner__group-10">
<div class="c-header-inner__group-11">
<div class="c-header-inner__group-12">
<button class="c-header-inner__cta" type="button">
<span class="c-header-inner__cta-icon" aria-hidden="true"></span>
</button>
</div>
</div>
<a class="c-header-inner__cta-2" href="#">lorem ip</a>
<button class="c-header-inner__cta-3" type="button">lorem</button>
</div>
</nav>
</div>
.c-header-inner-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-header-inner {
display: flex;
justify-content: center;
border-spacing: 0px;
box-sizing: border-box;
height: 72px;
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
border-bottom-width: 1px;
border-bottom-style: solid;
border-bottom-color: #F0F1F2;
}
.c-header-inner__group {
display: flex;
align-items: center;
flex-grow: 1;
flex-basis: 1px;
box-sizing: border-box;
height: 72px;
}
.c-header-inner__group-2 {
display: block;
box-sizing: border-box;
width: 72px;
height: 72px;
padding: 8px;
}
.c-header-inner__logo {
display: inline-flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: 56px;
height: 56px;
color: #0000EE;
border-radius: 8px;
cursor: pointer;
text-decoration-line: underline;
text-decoration-color: #0000EE;
transition: background-color 0.1s ease;
}
.c-header-inner__logo-icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner__inner {
display: block;
box-sizing: border-box;
max-width: 181px;
}
.c-header-inner__group-3 {
display: flex;
align-items: center;
box-sizing: border-box;
width: 100%;
position: relative;
}
.c-header-inner__group-4 {
display: block;
box-sizing: border-box;
position: absolute;
margin-top: 5px;
margin-left: 9px;
}
.c-header-inner__icon {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner__group-5 {
display: block;
box-sizing: border-box;
width: 181px;
height: 40px;
padding: 10px 30px 10px 40px;
overflow-x: clip;
overflow-y: clip;
background-color: #F0F1F2;
color: #53575B;
border: 0;
border-radius: 20px;
cursor: text;
font-family: Arial;
font-size: 12px;
font-weight: 700;
line-height: 14px;
letter-spacing: normal;
text-transform: none;
text-align: start;
text-overflow: ellipsis;
transition: all 0.2s ease-in-out;
}
.c-header-inner__group-6 {
display: flex;
box-sizing: border-box;
height: 72px;
}
.c-header-inner__nav {
display: flex;
align-items: flex-end;
box-sizing: border-box;
height: 100%;
padding: 0px;
margin: 0px;
list-style-type: none;
}
.c-header-inner__nav-item {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-right: 3px;
}
.c-header-inner__nav-link {
display: flex;
justify-content: center;
box-sizing: border-box;
width: 72px;
height: 100%;
min-height: 72px;
position: relative;
color: #53575B;
cursor: pointer;
font-family: "Avenir Next", -apple-system, system-ui, Roboto, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 12px;
font-weight: 600;
text-decoration-line: none;
padding-top: 2px;
}
.c-header-inner__nav-link::before {
content: "";
display: block;
box-sizing: border-box;
width: 72px;
height: 64px;
position: absolute;
top: 4px;
right: 0px;
bottom: 4px;
left: 0px;
background-color: #FFFFFF;
border-radius: 8px;
transition: background-color 0.1s ease;
}
.c-header-inner__group-7 {
display: flex;
flex-direction: column;
justify-content: flex-end;
align-items: center;
box-sizing: border-box;
position: relative;
}
.c-header-inner__group-8 {
display: block;
box-sizing: border-box;
margin-bottom: 4px;
}
.c-header-inner__text {
display: block;
box-sizing: border-box;
padding-bottom: 4px;
border-bottom-width: 2px;
border-bottom-style: solid;
border-bottom-color: transparent;
}
.c-header-inner__nav-item-2 {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-right: 3px;
margin-left: 3px;
}
.c-header-inner__nav-link-2 {
display: flex;
justify-content: center;
box-sizing: border-box;
width: 72px;
height: 100%;
min-height: 72px;
position: relative;
color: #121314;
cursor: pointer;
font-family: "Avenir Next", -apple-system, system-ui, Roboto, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 12px;
font-weight: 700;
text-decoration-line: none;
padding-top: 2px;
}
.c-header-inner__nav-link-2::before {
content: "";
display: block;
box-sizing: border-box;
width: 72px;
height: 64px;
position: absolute;
top: 4px;
right: 0px;
bottom: 4px;
left: 0px;
background-color: #FFFFFF;
border-radius: 8px;
transition: background-color 0.1s ease;
}
.c-header-inner__icon-2 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 21px;
height: 23px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner__text-2 {
display: block;
box-sizing: border-box;
padding-bottom: 4px;
border-bottom-width: 2px;
border-bottom-style: solid;
border-bottom-color: #121314;
}
.c-header-inner__group-9 {
display: block;
box-sizing: border-box;
position: absolute;
top: 10px;
right: -10px;
}
.c-header-inner__icon-3 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 26px;
height: 12px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner__icon-4 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 22px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner__icon-5 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 25px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner__nav-item-3 {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-left: 3px;
}
.c-header-inner__icon-6 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 26px;
height: 26px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner__group-10 {
display: flex;
justify-content: flex-end;
align-items: center;
flex-grow: 1;
flex-basis: 1px;
box-sizing: border-box;
height: 72px;
padding-right: 24px;
}
.c-header-inner__group-11 {
display: block;
box-sizing: border-box;
margin-right: 12px;
}
.c-header-inner__group-12 {
display: block;
box-sizing: border-box;
position: relative;
}
.c-header-inner__cta {
display: inline-flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: 40px;
height: 40px;
padding: 0px;
background-color: #F0F1F2;
color: #121314;
border: 0;
border-radius: 100%;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
letter-spacing: normal;
text-transform: none;
text-align: center;
transition: background-color 0.2s ease;
}
.c-header-inner__cta-icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 18px;
height: 18px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner__cta-2 {
display: flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: fit-content;
padding: 8px 16px;
background-color: #121314;
color: #FFFFFF;
border-radius: 100px;
cursor: pointer;
font-size: 14px;
font-weight: 500;
line-height: 16px;
text-decoration-line: none;
margin-left: 10px;
}
.c-header-inner__cta-3 {
display: flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: fit-content;
padding: 8px 16px;
background-color: #FFFC00;
color: #121314;
border: 0;
border-radius: 100px;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 500;
line-height: 16px;
letter-spacing: normal;
text-transform: none;
text-align: center;
white-space: nowrap;
margin-left: 10px;
}
.c-header-inner__logo:hover {
background-color: #FFFC00;
}
.c-header-inner__nav-link:hover::before {
background-color: #F0F1F2;
}
.c-header-inner__nav-link-2:hover::before {
background-color: #F0F1F2;
}
.c-header-inner__cta:hover {
background-color: #C7C7CC;
}
States
header-inner-logohover (header-inner-logo-hover): background-color #FFFC00header-inner-nav-linkhover: ::before background-color #F0F1F2header-inner-nav-link-2hover: ::before background-color #F0F1F2header-inner-ctahover (header-inner-cta-hover): background-color #C7C7CC
Header (inner, 2)
Verification: verified against the live page at desktop.
Variant observed on https://www.snapchat.com/spotlight.
Anatomy
header-inner-2: the component root, a<nav>(.c-header-inner-2)header-inner-2-nav: inner flex row (.c-header-inner-2__nav)header-inner-2-nav-item: inner group (.c-header-inner-2__nav-item)header-inner-2-nav-link: link (.c-header-inner-2__nav-link, 4 instances)header-inner-2-group: inner flex column (.c-header-inner-2__group, 5 instances)header-inner-2-group-2: inner group (.c-header-inner-2__group-2, 5 instances)header-inner-2-icon: icon placeholder, 24px (.c-header-inner-2__icon)header-inner-2-text: label text, 7 characters (.c-header-inner-2__text, 4 instances)header-inner-2-nav-item-2: inner group (.c-header-inner-2__nav-item-2, 3 instances)header-inner-2-nav-link-2: link (.c-header-inner-2__nav-link-2)header-inner-2-icon-2: icon placeholder, 21x23px (.c-header-inner-2__icon-2)header-inner-2-text-2: label text, 9 characters (.c-header-inner-2__text-2)header-inner-2-group-3: inner group (.c-header-inner-2__group-3)header-inner-2-icon-3: icon placeholder, 26x12px (.c-header-inner-2__icon-3)header-inner-2-icon-4: icon placeholder, 22x24px (.c-header-inner-2__icon-4)header-inner-2-icon-5: icon placeholder, 25x24px (.c-header-inner-2__icon-5)header-inner-2-nav-item-3: inner group (.c-header-inner-2__nav-item-3)header-inner-2-icon-6: icon placeholder, 26px (.c-header-inner-2__icon-6)
Recipe
HTML · CSS
<div class="c-header-inner-2-scope">
<nav class="c-header-inner-2">
<ul class="c-header-inner-2__nav">
<li class="c-header-inner-2__nav-item">
<a class="c-header-inner-2__nav-link" href="#">
<span class="c-header-inner-2__group">
<span class="c-header-inner-2__group-2">
<span class="c-header-inner-2__icon" aria-hidden="true"></span>
</span>
<span class="c-header-inner-2__text">lorem i</span>
</span>
</a>
</li>
<li class="c-header-inner-2__nav-item-2">
<a class="c-header-inner-2__nav-link-2" href="#">
<span class="c-header-inner-2__group">
<span class="c-header-inner-2__group-2">
<span class="c-header-inner-2__icon-2" aria-hidden="true"></span>
</span>
<span class="c-header-inner-2__text-2">lorem ips</span>
</span>
</a>
</li>
<li class="c-header-inner-2__nav-item-2">
<a class="c-header-inner-2__nav-link" href="#">
<span class="c-header-inner-2__group">
<span class="c-header-inner-2__group-3">
<span class="c-header-inner-2__icon-3" aria-hidden="true"></span>
</span>
<span class="c-header-inner-2__group-2">
<span class="c-header-inner-2__icon-4" aria-hidden="true"></span>
</span>
<span class="c-header-inner-2__text">lore</span>
</span>
</a>
</li>
<li class="c-header-inner-2__nav-item-2">
<a class="c-header-inner-2__nav-link" href="#">
<span class="c-header-inner-2__group">
<span class="c-header-inner-2__group-2">
<span class="c-header-inner-2__icon-5" aria-hidden="true"></span>
</span>
<span class="c-header-inner-2__text">lorem</span>
</span>
</a>
</li>
<li class="c-header-inner-2__nav-item-3">
<a class="c-header-inner-2__nav-link" href="#">
<span class="c-header-inner-2__group">
<span class="c-header-inner-2__group-2">
<span class="c-header-inner-2__icon-6" aria-hidden="true"></span>
</span>
<span class="c-header-inner-2__text">lorem ips</span>
</span>
</a>
</li>
</ul>
</nav>
</div>
.c-header-inner-2-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-header-inner-2 {
display: inline-block;
border-spacing: 0px;
box-sizing: border-box;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-header-inner-2__nav {
display: flex;
align-items: flex-end;
box-sizing: border-box;
height: 100%;
padding: 0px;
margin: 0px;
list-style-type: none;
}
.c-header-inner-2__nav-item {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-right: 3px;
}
.c-header-inner-2__nav-link {
display: flex;
justify-content: center;
box-sizing: border-box;
width: 72px;
height: 100%;
min-height: 72px;
position: relative;
color: #53575B;
cursor: pointer;
font-family: "Avenir Next", -apple-system, system-ui, Roboto, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 12px;
font-weight: 600;
text-decoration-line: none;
padding-top: 2px;
}
.c-header-inner-2__nav-link::before {
content: "";
display: block;
box-sizing: border-box;
width: 72px;
height: 64px;
position: absolute;
top: 4px;
right: 0px;
bottom: 4px;
left: 0px;
background-color: #FFFFFF;
border-radius: 8px;
transition: background-color 0.1s ease;
}
.c-header-inner-2__group {
display: flex;
flex-direction: column;
justify-content: flex-end;
align-items: center;
box-sizing: border-box;
position: relative;
}
.c-header-inner-2__group-2 {
display: block;
box-sizing: border-box;
margin-bottom: 4px;
}
.c-header-inner-2__icon {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner-2__text {
display: block;
box-sizing: border-box;
padding-bottom: 4px;
border-bottom-width: 2px;
border-bottom-style: solid;
border-bottom-color: transparent;
}
.c-header-inner-2__nav-item-2 {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-right: 3px;
margin-left: 3px;
}
.c-header-inner-2__nav-link-2 {
display: flex;
justify-content: center;
box-sizing: border-box;
width: 72px;
height: 100%;
min-height: 72px;
position: relative;
color: #121314;
cursor: pointer;
font-family: "Avenir Next", -apple-system, system-ui, Roboto, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 12px;
font-weight: 700;
text-decoration-line: none;
padding-top: 2px;
}
.c-header-inner-2__nav-link-2::before {
content: "";
display: block;
box-sizing: border-box;
width: 72px;
height: 64px;
position: absolute;
top: 4px;
right: 0px;
bottom: 4px;
left: 0px;
background-color: #FFFFFF;
border-radius: 8px;
transition: background-color 0.1s ease;
}
.c-header-inner-2__icon-2 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 21px;
height: 23px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner-2__text-2 {
display: block;
box-sizing: border-box;
padding-bottom: 4px;
border-bottom-width: 2px;
border-bottom-style: solid;
border-bottom-color: #121314;
}
.c-header-inner-2__group-3 {
display: block;
box-sizing: border-box;
position: absolute;
top: 10px;
right: -10px;
}
.c-header-inner-2__icon-3 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 26px;
height: 12px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner-2__icon-4 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 22px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner-2__icon-5 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 25px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner-2__nav-item-3 {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-left: 3px;
}
.c-header-inner-2__icon-6 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 26px;
height: 26px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner-2__nav-link:hover::before {
background-color: #F0F1F2;
}
.c-header-inner-2__nav-link-2:hover::before {
background-color: #F0F1F2;
}
States
header-inner-2-nav-linkhover: ::before background-color #F0F1F2header-inner-2-nav-link-2hover: ::before background-color #F0F1F2
Header (inner, 3)
Verification: flagged, the header-inner-3-group-12 x did not reproduce the measured 1173px after 2 correction attempts.
Variant observed on https://www.snapchat.com/discover.
Anatomy
header-inner-3: the component root, a<nav>(.c-header-inner-3)header-inner-3-group: inner flex row (.c-header-inner-3__group)header-inner-3-group-2: inner block (.c-header-inner-3__group-2)header-inner-3-logo: link (.c-header-inner-3__logo)header-inner-3-logo-icon: icon placeholder, 24px (.c-header-inner-3__logo-icon)header-inner-3-inner: inner block (.c-header-inner-3__inner)header-inner-3-group-3: inner flex row (.c-header-inner-3__group-3)header-inner-3-group-4: inner group (.c-header-inner-3__group-4)header-inner-3-icon: icon placeholder, 24px (.c-header-inner-3__icon, 2 instances)header-inner-3-group-5: inner group (.c-header-inner-3__group-5)header-inner-3-group-6: inner flex row (.c-header-inner-3__group-6)header-inner-3-nav: inner flex row (.c-header-inner-3__nav)header-inner-3-nav-item: inner group (.c-header-inner-3__nav-item)header-inner-3-nav-link: link (.c-header-inner-3__nav-link)header-inner-3-group-7: inner flex column (.c-header-inner-3__group-7, 5 instances)header-inner-3-group-8: inner group (.c-header-inner-3__group-8, 5 instances)header-inner-3-text: label text, 7 characters (.c-header-inner-3__text)header-inner-3-nav-item-2: inner group (.c-header-inner-3__nav-item-2, 3 instances)header-inner-3-nav-link-2: link (.c-header-inner-3__nav-link-2, 4 instances)header-inner-3-icon-2: icon placeholder, 21x23px (.c-header-inner-3__icon-2)header-inner-3-text-2: label text, 9 characters (.c-header-inner-3__text-2, 4 instances)header-inner-3-group-9: inner group (.c-header-inner-3__group-9)header-inner-3-icon-3: icon placeholder, 26x12px (.c-header-inner-3__icon-3)header-inner-3-icon-4: icon placeholder, 22x24px (.c-header-inner-3__icon-4)header-inner-3-icon-5: icon placeholder, 25x24px (.c-header-inner-3__icon-5)header-inner-3-nav-item-3: inner group (.c-header-inner-3__nav-item-3)header-inner-3-icon-6: icon placeholder, 26px (.c-header-inner-3__icon-6)header-inner-3-group-10: inner flex row (.c-header-inner-3__group-10)header-inner-3-group-11: inner block (.c-header-inner-3__group-11)header-inner-3-group-12: inner block (.c-header-inner-3__group-12)header-inner-3-cta: thebutton-ghost-5button (.c-header-inner-3__cta)header-inner-3-cta-icon: icon placeholder, 18px (.c-header-inner-3__cta-icon)header-inner-3-cta-2: thebutton-secondary-3button, 8-character label (.c-header-inner-3__cta-2)header-inner-3-cta-3: thebutton-primary-3button, 6-character label (.c-header-inner-3__cta-3)
Recipe
HTML · CSS
<div class="c-header-inner-3-scope">
<nav class="c-header-inner-3">
<div class="c-header-inner-3__group">
<div class="c-header-inner-3__group-2">
<a class="c-header-inner-3__logo" href="#">
<span class="c-header-inner-3__logo-icon" aria-hidden="true"></span>
</a>
</div>
<div class="c-header-inner-3__inner">
<div class="c-header-inner-3__group-3">
<span class="c-header-inner-3__group-4">
<span class="c-header-inner-3__icon" aria-hidden="true"></span>
</span>
<div class="c-header-inner-3__group-5"></div>
</div>
</div>
</div>
<div class="c-header-inner-3__group-6">
<ul class="c-header-inner-3__nav">
<li class="c-header-inner-3__nav-item">
<a class="c-header-inner-3__nav-link" href="#">
<span class="c-header-inner-3__group-7">
<span class="c-header-inner-3__group-8">
<span class="c-header-inner-3__icon" aria-hidden="true"></span>
</span>
<span class="c-header-inner-3__text">lorem i</span>
</span>
</a>
</li>
<li class="c-header-inner-3__nav-item-2">
<a class="c-header-inner-3__nav-link-2" href="#">
<span class="c-header-inner-3__group-7">
<span class="c-header-inner-3__group-8">
<span class="c-header-inner-3__icon-2" aria-hidden="true"></span>
</span>
<span class="c-header-inner-3__text-2">lorem ips</span>
</span>
</a>
</li>
<li class="c-header-inner-3__nav-item-2">
<a class="c-header-inner-3__nav-link-2" href="#">
<span class="c-header-inner-3__group-7">
<span class="c-header-inner-3__group-9">
<span class="c-header-inner-3__icon-3" aria-hidden="true"></span>
</span>
<span class="c-header-inner-3__group-8">
<span class="c-header-inner-3__icon-4" aria-hidden="true"></span>
</span>
<span class="c-header-inner-3__text-2">lore</span>
</span>
</a>
</li>
<li class="c-header-inner-3__nav-item-2">
<a class="c-header-inner-3__nav-link-2" href="#">
<span class="c-header-inner-3__group-7">
<span class="c-header-inner-3__group-8">
<span class="c-header-inner-3__icon-5" aria-hidden="true"></span>
</span>
<span class="c-header-inner-3__text-2">lorem</span>
</span>
</a>
</li>
<li class="c-header-inner-3__nav-item-3">
<a class="c-header-inner-3__nav-link-2" href="#">
<span class="c-header-inner-3__group-7">
<span class="c-header-inner-3__group-8">
<span class="c-header-inner-3__icon-6" aria-hidden="true"></span>
</span>
<span class="c-header-inner-3__text-2">lorem ips</span>
</span>
</a>
</li>
</ul>
</div>
<div class="c-header-inner-3__group-10">
<div class="c-header-inner-3__group-11">
<div class="c-header-inner-3__group-12">
<button class="c-header-inner-3__cta" type="button">
<span class="c-header-inner-3__cta-icon" aria-hidden="true"></span>
</button>
</div>
</div>
<a class="c-header-inner-3__cta-2" href="#">lorem ip</a>
<button class="c-header-inner-3__cta-3" type="button">lorem</button>
</div>
</nav>
</div>
.c-header-inner-3-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-header-inner-3 {
display: flex;
justify-content: center;
border-spacing: 0px;
box-sizing: border-box;
height: 72px;
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
border-bottom-width: 1px;
border-bottom-style: solid;
border-bottom-color: #F0F1F2;
}
.c-header-inner-3__group {
display: flex;
align-items: center;
flex-grow: 1;
flex-basis: 1px;
box-sizing: border-box;
height: 72px;
}
.c-header-inner-3__group-2 {
display: block;
box-sizing: border-box;
width: 72px;
height: 72px;
padding: 8px;
}
.c-header-inner-3__logo {
display: inline-flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: 56px;
height: 56px;
color: #0000EE;
border-radius: 8px;
cursor: pointer;
text-decoration-line: underline;
text-decoration-color: #0000EE;
transition: background-color 0.1s ease;
}
.c-header-inner-3__logo-icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner-3__inner {
display: block;
box-sizing: border-box;
max-width: 181px;
}
.c-header-inner-3__group-3 {
display: flex;
align-items: center;
box-sizing: border-box;
width: 100%;
position: relative;
}
.c-header-inner-3__group-4 {
display: block;
box-sizing: border-box;
position: absolute;
margin-top: 5px;
margin-left: 9px;
}
.c-header-inner-3__icon {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner-3__group-5 {
display: block;
box-sizing: border-box;
width: 181px;
height: 40px;
padding: 10px 30px 10px 40px;
overflow-x: clip;
overflow-y: clip;
background-color: #F0F1F2;
color: #53575B;
border: 0;
border-radius: 20px;
cursor: text;
font-family: Arial;
font-size: 12px;
font-weight: 700;
line-height: 14px;
letter-spacing: normal;
text-transform: none;
text-align: start;
text-overflow: ellipsis;
transition: all 0.2s ease-in-out;
}
.c-header-inner-3__group-6 {
display: flex;
box-sizing: border-box;
height: 72px;
}
.c-header-inner-3__nav {
display: flex;
align-items: flex-end;
box-sizing: border-box;
height: 100%;
padding: 0px;
margin: 0px;
list-style-type: none;
}
.c-header-inner-3__nav-item {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-right: 3px;
}
.c-header-inner-3__nav-link {
display: flex;
justify-content: center;
box-sizing: border-box;
width: 72px;
height: 100%;
min-height: 72px;
position: relative;
color: #121314;
cursor: pointer;
font-family: "Avenir Next", -apple-system, system-ui, Roboto, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 12px;
font-weight: 700;
text-decoration-line: none;
padding-top: 2px;
}
.c-header-inner-3__nav-link::before {
content: "";
display: block;
box-sizing: border-box;
width: 72px;
height: 64px;
position: absolute;
top: 4px;
right: 0px;
bottom: 4px;
left: 0px;
background-color: #FFFFFF;
border-radius: 8px;
transition: background-color 0.1s ease;
}
.c-header-inner-3__group-7 {
display: flex;
flex-direction: column;
justify-content: flex-end;
align-items: center;
box-sizing: border-box;
position: relative;
}
.c-header-inner-3__group-8 {
display: block;
box-sizing: border-box;
margin-bottom: 4px;
}
.c-header-inner-3__text {
display: block;
box-sizing: border-box;
padding-bottom: 4px;
border-bottom-width: 2px;
border-bottom-style: solid;
border-bottom-color: #121314;
}
.c-header-inner-3__nav-item-2 {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-right: 3px;
margin-left: 3px;
}
.c-header-inner-3__nav-link-2 {
display: flex;
justify-content: center;
box-sizing: border-box;
width: 72px;
height: 100%;
min-height: 72px;
position: relative;
color: #53575B;
cursor: pointer;
font-family: "Avenir Next", -apple-system, system-ui, Roboto, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 12px;
font-weight: 600;
text-decoration-line: none;
padding-top: 2px;
}
.c-header-inner-3__nav-link-2::before {
content: "";
display: block;
box-sizing: border-box;
width: 72px;
height: 64px;
position: absolute;
top: 4px;
right: 0px;
bottom: 4px;
left: 0px;
background-color: #FFFFFF;
border-radius: 8px;
transition: background-color 0.1s ease;
}
.c-header-inner-3__icon-2 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 21px;
height: 23px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner-3__text-2 {
display: block;
box-sizing: border-box;
padding-bottom: 4px;
border-bottom-width: 2px;
border-bottom-style: solid;
border-bottom-color: transparent;
}
.c-header-inner-3__group-9 {
display: block;
box-sizing: border-box;
position: absolute;
top: 10px;
right: -10px;
}
.c-header-inner-3__icon-3 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 26px;
height: 12px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner-3__icon-4 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 22px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner-3__icon-5 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 25px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner-3__nav-item-3 {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-left: 3px;
}
.c-header-inner-3__icon-6 {
display: inline-block;
flex-shrink: 0;
box-sizing: border-box;
width: 26px;
height: 26px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner-3__group-10 {
display: flex;
justify-content: flex-end;
align-items: center;
flex-grow: 1;
flex-basis: 1px;
box-sizing: border-box;
height: 72px;
padding-right: 24px;
}
.c-header-inner-3__group-11 {
display: block;
box-sizing: border-box;
margin-right: 12px;
}
.c-header-inner-3__group-12 {
display: block;
box-sizing: border-box;
position: relative;
}
.c-header-inner-3__cta {
display: inline-flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: 40px;
height: 40px;
padding: 0px;
background-color: #F0F1F2;
color: #121314;
border: 0;
border-radius: 100%;
cursor: pointer;
font-family: Arial;
font-size: 13.3333px;
font-weight: 400;
line-height: normal;
letter-spacing: normal;
text-transform: none;
text-align: center;
transition: background-color 0.2s ease;
}
.c-header-inner-3__cta-icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 18px;
height: 18px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header-inner-3__cta-2 {
display: flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: fit-content;
padding: 8px 16px;
background-color: #121314;
color: #FFFFFF;
border-radius: 100px;
cursor: pointer;
font-size: 14px;
font-weight: 500;
line-height: 16px;
text-decoration-line: none;
margin-left: 10px;
}
.c-header-inner-3__cta-3 {
display: flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: fit-content;
padding: 8px 16px;
background-color: #FFFC00;
color: #121314;
border: 0;
border-radius: 100px;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 14px;
font-weight: 500;
line-height: 16px;
letter-spacing: normal;
text-transform: none;
text-align: center;
white-space: nowrap;
margin-left: 10px;
}
.c-header-inner-3__logo:hover {
background-color: #FFFC00;
}
.c-header-inner-3__nav-link:hover::before {
background-color: #F0F1F2;
}
.c-header-inner-3__nav-link-2:hover::before {
background-color: #F0F1F2;
}
.c-header-inner-3__cta:hover {
background-color: #C7C7CC;
}
States
header-inner-3-logohover (header-inner-3-logo-hover): background-color #FFFC00header-inner-3-nav-linkhover: ::before background-color #F0F1F2header-inner-3-nav-link-2hover: ::before background-color #F0F1F2header-inner-3-ctahover (header-inner-3-cta-hover): background-color #C7C7CC
Action buttons
Action button
Verification: verified against the live page at desktop.
Anatomy
action-button: the component root, a<div>(.c-action-button)action-button-icon: icon placeholder, 24px (.c-action-button__icon)
Recipe
HTML · CSS
<div class="c-action-button-scope">
<div class="c-action-button">
<span class="c-action-button__icon" aria-hidden="true"></span>
</div>
</div>
.c-action-button-scope {
background-color: #F0F1F2;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-action-button {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: 40px;
height: 40px;
color: #121314;
border-radius: 50%;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
transition: all 0.3s ease-out;
}
.c-action-button__icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
States
- No hover or focus change was observed.
Action button (2)
Verification: verified against the live page at desktop.
Anatomy
action-button-2: the component root, a<div>(.c-action-button-2)action-button-2-group: inner flex row (.c-action-button-2__group)action-button-2-icon: icon placeholder, 32px (.c-action-button-2__icon)
Recipe
HTML · CSS
<div class="c-action-button-2-scope">
<div class="c-action-button-2">
<div class="c-action-button-2__group">
<span class="c-action-button-2__icon" aria-hidden="true"></span>
</div>
</div>
</div>
.c-action-button-2-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-action-button-2 {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: 40px;
height: 40px;
background-color: #F0F1F2;
color: #121314;
border-radius: 50%;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
transition: all 0.3s ease-out;
}
.c-action-button-2__group {
display: flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: 100%;
height: 100%;
}
.c-action-button-2__icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 32px;
height: 32px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
States
- No hover or focus change was observed.
Tabs
Tab
Verification: verified against the live page at desktop.
Anatomy
tab-active: the component root, a<button>(.c-tab-active), 8-character label
Recipe
HTML · CSS
<div class="c-tab-active-scope">
<button class="c-tab-active" type="button">lorem ip</button>
</div>
.c-tab-active-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-tab-active {
display: inline-block;
flex-grow: 1;
flex-basis: 0%;
border-spacing: 0px;
box-sizing: border-box;
min-width: max-content;
padding: 16px 24px;
position: relative;
background-color: transparent;
color: #121314;
border: 0;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 600;
line-height: 24px;
letter-spacing: normal;
text-transform: none;
text-align: center;
white-space: nowrap;
transition: all 0.2s ease-in-out;
}
.c-tab-active::after {
content: "";
display: block;
box-sizing: border-box;
width: 167px;
height: 2px;
position: absolute;
top: 54px;
right: 0px;
bottom: 0px;
left: 0px;
background-color: #121314;
border-top-left-radius: 2px;
border-top-right-radius: 2px;
}
.c-tab-active:hover {
background-color: #0000000D;
}
States
- hover (
tab-active-hover): background-color #0000000D
Tab
Verification: verified against the live page at desktop.
Anatomy
tab: the component root, a<button>(.c-tab), 7-character label
Recipe
HTML · CSS
<div class="c-tab-scope">
<button class="c-tab" type="button">lorem i</button>
</div>
.c-tab-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-tab {
display: inline-block;
flex-grow: 1;
flex-basis: 0%;
border-spacing: 0px;
box-sizing: border-box;
min-width: max-content;
padding: 16px 24px;
position: relative;
background-color: transparent;
color: #53575B;
border: 0;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 500;
line-height: 24px;
letter-spacing: normal;
text-transform: none;
text-align: center;
white-space: nowrap;
transition: all 0.2s ease-in-out;
}
.c-tab:hover {
background-color: #0000000D;
color: #121314;
}
States
- hover (
tab-hover): background-color #0000000D, color #121314
Video play control
Verification: verified against the live page at desktop.
Anatomy
video-play-control: the component root, a<div>(.c-video-play-control)video-play-control-group: inner flex row (.c-video-play-control__group)video-play-control-icon: icon placeholder, 32px (.c-video-play-control__icon)
Recipe
HTML · CSS
<div class="c-video-play-control-scope">
<div class="c-video-play-control">
<div class="c-video-play-control__group">
<span class="c-video-play-control__icon" aria-hidden="true"></span>
</div>
</div>
</div>
.c-video-play-control-scope {
background-color: #000000;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-video-play-control {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: 60px;
height: 60px;
background-color: #00000080;
color: #121314;
border-radius: 50%;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
transition: all 0.3s ease-out;
}
.c-video-play-control__group {
display: flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: 100%;
height: 100%;
}
.c-video-play-control__icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 32px;
height: 32px;
padding: 0.59375px 0.59375px 0.59375px 2.39062px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-video-play-control:hover {
background-color: #FFFFFF73;
}
States
- hover (
video-play-control-hover): background-color #FFFFFF73
Menu toggle
Verification: verified against the live page at desktop.
Anatomy
menu-toggle: the component root, a<div>(.c-menu-toggle)menu-toggle-icon: icon placeholder, 24px (.c-menu-toggle__icon)
Recipe
HTML · CSS
<div class="c-menu-toggle-scope">
<div class="c-menu-toggle">
<span class="c-menu-toggle__icon" aria-hidden="true"></span>
</div>
</div>
.c-menu-toggle-scope {
background-color: #000000;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-menu-toggle {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: 40px;
height: 40px;
color: #121314;
border-radius: 50%;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
transition: all 0.3s ease-out;
}
.c-menu-toggle__icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
States
- No hover or focus change was observed.
Mute control (3)
Verification: verified against the live page at desktop.
Anatomy
mute-control-3: the component root, a<div>(.c-mute-control-3)mute-control-3-icon: icon placeholder, 24x19px (.c-mute-control-3__icon)
Recipe
HTML · CSS
<div class="c-mute-control-3-scope">
<div class="c-mute-control-3">
<span class="c-mute-control-3__icon" aria-hidden="true"></span>
</div>
</div>
.c-mute-control-3-scope {
background-color: #000000;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-mute-control-3 {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: 40px;
height: 40px;
color: #121314;
border-radius: 50%;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
text-align: right;
transition: all 0.3s ease-out;
}
.c-mute-control-3__icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 19px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
States
- No hover or focus change was observed.
Share control
Verification: verified against the live page at desktop.
Anatomy
share-control: the component root, a<div>(.c-share-control)share-control-icon: icon placeholder, 24px (.c-share-control__icon)
Recipe
HTML · CSS
<div class="c-share-control-scope">
<div class="c-share-control">
<span class="c-share-control__icon" aria-hidden="true"></span>
</div>
</div>
.c-share-control-scope {
background-color: #000000;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-share-control {
display: inline-flex;
justify-content: center;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
width: 40px;
height: 40px;
color: #121314;
border-radius: 50%;
cursor: pointer;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
text-align: right;
transition: all 0.3s ease-out;
}
.c-share-control__icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 24px;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
States
- No hover or focus change was observed.
Creator badge
Verification: flagged, the render matched 96% of the original pixels, below the 96% required after 2 correction attempts.
Anatomy
creator-badge: the component root, a<button>(.c-creator-badge)creator-badge-group: inner flex row (.c-creator-badge__group)creator-badge-group-2: inner block (.c-creator-badge__group-2)creator-badge-group-3: inner flex row (.c-creator-badge__group-3)creator-badge-group-4: inner block (.c-creator-badge__group-4), content not capturedcreator-badge-group-5: inner block (.c-creator-badge__group-5)creator-badge-title: heading, 0 characters (.c-creator-badge__title)creator-badge-text: label text, 15 characters (.c-creator-badge__text)creator-badge-group-6: inner block (.c-creator-badge__group-6)creator-badge-group-7: inner flex row (.c-creator-badge__group-7), content not captured
Recipe
HTML · CSS
<div class="c-creator-badge-scope">
<button class="c-creator-badge" type="button">
<div class="c-creator-badge__group">
<div class="c-creator-badge__group-2">
<div class="c-creator-badge__group-3">
<div class="c-creator-badge__group-4"></div>
</div>
</div>
<div class="c-creator-badge__group-5">
<h5 class="c-creator-badge__title">
<span class="c-creator-badge__text">lorem ipsum dol</span>
</h5>
<div class="c-creator-badge__group-6">
<div class="c-creator-badge__group-7"></div>
</div>
</div>
</div>
</button>
</div>
.c-creator-badge-scope {
background-color: #000000;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-creator-badge {
display: block;
border-spacing: 0px;
box-sizing: border-box;
padding: 1px 6px;
position: absolute;
top: 0px;
background-color: transparent;
color: #000000;
border: 0;
cursor: pointer;
font-family: Arial;
font-size: 13.3333px;
font-weight: 400;
line-height: normal;
letter-spacing: normal;
text-transform: none;
text-align: center;
}
.c-creator-badge__group {
display: flex;
align-self: center;
box-sizing: border-box;
width: 100%;
padding: 25px;
overflow-x: hidden;
overflow-y: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.c-creator-badge__group-2 {
display: block;
box-sizing: border-box;
border-radius: 50%;
margin-right: 8px;
}
.c-creator-badge__group-3 {
display: flex;
justify-content: center;
box-sizing: border-box;
width: 41px;
height: 41px;
padding: 1px;
border-radius: 50%;
transition: all 0.25s ease;
}
.c-creator-badge__group-4 {
display: block;
box-sizing: border-box;
width: 35px;
height: 35px;
background-color: #FFFFFF;
border-radius: 50%;
}
.c-creator-badge__group-5 {
display: block;
box-sizing: border-box;
}
.c-creator-badge__title {
display: block;
box-sizing: border-box;
margin: 0px;
font-size: 16px;
font-weight: 700;
line-height: 22px;
}
.c-creator-badge__text {
display: inline-block;
box-sizing: border-box;
max-width: 290px;
overflow-x: hidden;
overflow-y: hidden;
color: #FFFFFF;
text-overflow: ellipsis;
}
.c-creator-badge__group-6 {
display: block;
box-sizing: border-box;
margin-top: -6px;
}
.c-creator-badge__group-7 {
display: flex;
align-self: center;
box-sizing: border-box;
width: 100%;
overflow-x: hidden;
overflow-y: hidden;
text-overflow: ellipsis;
}
States
- No hover or focus change was observed.
Navigation
Verification: verified against the live page at desktop.
Anatomy
navigation: the component root, a<nav>(.c-navigation)navigation-list: inner flex row (.c-navigation__list)navigation-item: inner group (.c-navigation__item)navigation-link: link (.c-navigation__link)navigation-group: inner flex column (.c-navigation__group, 5 instances), content not capturednavigation-item-2: inner group (.c-navigation__item-2, 3 instances)navigation-link-2: link (.c-navigation__link-2, 4 instances)navigation-item-3: inner group (.c-navigation__item-3)
Recipe
HTML · CSS
<div class="c-navigation-scope">
<nav class="c-navigation">
<ul class="c-navigation__list">
<li class="c-navigation__item">
<a class="c-navigation__link" href="#">
<span class="c-navigation__group"></span>
</a>
</li>
<li class="c-navigation__item-2">
<a class="c-navigation__link-2" href="#">
<span class="c-navigation__group"></span>
</a>
</li>
<li class="c-navigation__item-2">
<a class="c-navigation__link-2" href="#">
<span class="c-navigation__group"></span>
</a>
</li>
<li class="c-navigation__item-2">
<a class="c-navigation__link-2" href="#">
<span class="c-navigation__group"></span>
</a>
</li>
<li class="c-navigation__item-3">
<a class="c-navigation__link-2" href="#">
<span class="c-navigation__group"></span>
</a>
</li>
</ul>
</nav>
</div>
.c-navigation-scope {
background-color: #FFFFFF;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-navigation {
display: inline-block;
border-spacing: 0px;
box-sizing: border-box;
color: #121314;
font-family: "Avenir Next", Helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: normal;
}
.c-navigation__list {
display: flex;
align-items: flex-end;
box-sizing: border-box;
height: 100%;
padding: 0px;
margin: 0px;
list-style-type: none;
}
.c-navigation__item {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-right: 3px;
}
.c-navigation__link {
display: flex;
justify-content: center;
box-sizing: border-box;
width: 72px;
height: 100%;
min-height: 72px;
position: relative;
color: #121314;
cursor: pointer;
font-family: "Avenir Next", -apple-system, system-ui, Roboto, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 12px;
font-weight: 700;
text-decoration-line: none;
padding-top: 2px;
}
.c-navigation__link::before {
content: "";
display: block;
box-sizing: border-box;
width: 72px;
height: 64px;
position: absolute;
top: 4px;
right: 0px;
bottom: 4px;
left: 0px;
background-color: #FFFFFF;
border-radius: 8px;
transition: background-color 0.1s ease;
}
.c-navigation__group {
display: flex;
flex-direction: column;
justify-content: flex-end;
align-items: center;
box-sizing: border-box;
position: relative;
}
.c-navigation__item-2 {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-right: 3px;
margin-left: 3px;
}
.c-navigation__link-2 {
display: flex;
justify-content: center;
box-sizing: border-box;
width: 72px;
height: 100%;
min-height: 72px;
position: relative;
color: #53575B;
cursor: pointer;
font-family: "Avenir Next", -apple-system, system-ui, Roboto, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 12px;
font-weight: 600;
text-decoration-line: none;
padding-top: 2px;
}
.c-navigation__link-2::before {
content: "";
display: block;
box-sizing: border-box;
width: 72px;
height: 64px;
position: absolute;
top: 4px;
right: 0px;
bottom: 4px;
left: 0px;
background-color: #FFFFFF;
border-radius: 8px;
transition: background-color 0.1s ease;
}
.c-navigation__item-3 {
display: list-item;
box-sizing: border-box;
height: 100%;
margin-left: 3px;
}
States
- No hover or focus change was observed.
Do's and Don'ts
Do
- Two typefaces only. Keep Avenir Next for everything and Arial only for form-field text (
inputtypography). Do not introduce a third family. - Pills for labelled buttons. Every text button uses
rounded.6xl(100px):button-primary,button-secondary,button-primary-2,button-secondary-2,button-primary-3,button-secondary-3. Icon-only buttons (button-ghost-2,button-ghost-5,button-ghost-4) are circles (rounded.full). - Pair yellow with ink. Snap Yellow (
primary, #FFFC00) always carrieson-primary(#121314) text, as onbutton-secondary-2andbutton-primary-3. In the header it sits next to an Ink pill (button-primary-2, #121314 withon-darktext). - Blue marks the blue primary action. Action Blue (
accent-blue, #0096E5) is the fill ofbutton-primary(40px tall, white text) and appears on no other measured component fill. - Respect the measured control heights. Header CTAs are 32px (
button-primary-2,button-secondary-2). Icon buttons and the search field are 40px (button-ghost-2,input). Selects are 34px (select). The large media pill is 46px (button-secondary). - Use tonal fills for secondary chrome. Icon buttons and the search pill fill with
surface-subtle(#F0F1F2) and darken to #C7C7CC on hover (button-ghost-2). - Mark active nav with weight and underline. Use
caption-strong,inktext and a 2px #121314 bottom border (header-inner-text-2); inactive labels usecaptioninbody-muted. - Keep the soft shadow for floating elements. Use the observed tier
rgba(0, 0, 0, 0.14) 0px 2px 4px 0pxfor lift, such as a floating CTA, and lean on tonal surfaces everywhere else.
Don't
- Don't flood surfaces with
primary. Yellow is a single-CTA accent and a logo hover, not a section background or text color. - Don't square off buttons. Avoid
rounded.smorrounded.lgon buttons; those radii belong to selects (select) and the logo hit area (header-landing-2-logo). - Don't draw the header divider in
hairline. The header bottom border is 1px #F0F1F2 (header-landing-2).hairline(#CCCCCC) is for form-control outlines. - Don't add tracking. Keep letter spacing normal on headings and body; only
eyebrowcarries 0.78px. - Don't use pure
blackfor text. Useink(#121314);blackis for media backdrops and the legal bar. - Don't put flat dark pills on white canvas. Graphite (
surface-dark, #444546) belongs to buttons over media (button-secondary,card-button); on white use the Ink pill instead. - Don't stack shadows or invent blur. No backdrop-filter was measured, so over video use the translucent scrim of
video-play-controlinstead.
Responsive Behavior
Scope
This is a two-viewport analysis (one desktop, one mobile capture). Breakpoint values were not observed, so none are given.
What changes between desktop and mobile
- Header: the desktop header has three parts: a search pill on the left, a centered icon-over-label tab nav (Stories, Spotlight, Chat, Lenses, Snapchat+) and an Ink + Yellow CTA pair on the right. On mobile it collapses to a hamburger toggle, the search, and a single yellow "Open Snapchat" pill. The pill floats with the soft rgba(0, 0, 0, 0.14) 0px 2px 4px 0px shadow.
- Primary navigation moves from the top bar to a bottom tab bar on mobile.
- Home page: the asymmetric split (login column plus portrait-card grid) stacks into a single column. Cards become full-width and text centers.
- Link directories and the footer reduce their column count and stack.
- Spotlight: the two-pane layout is expected to stack the video above the detail column. This was not directly captured.
Touch targets
- Comfortable: the 40px icon controls (
button-ghost-2,header-landing-2-menu-toggle,action-button-2) and the 40pxinputare the touch-friendly size. - Small: 32px header pills (
button-primary-2,button-secondary-2) are below a 44px comfortable target. When building mobile-first, prefer the 40px or 46px (button-secondary) sizes for primary taps.
Iteration Guide
- Reference tokens, never raw hex. Use
ink,surface-subtle,primary,accent-blue. Component-only state colors (#C7C7CC hover, #0000000D tab wash) should be added as named state tokens before reuse, not pasted inline. - Never break the pill/circle rule. Labelled buttons are
rounded.6xl; icon buttons arerounded.full. A new button variant changes fill and height, never shape. - New button sizes copy an existing padding pair. Choose 8/16 (
button-primary-2-padding-y/-x), 12/20 (button-primary-padding-y/-x) or 15/30 (button-secondary-padding-y/-x). Pair them with thebuttontype token (14px/500). - Ration yellow. At most one
primaryelement per view. It always carrieson-primarytext and usually sits next to an Ink pill. Dark mode keepsprimaryandaccent-blueunchanged and swaps only neutral roles. - Add depth tonally first. Escalate in this order:
surface-subtlefill, then a hairline (#F0F1F2 for dividers,hairlinefor form outlines), then the single soft shadow tier, and only for floating elements. Do not introduce new shadow values or blur. - Typography edits stay on the ladder. Use the existing 15 tokens with weights 400/500/600/700 and normal tracking. Signal active states with a weight step plus the 2px ink underline, never with a color accent.
- Treat flagged recipes as approximate.
card,card-3,header-inner,header-inner-3,image-buttonandcreator-badgedid not reproduce exactly. Verify against screenshots before relying on their internal layout.
Known Gaps
- Flagged components (recipe did not reproduce exactly):
card(flagged: the render matched 5% of the original pixels, below the 96% required (instance 1) after 2 correction attempts). Its media-heavy layout is only approximated.card-3(flagged: the render matched 81% of the original pixels, below the 96% required (instance 4) after 2 correction attempts). Several inner groups' content was not captured.image-button(flagged: the render matched 53% of the original pixels, below the 96% required after 2 correction attempts).creator-badge(flagged: the render matched 96% of the original pixels, below the 96% required after 2 correction attempts).header-innerandheader-inner-3(flagged: thegroup-12x position did not reproduce the measured 1173px after 2 correction attempts). The right-hand CTA cluster position is uncertain.
- Unverifiable component:
card-2(not verifiable: what the page placed in it (photos, media, ads) covers most of it and nothing else differs, so the comparison could not be judged). - No page-level layout metrics: no section rhythm, page container max width or base spacing step was measured. Grid gaps exist only inside card recipe anatomy, not as spacing tokens.
- Header font discrepancy: the header landmark reports its link font family as Graphik, while every recipe reports Avenir Next. Avenir Next was retained.
- Interaction states are partial: hover fills were captured for icon buttons, tabs, the logo and the video control. Focus states were noted but not measured as values, and pressed/disabled states and button hover for the pill CTAs are unknown.
- Dark theme: dark colors were sampled, but no component recipe was captured in dark mode, so dark component fills are inferred from role swaps.
- Rare radii:
rounded.xs,rounded.5xlandrounded.7xleach appeared once; their intended use is unclear. - Unreached surfaces: animation, video playback behavior, logged-in and auth-walled surfaces (chat, profile), and breakpoints between the two captured viewports were not reached.
이 DESIGN.md 파일은 AI 코딩 에이전트가 읽는 언어인 영어로 되어 있어요.
Snapchat 공개 웹사이트에서 추출한 것으로, 공식 브랜드 가이드라인이 아니에요. 다른 사이트의 폰트 확인하기
비슷한 디자인 시스템
전체 보기
Dribbble
Dribbble의 디자인 시스템은 짙은 네이비에 가까운 검은색(#0d0c22)과 깔끔한 흰색 표면을 기반으로 합니다. 시그니처 핫핑크(#ea4c89) 강조색은 에디토리얼 강조와 인터랙티브 요소의 하이라이트에만 절제해서 사용합니다. 타이포그래피 체계는 모든 굵기에서 Mona Sans 한 가지 서체만 사용하며, 위계는 굵기와 크기만으로 표현합니다. 형태 언어는 알약 모양의 버튼(border-radius: 1e+07px)과 둥근 모서리의 카드(12px 반경)가 정의합니다. 레이아웃은 8px 기준 그리드를 바탕으로 여백을 넉넉하게 두며, 깊이감은 무거운 레이어링보다는 은은한 드롭 섀도로 표현합니다.

Airbnb
Airbnb의 디자인 시스템은 단일 독점 가변 폰트(Airbnb Cereal VF)를 중심으로 구축되어 있으며, 짙은 차콜(#222222)과 밝은 그레이를 기반으로 한 거의 무채색에 가까운 중립 팔레트를 사용합니다. 브랜드의 상징적인 "Rausch" 코랄 핑크(#ff385c)는 기본 CTA와 로고에만 제한적으로 사용됩니다. 레이아웃은 반응형 사진 카드 그리드로 이루어지며, 이미지와 텍스트의 비율을 여유 있게 가져갑니다. 카드에는 20px의 부드러운 둥근 모서리가 적용되고, 여러 겹으로 된 은은한 그림자 시스템이 강한 대비 없이 섬세한 깊이감을 만들어 냅니다. 핵심 사용자 행동을 하나로 묶는 검색창은 눈에 잘 띄는 알약 모양의 컨테이너로 구성되어 있습니다.
IKEA
IKEA의 글로벌 홈페이지는 굵고 평평한 디자인 시스템을 바탕으로 하며, 상징적인 IKEA Yellow(#ffdb00)를 주요 액션 영역으로, IKEA Blue(#0058a3)를 브랜드 로고 강조색으로 사용합니다. 전체 타이포그래피 체계는 Noto IKEA라는 단일 커스텀 서체로 구성되며, 400과 700 두께를 사용해 본문 14px에서 디스플레이 제목 51px까지 촘촘하게 정의된 크기 체계를 따릅니다. 입체감은 그림자가 아니라 색의 대비와 레이아웃 구조를 통해 전달됩니다. 레이아웃은 최대 너비 90rem의 컨테이너와 데스크톱 기준 1.5rem의 그리드 간격을 사용하며, 상호작용 요소에는 8px 모서리 반경 토큰을 일관되게 적용합니다. 오프화이트 배경(#fffefb)은 짙은 #111111 텍스트와 어우러져 따뜻함을 더하고, 대비가 높아 읽기 쉽고 접근성이 좋은 화면을 만들어 냅니다.

Notion
Notion의 마케팅 홈페이지는 짙은 네이비(#02093a) 히어로 섹션과 밝은(#f6f5f4) 본문 영역을 결합한 구성입니다. 모든 텍스트 역할에 커스텀 서체인 NotionInter를 사용합니다. 레이아웃은 거터 28px의 12열 그리드를 기반으로 하며, 카드에는 8px, 알약형 요소에는 9999px의 이중 모서리 반경을 적용합니다. 플로팅 UI 요소에는 여러 겹으로 이루어진 점진적 그림자 시스템을 사용합니다. 브랜드 블루(#2537b1)는 CTA와 강조 요소에 쓰이며, gray-200부터 gray-900까지의 의미 기반 회색 단계가 모든 텍스트와 표면의 위계를 구성합니다.

Railway
Railway의 디자인 시스템은 짙은 네이비 계열의 거의 검은 표면(#13111c, #0b0b0f)을 기반으로 한 다크 중심의 개발자 플랫폼 UI입니다. 고대비의 오프화이트 텍스트(#f7f7f8)와 보라색 브랜드 강조색(#853bce / #553f83)이 특징적입니다. 히어로 영역에는 에디토리얼한 무게감을 주기 위해 IBM Plex Serif를 사용하고, 모든 UI 문구는 Inter가 담당하며, 코드가 표시되는 곳에는 JetBrains Mono와 SF Mono를 씁니다. 입체감은 드롭 섀도 대신 rgba(255,255,255,0.2) 1.5px inset 흰색 발광 테두리로 표현되어, UI 전체에 유리 패널 같은 분위기를 줍니다. 간격 체계는 4px 단위를 기준으로 하며, 8/12/16/24/32의 리듬이 뚜렷합니다. 모서리 반경은 대체로 4px로 작게 유지되고, 카드와 히어로 컨테이너에는 선택적으로 8px과 16px을 적용합니다.

Shopify
Shopify의 마케팅 홈페이지는 화면 전체를 채우는 역동적인 동영상 히어로 섹션을 사용하며, 배경은 #02090a의 거의 검은색으로 위쪽 흰색 내비게이션 바와 강하게 대비됩니다. 주요 브랜드 강조색은 선명한 민트 그린 #36f4a4이며, 하이라이트와 인터랙티브 상태에만 절제해서 사용합니다. 타이포그래피는 디스플레이 및 에디토리얼 제목에 NeueHaasGrotesk를, UI 본문에 Inter-Variable을 나누어 적용합니다. CTA 버튼은 완전히 둥근 필(pill) 형태(border-radius: 9999px)를 사용합니다. 전체적인 시스템은 자신감 있고 고대비이며 열망을 자극하는 느낌으로, 방문자를 판매자로 전환하도록 설계되어 있습니다.