UNPKG

besper-frontend-site-dev-main

Version:

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

416 lines (356 loc) 8.96 kB
/* B-esper Site Main Styles */ /* Global stylesheet importing all base styles and components */ /* Base Styles - Foundation */ @import './base/globals.css'; @import './base/typography.css'; @import './base/layout.css'; /* Component Styles - Core UI Components */ @import './components/ui.css'; /* Shared Utilities */ @import './shared/global.css'; /* Responsive Design Utilities */ @media (max-width: 768px) { .bsp-container { padding: 0 var(--spacing-3); } .bsp-grid-cols-3 { grid-template-columns: repeat(1, minmax(0, 1fr)); } .bsp-grid-cols-2 { grid-template-columns: repeat(1, minmax(0, 1fr)); } .bsp-heading-1 { font-size: var(--font-size-4xl); } .bsp-heading-2 { font-size: var(--font-size-3xl); } } @media (max-width: 640px) { .bsp-btn-lg { padding: var(--spacing-3) var(--spacing-6); font-size: var(--font-size-base); } .bsp-heading-1 { font-size: var(--font-size-3xl); } } /* Global reusable classes using bsp_main_ prefix for common patterns */ /* Hero sections - Professional clean styling without solid backgrounds */ .bsp_main_hero { background: transparent; color: var(--text-primary); padding: var(--spacing-12) 0; position: relative; overflow: hidden; text-align: center; } .bsp_main_hero_content { position: relative; z-index: 1; max-width: 800px; margin: 0 auto; } .bsp_main_hero_title { color: var(--text-primary); font-size: var(--font-size-4xl); font-weight: 300; margin-bottom: var(--spacing-6); line-height: 1.2; letter-spacing: -0.5px; } .bsp_main_hero_subtitle { color: var(--text-secondary); font-size: var(--font-size-lg); margin-bottom: var(--spacing-8); max-width: 600px; margin-left: auto; margin-right: auto; line-height: 1.6; } .bsp_main_hero_actions { margin-top: var(--spacing-8); display: flex; gap: var(--spacing-4); justify-content: center; flex-wrap: wrap; } .bsp_main_hero .bsp-btn-secondary { background-color: transparent; color: var(--primary-blue); border: 2px solid var(--primary-blue); } .bsp_main_hero .bsp-btn-secondary:hover:not(:disabled) { background-color: var(--primary-blue); border-color: var(--primary-blue); color: white; } /* Feature sections */ .bsp_main_features { padding: var(--spacing-20) 0; background-color: var(--background-secondary); } .bsp_main_feature_icon { width: 48px; height: 48px; background-color: var(--primary-blue); color: white; border-radius: var(--radius-xl); display: flex; align-items: center; justify-content: center; margin-bottom: var(--spacing-4); } .bsp_main_feature_card { background-color: var(--background-primary); border: 1px solid var(--border-color); border-radius: var(--radius-xl); padding: var(--spacing-6); text-align: center; transition: transform var(--transition-base), box-shadow var(--transition-base); } .bsp_main_feature_card:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); } /* Content sections */ .bsp_main_section { padding: var(--spacing-16) 0; } .bsp_main_section_alt { padding: var(--spacing-16) 0; background-color: var(--background-secondary); } /* Page headers */ .bsp_main_page_header { text-align: center; margin-bottom: var(--spacing-12); } .bsp_main_page_title { font-size: var(--font-size-4xl); font-weight: 700; color: var(--text-primary); margin-bottom: var(--spacing-4); line-height: 1.2; } .bsp_main_page_subtitle { font-size: var(--font-size-xl); color: var(--text-secondary); max-width: 600px; margin: 0 auto; line-height: 1.6; } /* Form sections */ .bsp_main_form_section { background-color: var(--background-primary); border: 1px solid var(--border-color); border-radius: var(--radius-xl); padding: var(--spacing-8); box-shadow: var(--shadow-sm); } /* Case studies and proof sections */ .bsp_main_proof { padding: var(--spacing-20) 0; background-color: var(--background-primary); } .bsp_main_case_study { background-color: var(--background-primary); border: 1px solid var(--border-color); border-radius: var(--radius-xl); padding: var(--spacing-6); transition: transform var(--transition-fast), box-shadow var(--transition-fast); } .bsp_main_case_study:hover { transform: translateY(-2px); box-shadow: var(--shadow-lg); } .bsp_main_case_study_industry { display: inline-block; background-color: var(--primary-blue); color: white; padding: var(--spacing-1) var(--spacing-3); border-radius: var(--radius-full); font-size: var(--font-size-xs); font-weight: 500; text-transform: uppercase; letter-spacing: 0.025em; margin-bottom: var(--spacing-3); } .bsp_main_case_study_title { font-size: var(--font-size-xl); font-weight: 600; color: var(--text-primary); margin-bottom: var(--spacing-3); line-height: 1.3; } .bsp_main_case_study_description { color: var(--text-secondary); line-height: 1.6; margin-bottom: var(--spacing-4); } .bsp_main_case_study_roi { display: flex; align-items: center; gap: var(--spacing-2); color: var(--success-green); font-weight: 500; } /* Demo sections */ .bsp_main_demo { padding: var(--spacing-20) 0; background-color: var(--background-secondary); } .bsp_main_demo_container { min-height: 500px; background-color: var(--background-primary); border-radius: var(--radius-lg); border: 1px solid var(--border-color); display: flex; align-items: center; justify-content: center; padding: var(--spacing-6); } /* Statistics/metrics */ .bsp_main_stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: var(--spacing-6); margin: var(--spacing-12) 0; } .bsp_main_stat { text-align: center; padding: var(--spacing-6); background-color: var(--background-primary); border-radius: var(--radius-xl); border: 1px solid var(--border-color); } .bsp_main_stat_value { font-size: var(--font-size-4xl); font-weight: 700; color: var(--primary-blue); margin-bottom: var(--spacing-2); } .bsp_main_stat_label { color: var(--text-secondary); font-size: var(--font-size-sm); text-transform: uppercase; letter-spacing: 0.025em; } /* Loading states */ .bsp_main_loading { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: var(--spacing-12); gap: var(--spacing-4); } .bsp_main_loading_text { color: var(--text-secondary); font-size: var(--font-size-lg); } /* Error states */ .bsp_main_error { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: var(--spacing-12); gap: var(--spacing-4); text-align: center; } .bsp_main_error_title { color: var(--error-red); font-size: var(--font-size-2xl); font-weight: 600; } .bsp_main_error_message { color: var(--text-secondary); max-width: 500px; } /* Table styles */ .bsp_main_table { width: 100%; border-collapse: collapse; background-color: var(--background-primary); border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-sm); } .bsp_main_table th { background-color: var(--background-secondary); padding: var(--spacing-4); text-align: left; font-weight: 600; color: var(--text-primary); border-bottom: 1px solid var(--border-color); } .bsp_main_table td { padding: var(--spacing-4); border-bottom: 1px solid var(--border-light); color: var(--text-primary); } .bsp_main_table tr:hover { background-color: var(--background-secondary); } /* Content containers */ .bsp_main_content { max-width: 800px; margin: 0 auto; } .bsp_main_content_wide { max-width: 1000px; margin: 0 auto; } /* Form validation states - global */ .bsp-form-input.bsp-form-error { border-color: var(--error-red); box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1); } .bsp-form-input.bsp-form-success { border-color: var(--success-green); box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.1); } .bsp-form-error-message { color: var(--error-red); font-size: var(--font-size-sm); margin-top: var(--spacing-1); } /* Button loading states - global */ .bsp-btn.bsp-btn-loading { position: relative; color: transparent; } .bsp-btn.bsp-btn-loading::after { content: ''; position: absolute; top: 50%; left: 50%; width: 16px; height: 16px; border: 2px solid transparent; border-top: 2px solid currentColor; border-radius: 50%; animation: bsp-spin 1s linear infinite; transform: translate(-50%, -50%); color: white; } /* Form messages - global */ .bsp-form-message-success { background-color: rgba(16, 185, 129, 0.1); color: var(--success-green); padding: var(--spacing-4); border-radius: var(--radius-lg); border: 1px solid rgba(16, 185, 129, 0.2); } .bsp-form-message-error { background-color: rgba(239, 68, 68, 0.1); color: var(--error-red); padding: var(--spacing-4); border-radius: var(--radius-lg); border: 1px solid rgba(239, 68, 68, 0.2); }