Surface kit

Near-black page, translucent white layers, Roboto at two weights. The only saturated colour on screen belongs to the video.

Tokens

One true surface. Everything else is white at 5, 10 or 20 percent laid over it, so controls read the same on the page and on top of a video.

Surfaces and text

bg
#0f0f0f
The page. Never #000.
bg-raised
#121212
Search box fill
line
#303030
1px borders
text
#f1f1f1
Primary text, icons
text-2
#aaaaaa
Secondary text
text-3
#717171
Disabled
white
#ffffff
Text on the video only
blue
#3ea6ff
Links, call to action
red
#ff0033
Reserved. Never on chrome.

Layers

layer-05
layer-10
layer-20
on video
rest
hover

Scrims

scrim-30
scrim-60
scrim-80

Type

Roboto, falling back to Arial. Seven sizes, two weights. Sentence case everywhere, no letter-spacing, no uppercase labels.

24Six hours of tide in fifteen secondsPage heading
18CommentsPanel heading, 500
16SearchSearch input, section heads
14Route 28 after midnight, no trafficGuide rows, overlay title, body
1248KRail count, pill label, metadata
113 weeks agoFine print
10FollowingMini guide label
Regular 400
Medium 500

Geometry

Every radius in use, each tied to one element. Nothing rounds by taste.

50% avatar
28 nav
24 rail
16 pill
12 player
10 guide row
8
4
2

Masthead and search

56px tall, transparent over the page, content starts 8px below it. The search box is the only element with a border.

Drift
M
height 46 · radius 40 · padding 0 6 0 16 · input 16px white · focus border #1c62b9

Guide

240px wide. Rows are 40px, radius 10, label starts at x=72. The active row is weight 500 plus the 10% layer. Collapses to a 72px mini guide.

Resttransparent
Hoverlayer-10
Pressedlayer-20
Activelayer-10 + 500 weight + filled icon
Row204 × 40, inset 12, radius 10
Mini row64 × 74, 10px label under the icon

Action rail

48px circles at 10% white, a 12px count underneath, 78px per block. The rail sits outside the video, bottom-aligned to it. Try the like and dislike, they are exclusive.

289
Dislike
31
Share

States

Rest 10%
Hover 20%
Pressed 30%
On, filled

Feed navigation

First item
56px, radius 28

Pills and buttons

No borders on buttons. The fill carries the affordance. White is the one inverted pill, blue is the one call to action.

On the video

T@tidewatch

Player

9:16, radius 12, height equals the viewport minus 104. Two scrims only: 48px at the top for controls, 76px at the bottom for metadata. Click the frame to pause.

vh−104
T@tempo.lab
15 pendulums, 30 seconds, one full cycle
1.2M
8.9K
player124812
Aspect9:16, object-fit: cover
Radius12, overflow: hidden
Top scrim48px, holds play and volume
Bottom metadata76px, 16px inset. Avatar 32, handle, Subscribe, then title
Overlay textPure #ffffff, not #f1f1f1
Overlay hostplayer + 72: [player][12][48][12]
CenteringContent area, not the viewport
BehaviourAutoplay muted, click toggles pause, up and down move exactly one

Counts

Always compact. One decimal under ten, whole numbers above, truncated rather than rounded so a count never overstates.

289289
1,2041.2K
48,21348K
128,900128K
1,204,0001.2M
38,000,00038M
12K

Rules

What the material refuses.

No accent on chromeThe only saturated colour belongs to the video. Blue marks a call to action and nothing else.
No gradients but twoThe top and bottom video scrims. No glows, no coloured shadows.
No borders on buttonsTranslucent fills carry the affordance. The search box is the one bordered element.
No 700 weight400 and 500 only. No letter-spacing, no uppercase labels.
Rail stays outsideOn desktop the action rail never sits on top of the video.
Its own markNo borrowed logo, play glyph or brand red on any control.