# ThrillWiki Design System Rules Visual identity, colors, typography, and styling guidelines for ThrillWiki UI. ## Brand Identity - **Name**: ThrillWiki (optional "(Beta)" suffix during preview) - **Tagline**: The Ultimate Theme Park Database - **Personality**: Enthusiastic, trustworthy, community-driven - **Visual Style**: Modern, clean, subtle gradients, smooth animations, card-based layouts ## Color System ### Semantic Color Tokens (use these, not raw hex values) | Token | Purpose | Usage | |-------|---------|-------| | `--background` | Page background | Main content area | | `--foreground` | Primary text | Body text, headings | | `--primary` | Interactive elements | Buttons, links | | `--secondary` | Secondary UI | Secondary buttons | | `--muted` | Subdued content | Hints, disabled states | | `--accent` | Highlights | Focus rings, special callouts | | `--destructive` | Danger actions | Delete buttons, errors | | `--success` | Positive feedback | Success messages, confirmations | | `--warning` | Caution | Alerts, warnings | ### Status Colors (Entity Badges) - **Operating**: Green (`--success`) - **Closed**: Red (`--destructive`) - **Under Construction**: Amber (`--warning`) ### Dark Mode - Automatically supported via CSS variables - Reduce contrast (use off-white, not pure white) - Replace shadows with subtle glows - Slightly dim images ## Typography ### Font - **Primary Font**: Inter (Sans-Serif) - **Weights**: 400 (Regular), 500 (Medium), 600 (Semibold), 700 (Bold) - **Fallback**: system-ui, sans-serif ### Type Scale | Size | Name | Usage | |------|------|-------| | 48px | Display | Hero headlines | | 36px | H1 | Page titles | | 30px | H2 | Section headers | | 24px | H3 | Card titles | | 20px | H4 | Subheadings | | 16px | Body | Default text | | 14px | Small | Secondary text | | 12px | Caption | Labels, hints | ### Text Classes (Tailwind) ``` Page Title: text-4xl font-bold Section Header: text-2xl font-semibold Card Title: text-lg font-medium Body: text-base Caption: text-sm text-muted-foreground ``` ## Spacing System ### Base Unit - 4px base unit - All spacing is multiples of 4 ### Spacing Scale | Token | Size | Usage | |-------|------|-------| | `space-1` (p-1) | 4px | Tight gaps | | `space-2` (p-2) | 8px | Icon gaps | | `space-3` (p-3) | 12px | Small padding | | `space-4` (p-4) | 16px | Default padding | | `space-6` (p-6) | 24px | Section gaps | | `space-8` (p-8) | 32px | Large gaps | | `space-12` (p-12) | 48px | Section margins | ## Border Radius | Token | Size | Usage | |-------|------|-------| | `rounded-sm` | 4px | Small elements | | `rounded` | 8px | Buttons, inputs | | `rounded-lg` | 12px | Cards | | `rounded-xl` | 16px | Large cards, modals | | `rounded-full` | 9999px | Pills, avatars | ## Layout ### Max Content Width - Main content: `max-w-7xl` (1280px) - Centered with `mx-auto` - Responsive padding: `px-4 md:px-6 lg:px-8` ### Grid System - Desktop (1024px+): 4 columns - Tablet (768px+): 2 columns - Mobile (<768px): 1 column ```html