/* ==================== CSS CUSTOM PROPERTIES ==================== */ /* Design Tokens for VoiceGuard UI */ :root { /* ==================== COLORS ==================== */ /* Primary Palette (Indigo) */ --color-primary-50: #EEF2FF; --color-primary-100: #E0E7FF; --color-primary-200: #C7D2FE; --color-primary-300: #A5B4FC; --color-primary-400: #818CF8; --color-primary-500: #6366F1; --color-primary-600: #4F46E5; --color-primary-700: #4338CA; --color-primary-800: #3730A3; --color-primary-900: #312E81; /* Success (Human - Green) */ --color-success-50: #ECFDF5; --color-success-100: #D1FAE5; --color-success-200: #A7F3D0; --color-success-300: #6EE7B7; --color-success-400: #34D399; --color-success-500: #10B981; --color-success-600: #059669; --color-success-700: #047857; /* Danger (AI - Red) */ --color-danger-50: #FEF2F2; --color-danger-100: #FEE2E2; --color-danger-200: #FECACA; --color-danger-300: #FCA5A5; --color-danger-400: #F87171; --color-danger-500: #EF4444; --color-danger-600: #DC2626; --color-danger-700: #B91C1C; /* Warning (Yellow) */ --color-warning-500: #F59E0B; --color-warning-600: #D97706; /* Neutrals (Slate) */ --color-neutral-50: #F8FAFC; --color-neutral-100: #F1F5F9; --color-neutral-200: #E2E8F0; --color-neutral-300: #CBD5E1; --color-neutral-400: #94A3B8; --color-neutral-500: #64748B; --color-neutral-600: #475569; --color-neutral-700: #334155; --color-neutral-800: #1E293B; --color-neutral-900: #0F172A; --color-neutral-950: #020617; /* Semantic Colors */ --color-bg: var(--color-neutral-950); --color-bg-elevated: var(--color-neutral-900); --color-bg-card: var(--color-neutral-800); --color-text: var(--color-neutral-50); --color-text-muted: var(--color-neutral-400); --color-text-subtle: var(--color-neutral-500); --color-border: var(--color-neutral-700); --color-border-hover: var(--color-neutral-600); /* ==================== TYPOGRAPHY ==================== */ --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; --font-mono: 'Fira Code', 'Consolas', 'Monaco', monospace; /* Font Sizes */ --text-xs: 0.75rem; /* 12px */ --text-sm: 0.875rem; /* 14px */ --text-base: 1rem; /* 16px */ --text-lg: 1.125rem; /* 18px */ --text-xl: 1.25rem; /* 20px */ --text-2xl: 1.5rem; /* 24px */ --text-3xl: 1.875rem; /* 30px */ --text-4xl: 2.25rem; /* 36px */ --text-5xl: 3rem; /* 48px */ /* Font Weights */ --font-normal: 400; --font-medium: 500; --font-semibold: 600; --font-bold: 700; /* Line Heights */ --leading-tight: 1.25; --leading-snug: 1.375; --leading-normal: 1.5; --leading-relaxed: 1.625; /* ==================== SPACING ==================== */ --space-0: 0; --space-1: 0.25rem; /* 4px */ --space-2: 0.5rem; /* 8px */ --space-3: 0.75rem; /* 12px */ --space-4: 1rem; /* 16px */ --space-5: 1.25rem; /* 20px */ --space-6: 1.5rem; /* 24px */ --space-8: 2rem; /* 32px */ --space-10: 2.5rem; /* 40px */ --space-12: 3rem; /* 48px */ --space-16: 4rem; /* 64px */ --space-20: 5rem; /* 80px */ /* ==================== BORDERS ==================== */ --radius-sm: 0.25rem; /* 4px */ --radius-md: 0.375rem; /* 6px */ --radius-lg: 0.5rem; /* 8px */ --radius-xl: 0.75rem; /* 12px */ --radius-2xl: 1rem; /* 16px */ --radius-3xl: 1.5rem; /* 24px */ --radius-full: 9999px; --border-width: 1px; --border-width-2: 2px; /* ==================== SHADOWS ==================== */ --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.05); --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1); --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1); --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25); --shadow-glow-primary: 0 0 20px rgba(99, 102, 241, 0.4); --shadow-glow-success: 0 0 20px rgba(16, 185, 129, 0.4); --shadow-glow-danger: 0 0 20px rgba(239, 68, 68, 0.4); /* ==================== TRANSITIONS ==================== */ --duration-instant: 50ms; --duration-fast: 150ms; --duration-normal: 200ms; --duration-slow: 300ms; --duration-slower: 500ms; --ease-linear: linear; --ease-in: cubic-bezier(0.4, 0, 1, 1); --ease-out: cubic-bezier(0, 0, 0.2, 1); --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1); --ease-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55); /* ==================== Z-INDEX ==================== */ --z-base: 0; --z-dropdown: 100; --z-sticky: 200; --z-modal: 300; --z-toast: 400; --z-tooltip: 500; /* ==================== BREAKPOINTS (for reference) ==================== */ /* Use in media queries: @media (min-width: 640px) */ /* --breakpoint-sm: 640px; */ /* --breakpoint-md: 768px; */ /* --breakpoint-lg: 1024px; */ /* --breakpoint-xl: 1280px; */ }