:root { --primary: #667eea; --secondary: #764ba2; --success: #48bb78; --error: #f56565; --warning: #ed8936; --gray-50: #f9fafb; --gray-100: #f3f4f6; --gray-200: #e5e7eb; --gray-300: #d1d5db; --gray-400: #9ca3af; --gray-500: #6b7280; --gray-600: #4b5563; --gray-700: #374151; --gray-800: #1f2937; --gray-900: #111827; --border-radius: 8px; --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05); --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1); --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1); } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%); min-height: 100vh; color: var(--gray-900); line-height: 1.6; } html, body, #root { height: 100%; } button { cursor: pointer; border: none; padding: 10px 16px; border-radius: var(--border-radius); font-size: 14px; font-weight: 600; transition: all 0.2s ease; } button:hover { transform: translateY(-2px); box-shadow: var(--shadow-lg); } input, textarea { border: 1px solid var(--gray-300); padding: 10px 12px; border-radius: var(--border-radius); font-size: 14px; font-family: inherit; transition: border-color 0.2s ease; } input:focus, textarea:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1); } /* Scrollbar styling */ ::-webkit-scrollbar { width: 8px; height: 8px; } ::-webkit-scrollbar-track { background: var(--gray-100); border-radius: 10px; } ::-webkit-scrollbar-thumb { background: var(--gray-300); border-radius: 10px; } ::-webkit-scrollbar-thumb:hover { background: var(--gray-400); }