Switch between the rendered Visual preview and the Raw DESIGN.md.
XTB's design system embodies a modern, trustworthy fintech aesthetic built on clean minimalism and high contrast. The palette emphasizes dark, sophisticated neutrals paired with vibrant accent colors that signal action and confidence. The system prioritizes clarity and accessibility, using generous whitespace and deliberate typography to guide users through complex financial workflows. The visual language conveys professionalism and stability while maintaining approachability through warm, inviting interaction states. Every element is purposefully refined—this is investment-grade design.
Key Characteristics
#131825): Primary background for dark mode and high-contrast surfaces; primary text on light backgrounds#0F1215): Secondary dark background; alternate text color for subtle hierarchy#08AA54): Primary action color, success states, positive indicators, call-to-action buttons#D2323D): Error states, risk warnings, critical alerts#2C3E50): Tertiary interactive element color; hover states on neutral elements#404A64): Muted interactive states; disabled text#4E5B7E): Subtle borders and dividers#98A2A9): Placeholder text and helper copy#FFFFFF): Pure white for contrast and primary content backgrounds#F6F7F8): Light background, card surfaces, section backgrounds#F4F6F8): Subtle background variation for layering#DBE2EA): Input borders and dividers#D6E1EC): Secondary divider and subtle borders#828487): Disabled state text#EBECED): Minimal border definition#D9E0E8): Input field backgrounds#404A64 at 5% opacity): Input field backgrounds with transparency#F6F7F8): Default card and container background#FFFFFF): Highest-elevation surfaces and modalsPrimary: XTB Sans (or fallback: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif) Secondary: Roboto (fallback: "Helvetica Neue", Arial, sans-serif)
| Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
|---|---|---|---|---|---|---|
| Display / H1 | XTB Sans | 72px | 600 | 74px | 0px | Hero headlines and page titles |
| Heading / H2 | XTB Sans | 48px | 600 | 50px | 0px | Section headings and major subheaders |
| Subheading / H3 | XTB Sans | 20px | 700 | 28px | 0px | Card titles and subsection headers |
| Body Default | Roboto | 14px | 400 | 20px | 0px | Primary body text and descriptions |
| Body Large | Roboto | 16px | 400 | 24px | 0px | Extended body content and labels |
| Label / Caption | Roboto | 12px | 400 | normal | 0px | Form labels, badges, helper text |
| Button Text | Roboto | 16px | 400 | 24px | 0px | Button and link text |
Primary Button (Solid Emerald)
#08AA54#FFFFFF12px 24px8px44px#067A3F; box-shadow 0px 4px 12px rgba(8, 170, 84, 0.3)#055C30; scale 0.98#828487; cursor not-allowed; opacity 0.6Secondary Button (Ghost / Outline)
#1318258px 16px8px40px1px solid #131825#F6F7F8; border-color #131825#E8E9EBIcon Button (Circular)
#0F121542px × 42px80px (pill/circular)#F6F7F8; box-shadow noneNavigation Link Button
#F6F7F84px 48px1px solid #F6F7F8Success State Button
#08AA54#FFFFFF0px 2px 8px rgba(8, 170, 84, 0.2)Default Card
#FFFFFF0px (content-dependent)0px (no rounded corners)480pxElevated Card (with Light Background)
#F6F7F824px 32px16px480px#F4F6F8Feature Card (Light Background)
rgba(64, 74, 100, 0.05) (Slate at 5% opacity)32px 40px16pxrgba(0, 0, 0, 0.1) 0px 4px 25px 0px, rgba(78, 91, 126, 0.13) 0px 0px 1px 0pxautoText Input (Primary)
rgba(64, 74, 100, 0.05)rgba(19, 24, 37, 0.66)16px 24px 16px 48px (left padding for icon)8px56px2px solid transparent#98A2A92px solid #08AA54; box-shadow 0px 0px 0px 3px rgba(8, 170, 84, 0.1)2px solid #D2323D; box-shadow 0px 0px 0px 3px rgba(210, 50, 61, 0.1)Text Input (Compact)
rgba(64, 74, 100, 0.05)rgba(19, 24, 37, 0.66)12px 24px 12px 48px8px2px solid transparent2px solid #08AA54Form Label
rgba(19, 24, 37, 0.66)8pxHeader Navigation Link
#F6F7F8 (on dark backgrounds)8px 8px8pxrgba(255, 255, 255, 0.1)2px solid #08AA54Breadcrumb Link
#08AA545px 0px#131825; font-weight 500Success Badge
rgba(8, 170, 84, 0.1)#08AA546px 12px32pxError Badge
rgba(210, 50, 61, 0.1)#D2323D6px 12px32pxNeutral Badge
#F6F7F8#1318256px 12px14px1px solid #DBE2EABase Unit: 8px
Scale & Usage:
4px: Micro-spacing (icon offsets, tight grouping)8px: Padding in compact components, tight margins16px: Standard padding in buttons, labels, small containers24px: Margin between sections, card padding32px: Section padding, medium container spacing48px: Large padding within cards, prominent spacing56px: Gap between major content blocks72px: Large margin between sections84px: Extra-large section padding88px: Hero section breathing room120px: Page margin top/bottom132px: Maximum breathing room for feature sectionsXTB emphasizes generous whitespace to reduce cognitive load. Sections are clearly separated by 56px–120px vertical margins. Cards and content areas maintain 24px–48px internal padding. Navigation and header areas use tighter 8px–16px spacing. Whitespace increases proportionally at larger breakpoints.
0px: Cards without background fill, hero sections, full-width layouts8px: Buttons, input fields, secondary containers, navigation items14px: Small badges and compact pills16px: Feature cards, elevated containers, modals32px: Large badges and prominent pills80px: Icon buttons and perfectly circular elements| Level | Treatment | Use |
|---|---|---|
| Flat (0) | No shadow; transparent or white background | Base content, inputs, default state |
| Raised (+1) | 0px 2px 8px rgba(0, 0, 0, 0.08) | Input focus, card hover, tooltips |
| Elevated (+2) | 0px 4px 12px rgba(0, 0, 0, 0.1) | Dropdown menus, floating buttons, modals |
| High (+3) | 0px 4px 25px rgba(0, 0, 0, 0.1), 0px 0px 1px rgba(78, 91, 126, 0.13) | Feature cards, premium containers, prominent modals |
Shadow Philosophy: XTB uses subtle, restrained shadows to create depth without visual clutter. Shadows emerge only on interactive or elevated components, signaling actionability. The system avoids hard shadows; instead, soft blur and distributed opacity create a layered, approachable aesthetic. Dark backgrounds (navy/charcoal) show lighter shadow values; light backgrounds employ deeper shadow values for contrast.
#08AA54 (Emerald Success) exclusively for primary CTAs, success states, and confirmations8px border radius to all inputs, buttons, and navigation elements#131825) with white (#FFFFFF) or off-white (#F6F7F8) for maximum contrastbox-shadow) on hover/active states; avoid default shadows#D2323D (Danger Red) for non-critical warnings or general information8px on interactive components; maintain minimum consistency#000000) or hard white (#000000 text on #000000); use palette colorsheight: 56px for primary inputs, 40px for secondary| Name | Width | Key Changes |
|---|---|---|
| Mobile | 320px–599px | Single-column layout; 16px padding; font-size H1 48px, H2 32px; full-width inputs; stacked navigation |
| Tablet | 600px–1023px | Two-column grid; 24px padding; font-size H1 56px, H2 40px; sidebar navigation; condensed cards |
| Desktop | 1024px+ | Full 12-column grid; 32px–48px padding; max-width 1140px wrapper; side-by-side layouts; H1 72px, H2 48px |
| Wide | 1440px+ | Increased margins (120px top/bottom); expanded whitespace; 3+ column grids |
#08AA54)#131825)#F6F7F8)#131825) on light; Off-White (#F6F7F8) on dark#0F1215) on light; Off-White (#F6F7F8) on dark#D2323D)rgba(64, 74, 100, 0.05))#DBE2EA)#08AA54)#828487)#08AA54 with #FFFFFF text. Errors/warnings only use #D2323D. Backgrounds alternate between #FFFFFF, #F6F7F8, and #131825—no intermediate grays.8px, cards = 16px (if filled), icon buttons = 80px. No deviations.