---
version: alpha
name: Sandchest
description: "Dark interface measured from sandchest.com: Jersey 10 type, amber accents, tonal surfaces and pill-shaped controls."
colors:
  background: "#0D0A07"
  surface: "#0D0A07"
  on-surface: "#F3E5C8"
  on-background: "#F3E5C8"
  on-surface-strong: "#FFF3DC"
  on-surface-variant: "#C2B293"
  on-surface-muted: "#A69479"
  surface-container-low: "#15100B"
  surface-container: "#2C2219"
  surface-container-high: "#2A2624"
  overlay: "#00000073"
  outline: "#2C2219"
  outline-variant: "#4A3B2C"
  primary: "#FEC242"
  on-primary: "#0D0A07"
  secondary: "#D76839"
typography:
  headline-display:
    fontFamily: Jersey 10
    fontSize: 72px
    fontWeight: 400
    lineHeight: 0.9
  headline-lg:
    fontFamily: Jersey 10
    fontSize: 44px
    fontWeight: 400
    lineHeight: 0.95
  headline-md:
    fontFamily: Jersey 10
    fontSize: 36px
    fontWeight: 400
    lineHeight: 1
  body-md:
    fontFamily: Jersey 10
    fontSize: 18px
    fontWeight: 400
    lineHeight: 1
  code:
    fontFamily: Geist Mono
    fontSize: 13px
    fontWeight: 400
    lineHeight: 1.6
  headline-display-mobile:
    fontFamily: Jersey 10
    fontSize: 44px
    fontWeight: 400
    lineHeight: 0.9
  headline-md-mobile:
    fontFamily: Jersey 10
    fontSize: 30px
    fontWeight: 400
    lineHeight: 1
rounded:
  full: 9999px
spacing:
  xs: 4px
  sm: 8px
  md: 12px
  lg: 24px
  xl: 48px
  gutter: 8px
  section: 72px
components:
  button-primary:
    backgroundColor: "{colors.primary}"
    textColor: "{colors.on-primary}"
    rounded: 0px
    padding: 0px
    height: 60px
  button-primary-hover:
    backgroundColor: "#FDD363"
  button-ghost:
    textColor: "{colors.on-surface}"
    rounded: 0px
    padding: 0px
  link:
    textColor: "{colors.on-surface-muted}"
---

# Sandchest Design System

## Overview

Sandchest describes itself as: “Sandchest acts like a real hacker embedded in your team, using abliterated, unrestricted models to find real vulnerabilities in your code before attackers do.” The interface is dark, built on **Near Black (#0D0A07)** with **Pale Amber (#F3E5C8)** text, and **Amber (#FEC242)** as the main accent.

Type is set in **Jersey 10**, with **Geist Mono** for code. Headlines run large; body text is 18px. Depth comes from hairline borders and inset highlights rather than drop shadows. Controls are pill-shaped.

Measured from [sandchest.com](https://www.sandchest.com/) on November 3, 2026 at 1440×900 and 390×844 from 277 rendered elements. Values are computed styles from the live page, not the original source files.

## Colors

The palette has 14 roles, plus gradient stops #4A3B2C, #FF9F19, #FEC242.

- **Near Black (#0D0A07):** Page background, seen 5 times. Token `background`, CSS `--color-void`.
- **Pale Amber (#F3E5C8):** Primary text and headings, seen 23 times. Token `on-surface`, CSS `--color-sand`.
- **Pale Orange (#FFF3DC):** Headings and emphasis, seen 8 times. Token `on-surface-strong`, CSS `--color-bright`.
- **Orange (#C2B293):** Secondary text, seen 7 times. Token `on-surface-variant`, CSS `--color-muted`.
- **Orange (#A69479):** Muted text and metadata, seen 31 times. Token `on-surface-muted`, CSS `--color-dust`.
- **Warm Charcoal (#15100B):** Raised areas one step from the page, seen 1 time. Token `surface-container-low`, CSS `--color-soot`.
- **Deep Orange (#2C2219):** Cards and panels, seen 1 time. Token `surface-container`, CSS `--color-seam`.
- **Warm Graphite (#2A2624):** Hover and pressed fills, seen 1 time. Token `surface-container-high`.
- **Near Black 45% (#00000073):** Translucent fill for cards and controls, seen 1 time. Token `overlay`.
- **Deep Orange (#2C2219):** Borders and dividers, seen 8 times. Token `outline`, CSS `--color-seam`.
- **Dark Orange (#4A3B2C):** Secondary dividers, seen 6 times. Token `outline-variant`, CSS `--color-edge`.
- **Amber (#FEC242):** Primary buttons and calls to action, seen 114 times. Token `primary`, CSS `--color-gold`.
- **Near Black (#0D0A07):** Text and icons on primary. Token `on-primary`.
- **Orange (#D76839):** Accent in text, fills and borders, seen 6 times. Token `secondary`, CSS `--color-ember`.

## Typography

**Jersey 10** and **Geist Mono** (monospace) share the interface. Fallback stack: `Jersey 10, Jersey 10 Fallback, ui-monospace, monospace`.

- **headline-display:** Jersey 10 72px at weight 400, line height 0.9 (44px on mobile). Page title (h1).
- **headline-lg:** Jersey 10 44px at weight 400, line height 0.95. Section headings (h2).
- **headline-md:** Jersey 10 36px at weight 400, line height 1 (30px on mobile). Sub-section headings.
- **body-md:** Jersey 10 18px at weight 400, line height 1. Body text.
- **code:** Geist Mono 13px at weight 400, line height 1.6. Code and technical values.

## Layout

Spacing does not follow a strict grid: 69% of measured values are multiples of 4px, so match the measured steps rather than rounding to a grid.

- **Scale:** xs 4px, sm 8px, md 12px, lg 24px, xl 48px.
- **Sections:** 72px vertical padding between major sections.
- **Gaps:** 8px is the most common gap in flex and grid layouts.

## Elevation & Depth

Depth comes mostly from hairline rings and inset highlights on tonal surfaces (#15100B → #2C2219 → #2A2624):

- `rgb(253, 211, 99) 0px 2px 0px 0px inset, rgb(194, 90, 44) 0px -2px 0px 0px inset`
- `rgba(255, 255, 255, 0.18) 0px 0px 0px 1px inset`
- `rgb(253, 211, 99) 0px 2px 0px 0px inset, rgb(194, 90, 44) 0px -3px 0px 0px inset`

A few raised panels add a soft drop shadow: `rgb(215, 104, 57) 0px 0px 8px 0px`.

## Shapes

Interactive controls are pill-shaped. Measured radii, most used first:

- **full (9999px):** 4 elements.

## Components

Measured from the rendered page. Token values reference the tokens above.

- **button-primary (“Get started”):** #FEC242 fill, #0D0A07 text, 15px/400, padding 0px.
- **button-primary-hover:** background #FDD363, text #0D0A07 on hover.
- **button-ghost (“Get started”):** transparent fill, #F3E5C8 text, 15px/400, padding 0px.
- **link:** transparent fill, #A69479 text, padding 0px.

## Do's and Don'ts

- Do use #0D0A07 for the page and lift surfaces in small steps: #15100B, #2C2219, #2A2624.
- Do keep text in 4 levels: #F3E5C8, #FFF3DC, #C2B293, #A69479.
- Do reserve #FEC242 for primary actions and key highlights.
- Do reuse the measured spacing steps (8px, 12px, 24px).
- Do make buttons and chips fully rounded (9999px).
- Don't use heavy drop shadows; keep depth to hairline rings and tonal surfaces.
- Don't introduce new font families beyond Jersey 10 and Geist Mono.
- Don't use #FEC242 for large backgrounds or body text.
- Don't make interface transitions slower than 0.15s.

## Motion

Interface transitions are quick: 0.12s, 0.15s, 0.08s.

- **Easing:** `ease`.
- **Reduced motion:** the page responds to `prefers-reduced-motion`.

Generated by [Sitepeel](https://sitepeel.dev/design-md/sandchest.com/), the free DESIGN.md generator (engine 2026.10.29+b828a475ee10).
