UNPKG

besper-frontend-site-dev-main

Version:

Professional B-esper Frontend Site - Site-wide integration toolkit for full website bot deployment

226 lines (196 loc) 4.83 kB
/* Global Base Styles - Core foundational styles */ /* CSS Variables for consistent design system */ :root { /* Primary Colors - Professional B-esper brand system */ --primary-blue: #022d54; --primary-blue-dark: #011831; --primary-blue-light: #0052a3; --secondary-blue: #1e293b; --accent-blue: #0ea5e9; /* Neutral Colors */ --white: #ffffff; --gray-50: #f8fafc; --gray-100: #f1f5f9; --gray-200: #e2e8f0; --gray-300: #cbd5e1; --gray-400: #94a3b8; --gray-500: #64748b; --gray-600: #475569; --gray-700: #334155; --gray-800: #1e293b; --gray-900: #0f172a; /* State Colors */ --success: #10b981; --warning: #f59e0b; --error: #ef4444; --info: #3b82f6; /* Legacy color variables for backwards compatibility */ --success-green: #10b981; --warning-orange: #f59e0b; --error-red: #ef4444; /* Spacing Scale */ --spacing-1: 0.25rem; /* 4px */ --spacing-2: 0.5rem; /* 8px */ --spacing-3: 0.75rem; /* 12px */ --spacing-4: 1rem; /* 16px */ --spacing-5: 1.25rem; /* 20px */ --spacing-6: 1.5rem; /* 24px */ --spacing-8: 2rem; /* 32px */ --spacing-10: 2.5rem; /* 40px */ --spacing-12: 3rem; /* 48px */ --spacing-16: 4rem; /* 64px */ --spacing-20: 5rem; /* 80px */ --spacing-24: 6rem; /* 96px */ /* Typography Scale */ --font-size-xs: 0.75rem; /* 12px */ --font-size-sm: 0.875rem; /* 14px */ --font-size-base: 1rem; /* 16px */ --font-size-lg: 1.125rem; /* 18px */ --font-size-xl: 1.25rem; /* 20px */ --font-size-2xl: 1.5rem; /* 24px */ --font-size-3xl: 1.875rem; /* 30px */ --font-size-4xl: 2.25rem; /* 36px */ --font-size-5xl: 3rem; /* 48px */ /* Line Heights */ --line-height-tight: 1.25; --line-height-snug: 1.375; --line-height-normal: 1.5; --line-height-relaxed: 1.625; --line-height-loose: 2; /* Font Weights */ --font-weight-normal: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; /* Border Radius */ --radius-sm: 0.125rem; /* 2px */ --radius: 0.25rem; /* 4px */ --radius-md: 0.375rem; /* 6px */ --radius-lg: 0.5rem; /* 8px */ --radius-xl: 0.75rem; /* 12px */ --radius-2xl: 1rem; /* 16px */ --radius-full: 9999px; /* Shadows */ --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05); --shadow: 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); /* Transitions */ --transition-fast: 150ms ease-in-out; --transition-base: 250ms ease-in-out; --transition-slow: 350ms ease-in-out; /* Z-index Scale */ --z-dropdown: 1000; --z-sticky: 1020; --z-fixed: 1030; --z-modal-backdrop: 1040; --z-modal: 1050; --z-popover: 1060; --z-tooltip: 1070; } /* Box Sizing Reset */ *, *::before, *::after { box-sizing: border-box; } /* Remove default margins and paddings */ * { margin: 0; padding: 0; } /* Body and HTML */ html, body { height: 100%; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; font-size: var(--font-size-base); line-height: var(--line-height-normal); color: var(--gray-800); background-color: var(--white); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* Remove default list styles */ ul, ol { list-style: none; } /* Remove default button styles */ button { background: transparent; border: none; cursor: pointer; font-family: inherit; } /* Remove default input styles */ input, textarea, select { font-family: inherit; font-size: inherit; line-height: inherit; } /* Remove default link styles */ a { color: inherit; text-decoration: none; } /* Improve image defaults */ img, svg { display: block; max-width: 100%; height: auto; } /* Remove default table spacing */ table { border-collapse: collapse; border-spacing: 0; } /* Hidden utility */ .bsp-hidden { display: none !important; } /* Screen reader only */ .bsp-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } /* Focus styles */ .bsp-focus-ring:focus { outline: 2px solid var(--primary-blue); outline-offset: 2px; } /* Selection styles */ ::selection { background-color: var(--primary-blue); color: var(--white); } /* Scrollbar styles */ ::-webkit-scrollbar { width: 8px; height: 8px; } ::-webkit-scrollbar-track { background: var(--gray-100); } ::-webkit-scrollbar-thumb { background: var(--gray-400); border-radius: var(--radius-full); } ::-webkit-scrollbar-thumb:hover { background: var(--gray-500); }