PopChoice
Design System
The visual language for a cinema-grade recommendation engine. Gold as signal, Oswald for authority, Manrope for warmth. Two equal themes. One rule: flat at rest, depth by state.
Brand Voice
Cinematic
Evokes the feeling of a real cinema without copying its aesthetics. The typography is a film title; the palette is a marquee at night. Not streaming service dark blue. Not film-festival pretension.
Confident
The product has opinions. Copy says "The right film is in there" not "We think you might enjoy." Oswald announces; it does not hedge. One CTA, clearly gold, on a surface that does not compete.
Playful
Delight lives in details: the confetti burst, the morphing progress dots, the loading tips. Personality is earned through specificity, not loud decoration or emoji at scale.
Mascot
The Popcorn
A striped cinema bucket, instantly recognizable and genuinely enthusiastic. Not a logo. A character. The Cinematic Concierge made physical: confident shape, warm gold kernels, stripe pattern borrowed from the classic movie-house bucket.
Click it.
Gold as Signal
Gold appears on 10% or less of any screen: CTAs, active states, the logo wordmark. Its rarity is what makes it read as intent. When gold appears, something matters.
Oswald Announces, Manrope Converses
Condensed uppercase authority for headlines, warm humanist readability for everything conversational. The pairing is the Cinematic Concierge in typographic form: confident heading, warm voice.
Two Equal Themes
Warm parchment and cool midnight: both intentional, both given equal visual care. Neither is a dark-mode toggle bolted on after the fact.
Flat at Rest, Depth by State
Surfaces are flat. The card shadow is a quiet hint. Only the CTA carries an expressive gold glow. No decorative depth. Only depth that earns its place.
Brand Palette
--pc-gold#F5C518--pc-amber#FF9F1Cpalette.purple#8B5CF6palette.purplelight#A78BFApalette.teal#14B8A6palette.red#EF4444palette.pink#EC4899palette.gray#6B7280palette.green#10B981palette.blue#60A5FABackgrounds
--pc-bgPage background--pc-surfaceCard / surface--pc-surface-hoverHovered surface--pc-surface-deepDeep / nested surface--pc-ghostSubtle interactive fillText Colors
--pc-t1--pc-t2--pc-t3--pc-t4--pc-gold-text--pc-amber-textBrand Colors
Gold
--pc-gold
Amber
--pc-amber
Gold Subtle
--pc-gold-subtle
Gold Wash
--pc-gold-wash
Gradients
--pc-cta
CTA
--pc-cta-h
CTA Horizontal
--pc-progress
Progress
Typography
Oswald — Display / Headings
text-5xl font-boldtext-4xl font-boldtext-3xl font-semiboldtext-2xl font-mediumManrope — Body / UI
text-xl font-normaltext-base font-normaltext-sm font-normaltext-sm font-boldtext-xs font-normalButtons
variant="cta"
variant="default"
variant="ghost"
variant="cta" disabled
variant="default" disabled
variant="ghost" disabled
Age Rating Chips
AgeRatingChip — semantic color per rating band (G=green, PG=teal, R=red, etc.). Used in the MoviesTable and movie detail views where the rating carries meaning. For a neutral, unstyled pill use AgeRatingPill (see Components page).
Sizes
sm
md
lg
All Ratings
G
PG
PG-13
R
12+
15
16+
18+
NR
Progress Dots
Borders
--pc-bd1
bd1 — subtle
--pc-bd2
bd2 — default
--pc-bd3
bd3 — medium
--pc-bd4
bd4 — strong
Shadows
--pc-card-shadow
Card Shadow
--pc-cta-shadow
CTA Shadow
--pc-cta-shadow-hover
CTA Shadow Hover
Gold Accent States
gold-subtle
--pc-gold-subtle
gold-tint
--pc-gold-tint
gold-wash
--pc-gold-wash
gold-focus
--pc-gold-focus
gold-bd-subtle
--pc-gold-bd-subtle
gold-bd
--pc-gold-bd
gold-bd-strong
--pc-gold-bd-strong
ai-bg
--pc-ai-bg
Spacing Scale
4pxp-1 / gap-18pxp-2 / gap-212pxp-3 / gap-316pxp-4 / gap-424pxp-6 / gap-632pxp-8 / gap-848pxp-12 / gap-1264pxp-16 / gap-16Border Radius
sm
0.125rem
md
0.375rem
lg
0.5rem
xl
0.75rem
2xl
1rem
full
9999px