:root { /* Colors - Primary */ --color-primary: #FF5501; --color-primary-hover: #E84D00; --color-primary-subtle: #FF6533; /* Colors - Surfaces */ --color-surface: #FFFFFF; --color-surface-raised: #F8FAFC; --color-surface-overlay: #F1F5F9; /* Colors - Borders */ --color-border: #E2E8F0; --color-border-strong: #CBD5E1; /* Colors - Text */ --color-text-primary: #0F172A; --color-text-secondary: #475569; --color-text-placeholder: #94A3B8; --color-text-inverse: #FFFFFF; /* Colors - Semantic */ --color-success: #16A34A; --color-success-subtle: #F0FDF4; --color-warning: #D97706; --color-warning-subtle: #FFFBEB; --color-error: #DC2626; --color-error-subtle: #FEF2F2; --color-info: #0284C7; --color-info-subtle: #F0F9FF; /* Component-friendly aliases */ --color-bg: var(--color-surface); --color-bg-secondary: var(--color-surface-raised); --color-text: var(--color-text-primary); --color-text-muted: var(--color-text-secondary); /* Spacing */ --spacing-1: 4px; --spacing-2: 8px; --spacing-3: 12px; --spacing-4: 16px; --spacing-6: 24px; --spacing-8: 32px; --spacing-12: 48px; --spacing-16: 64px; --spacing-20: 80px; --spacing-24: 96px; /* Spacing aliases for components */ --space-xs: var(--spacing-2); --space-sm: var(--spacing-3); --space-md: var(--spacing-4); --space-lg: var(--spacing-6); --space-xl: var(--spacing-8); --space-2xl: var(--spacing-12); --space-3xl: var(--spacing-16); /* Layout */ --nav-height: 64px; --header-height: var(--nav-height); --max-content-width: 1280px; --sidebar-width: 240px; --sidebar-collapsed: 64px; /* Border radius */ --radius-sm: 4px; --radius-base: 6px; --radius-md: 8px; --radius-lg: 12px; --radius-xl: 16px; --radius-full: 9999px; /* Shadows */ --shadow-sm: 0 1px 2px rgba(0,0,0,0.05); --shadow-base: 0 1px 3px rgba(0,0,0,0.1); --shadow-md: 0 4px 6px rgba(0,0,0,0.1); --shadow-lg: 0 10px 15px rgba(0,0,0,0.1); --shadow-xl: 0 20px 25px rgba(0,0,0,0.1); /* Typography */ --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; --font-mono: 'JetBrains Mono', 'Courier New', monospace; --text-xs: 12px; --text-sm: 14px; --text-base: 16px; --text-lg: 18px; --text-xl: 20px; --text-2xl: 24px; } /* Dark theme support */ @media (prefers-color-scheme: dark) { :root { --color-surface: #0F172A; --color-surface-raised: #1E293B; --color-surface-overlay: #334155; --color-text-primary: #F8FAFC; --color-text-secondary: #CBD5E1; --color-text-placeholder: #64748B; --color-border: #334155; --color-border-strong: #475569; } } * { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: var(--font-sans); line-height: 1.6; color: var(--color-text); background: var(--color-bg); } a { color: #FF5501; transition: color 0.2s; } a:hover { color: #E84D00; } img { max-width: 100%; height: auto; display: block; } code { background: #f3f4f6; padding: 0.125rem 0.375rem; border-radius: 0.25rem; font-size: 0.875em; font-family: 'Monaco', 'Courier New', monospace; } pre { background: #1f2937; color: #f9fafb; padding: 1rem; border-radius: 0.5rem; overflow-x: auto; margin: 1rem 0; } pre code { background: transparent; padding: 0; color: inherit; } /* Utility classes */ .container { max-width: var(--max-content-width); margin: 0 auto; padding: 0 var(--space-lg); } .btn { display: inline-block; padding: var(--space-sm) var(--space-lg); border-radius: var(--radius-md); font-weight: 600; text-decoration: none; transition: all 0.2s; border: 2px solid transparent; cursor: pointer; font-size: var(--text-base); } .btn-primary { background: var(--color-primary); color: var(--color-text-inverse); } .btn-primary:hover { background: var(--color-primary-hover); text-decoration: none; } .btn-outline { background: transparent; border-color: var(--color-border-strong); color: var(--color-text); } .btn-outline:hover { background: var(--color-surface-raised); text-decoration: none; } .card { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: var(--space-lg); }