:root { color-scheme: light; /* ===== Core surfaces ===== */ --background: #ffffff; /* --geist-background */ --foreground: #000000; /* --geist-foreground */ --surface: #ffffff; --surface-muted: #fafafa; /* --accents-1 */ --surface-hover: #eaeaea; /* --accents-2 */ /* ===== Borders / inputs ===== */ --border: #eaeaea; /* --accents-2 */ --input: #ffffff; --input-border: #eaeaea; /* ===== Text tokens ===== */ --muted: #fafafa; /* --accents-1 */ --muted-foreground: #666666; /* --accents-5 */ /* ===== Brand tokens (Next/Vercel) ===== */ --primary: #111111; /* close to black UI: --accents-8 */ --primary-foreground: #ffffff; --primary-hover: #333333; /* --accents-7 */ --primary-muted: #eaeaea; /* --accents-2 */ --accent: #0070f3; /* --geist-success */ --accent-foreground: #ffffff; --accent-text: #0070f3; /* ===== Semantic component tokens (shadcn-like) ===== */ --card: var(--surface); --card-foreground: var(--foreground); --popover: var(--surface); --popover-foreground: var(--foreground); --secondary: #fafafa; /* --accents-1 */ --secondary-foreground: #111111; --ring: #0070f3; /* --geist-success */ --focus: #0070f3; /* ===== States (Geist palette) ===== */ --success: #0070f3; /* Geist "success" is blue */ --success-foreground: #ffffff; --warning: #f5a623; --warning-foreground: #111111; --danger: #ee0000; /* --geist-error */ --danger-foreground: #ffffff; /* Disabled */ --disabled: rgba(0, 0, 0, 0.08); --disabled-foreground: rgba(0, 0, 0, 0.45); /* ===== Data viz (Geist highlights) ===== */ --chart-1: #60a5fa; /* light blue */ --chart-2: #c084fc; /* light violet */ --chart-3: #34d399; /* mint */ --chart-4: #f472b6; /* pink */ --chart-5: #fbbf24; /* amber */ --chart-6: #22d3ee; /* sky/cyan */ /* ===== Motion ===== */ --ease: cubic-bezier(0.2, 0.8, 0.2, 1); --dur-1: 120ms; --dur-2: 200ms; --dur-3: 320ms; }