Design philosophy
Stripe-inspired sophistication meets tropical warmth. Every visual element serves the brand’s core tension: premium and authoritative, yet warm and approachable. Green-tinted shadows ground the interface in the brand palette. Cream backgrounds create breathing room. Glass effects add depth without weight.Shadow system
All shadows use a green undertone —rgba(24, 99, 77, X) — instead of neutral black. This subtly reinforces the Pine Green brand color throughout the interface, creating a cohesive visual layer that feels intentional rather than generic.
Strain-typed shadows
Strain type shadows add a colored glow that reinforces the sativa/indica/hybrid identity on hover or feature states.Gradient system
Hero gradient
Hero gradient
The primary page background gradient. A radial ellipse of Pine Green overlays a cream-to-white linear gradient, creating a subtle green glow at the top of pages.
Section gradient
Section gradient
Subtle cream-to-transparent for section backgrounds. Creates visual separation between content blocks without hard borders.
Shine effect
Shine effect
A 135-degree white sweep used as a pseudo-element for premium hover effects on cards. The transparent-white-transparent pattern creates a polished surface reflection.
Strain type gradients
Strain type gradients
Low-opacity colored overlays that tint card backgrounds to match strain types. Applied as background gradients on strain cards, detail pages, and collection views.
Glassmorphism
Glass effects create depth through translucent, blurred backgrounds. The system defines multiple glass tiers for different elevation contexts.Card glass
Card glass
Cream at 75% opacity with a 16px blur radius. Used for content cards that float over page backgrounds.
Modal glass
Modal glass
Cream at 90% opacity with maximum blur. Used for overlays, modals, and dialogs that demand focus while maintaining a connection to the content beneath.
Badge system
Badge system
A glassmorphism badge system with pill and square variants. Badges accept a configurable accent color and render a multi-stop gradient background with backdrop blur, colored borders, and inner glow shadows. Used for tags, status indicators, strain type labels, and category markers.
Animation system
Animations use a constrained duration scale and premium easing curves. Every motion should feel purposeful — fast enough to not block the user, smooth enough to feel refined.Easing curves
Interaction patterns
Touch target minimums
All interactive elements must meet minimum sizing for comfortable touch interaction, following WCAG 2.2 Target Size guidelines.Pre-built transitions
These shorthand transition values are available as design tokens for the most common interaction patterns:For developers
Source of truth files:
apps/website/src/config/design-system/effects.ts— shadows, animation durations, easing curves, pre-built transitionsapps/website/src/config/design-system/interactive-tokens.ts— card tokens, button tokens, glass effects, gradients, focus states, touch targetsapps/website/src/config/design-system/glassmorphism.ts— badge system with pill/square variants, inline style generators, CSS string generators, Tailwind class utilitiesapps/mobile/src/_config/design-system/effects.ts— mobile animation and shadow tokens
