/* ======================================== BASE STYLES - Modern Clean Design System ======================================== */ :root { /* Modern Color Palette */ --color-primary: #6366f1; --color-primary-light: #818cf8; --color-primary-dark: #4f46e5; --color-accent: #8b5cf6; --color-success: #22c55e; --color-success-light: #4ade80; --color-error: #ef4444; --color-warning: #f59e0b; /* Neutral Palette */ --color-white: #ffffff; --color-black: #0f0f0f; --color-gray-50: #fafafa; --color-gray-100: #f4f4f5; --color-gray-200: #e4e4e7; --color-gray-300: #d4d4d8; --color-gray-400: #a1a1aa; --color-gray-500: #71717a; --color-gray-600: #52525b; --color-gray-700: #3f3f46; --color-gray-800: #27272a; --color-gray-900: #18181b; /* Spacing Scale */ --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 20px; --space-6: 24px; --space-8: 32px; --space-10: 40px; --space-12: 48px; --space-16: 64px; /* Border Radius */ --radius-sm: 8px; --radius-md: 12px; --radius-lg: 16px; --radius-xl: 24px; --radius-full: 9999px; /* Shadows - Softer, more modern */ --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.05); --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.04); --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.06); --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.08); --shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.12); --shadow-glow: 0 0 40px rgba(99, 102, 241, 0.15); /* Typography */ --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif; --font-mono: 'SF Mono', 'Fira Code', 'Consolas', monospace; /* Transitions */ --ease-out: cubic-bezier(0.16, 1, 0.3, 1); --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1); --duration-fast: 150ms; --duration-normal: 250ms; --duration-slow: 400ms; } /* Reset */ *, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; } html { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; } body { font-family: var(--font-sans); background: linear-gradient(135deg, #667eea 0%, #764ba2 50%, #6366f1 100%); background-attachment: fixed; min-height: 100vh; padding: var(--space-6); color: var(--color-gray-700); line-height: 1.6; } /* Selection */ ::selection { background: var(--color-primary); color: var(--color-white); } /* Focus States */ :focus-visible { outline: 2px solid var(--color-primary); outline-offset: 2px; } /* Scrollbar */ ::-webkit-scrollbar { width: 8px; height: 8px; } ::-webkit-scrollbar-track { background: var(--color-gray-100); } ::-webkit-scrollbar-thumb { background: var(--color-gray-300); border-radius: var(--radius-full); } ::-webkit-scrollbar-thumb:hover { background: var(--color-gray-400); }