/* Main Dashboard Styles */ body { font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; background-color: #f0f4f8; color: #1f2937; background-image: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%); } .main-header { font-size: 2.2rem; background: linear-gradient(120deg, #1e3a8a 0%, #3b82f6 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-align: center; margin: 1.5rem 0; font-weight: 700; letter-spacing: -0.025em; padding-bottom: 0.75rem; border-bottom: 1px solid rgba(229, 231, 235, 0.5); text-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); } .category-header { font-size: 1.4rem; background: linear-gradient(90deg, #2563eb 0%, #4f46e5 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-top: 1.5rem; margin-bottom: 1rem; font-weight: 600; padding-left: 0.5rem; border-left: 4px solid; border-image: linear-gradient(to bottom, #3b82f6, #4f46e5) 1; text-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); } /* Glassomorphic Tool Card Styles */ .tool-card { background: linear-gradient(120deg, rgba(255, 255, 255, 0.8) 0%, rgba(240, 249, 255, 0.7) 100%); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-radius: 12px; padding: 1.75rem; box-shadow: 0 8px 32px rgba(31, 38, 135, 0.15); border: 1px solid rgba(255, 255, 255, 0.18); margin-bottom: 1.5rem; border-left: 4px solid; border-image: linear-gradient(to bottom, rgba(59, 130, 246, 0.8), rgba(79, 70, 229, 0.8)) 1; transition: all 0.3s ease; } .tool-card:hover { transform: translateY(-5px); box-shadow: 0 15px 30px rgba(31, 38, 135, 0.25); border-image: linear-gradient(to bottom, rgba(59, 130, 246, 1), rgba(79, 70, 229, 1)) 1; background: linear-gradient(120deg, rgba(255, 255, 255, 0.9) 0%, rgba(240, 249, 255, 0.8) 100%); } .tool-title { font-size: 1.3rem; font-weight: 600; background: linear-gradient(90deg, #1e3a8a 0%, #3b82f6 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-bottom: 0.75rem; display: flex; align-items: center; gap: 0.5rem; } .tool-description { color: #374151; margin-bottom: 1rem; line-height: 1.6; font-size: 1rem; } .tool-features { font-size: 0.95rem; color: #4b5563; margin-bottom: 0.75rem; line-height: 1.6; background-color: rgba(243, 244, 246, 0.6); padding: 0.85rem; border-radius: 8px; border: 1px solid rgba(229, 231, 235, 0.5); } /* Tool Badge Styles */ .tool-badge { display: inline-block; padding: 0.35rem 0.75rem; border-radius: 20px; font-size: 0.75rem; font-weight: 500; margin-right: 0.5rem; background-color: rgba(243, 244, 246, 0.8); color: #4b5563; border: 1px solid rgba(209, 213, 219, 0.5); backdrop-filter: blur(5px); } .tool-badge.ai-powered { background-color: rgba(79, 70, 229, 0.15); color: #4338ca; border-color: rgba(79, 70, 229, 0.3); } .tool-badge.semantic { background-color: rgba(16, 185, 129, 0.15); color: #065f46; border-color: rgba(16, 185, 129, 0.3); } .tool-badge.deep-learning { background-color: rgba(245, 158, 11, 0.15); color: #92400e; border-color: rgba(245, 158, 11, 0.3); } .tool-badge.time-series { background-color: rgba(6, 182, 212, 0.15); color: #0e7490; border-color: rgba(6, 182, 212, 0.3); } .tool-badge.forecasting { background-color: rgba(168, 85, 247, 0.15); color: #6d28d9; border-color: rgba(168, 85, 247, 0.3); } .tool-badge.content-extraction { background-color: rgba(236, 72, 153, 0.15); color: #be185d; border-color: rgba(236, 72, 153, 0.3); } .tool-badge.data-analysis { background-color: rgba(14, 165, 233, 0.15); color: #0369a1; border-color: rgba(14, 165, 233, 0.3); } /* Glassomorphic Workflow Card Styles */ .workflow-card { background: linear-gradient(135deg, rgba(239, 246, 255, 0.8) 0%, rgba(219, 234, 254, 0.7) 100%); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-radius: 12px; padding: 1.75rem; margin-bottom: 1.5rem; border-left: 4px solid; border-image: linear-gradient(to bottom, rgba(37, 99, 235, 0.8), rgba(79, 70, 229, 0.8)) 1; box-shadow: 0 8px 32px rgba(31, 38, 135, 0.15); border: 1px solid rgba(255, 255, 255, 0.18); } .workflow-title { font-size: 1.3rem; font-weight: 600; background: linear-gradient(90deg, #1e3a8a 0%, #3b82f6 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-bottom: 1.25rem; padding-bottom: 0.75rem; border-bottom: 1px solid rgba(191, 219, 254, 0.5); } .workflow-step-container { display: flex; margin-bottom: 1.25rem; background: linear-gradient(120deg, rgba(255, 255, 255, 0.7) 0%, rgba(240, 249, 255, 0.6) 100%); border-radius: 10px; padding: 1rem; box-shadow: 0 4px 6px rgba(31, 38, 135, 0.1); border: 1px solid rgba(255, 255, 255, 0.18); } .workflow-step-number { display: flex; align-items: center; justify-content: center; width: 2rem; height: 2rem; background: linear-gradient(135deg, rgba(37, 99, 235, 0.9) 0%, rgba(79, 70, 229, 0.9) 100%); color: white; border-radius: 50%; font-weight: 600; margin-right: 1rem; box-shadow: 0 4px 6px rgba(37, 99, 235, 0.3); } .workflow-step-content { flex: 1; } .step-title { font-weight: 600; background: linear-gradient(90deg, #1e3a8a 0%, #3b82f6 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-bottom: 0.5rem; font-size: 1.05rem; } .workflow-step-description { color: #4b5563; line-height: 1.5; font-size: 0.95rem; } /* Navigation Styles */ .nav-header { font-size: 2rem; background: linear-gradient(120deg, #1e3a8a 0%, #3b82f6 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-align: center; margin: 1.5rem 0; font-weight: 700; letter-spacing: -0.025em; padding-bottom: 0.75rem; border-bottom: 1px solid rgba(229, 231, 235, 0.5); text-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); } .nav-container { background: linear-gradient(120deg, rgba(255, 255, 255, 0.8) 0%, rgba(240, 249, 255, 0.7) 100%); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-radius: 12px; padding: 1.75rem; margin-bottom: 1.5rem; box-shadow: 0 8px 32px rgba(31, 38, 135, 0.15); border: 1px solid rgba(255, 255, 255, 0.18); } .nav-button { background: linear-gradient(120deg, rgba(255, 255, 255, 0.8) 0%, rgba(240, 249, 255, 0.7) 100%); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-radius: 12px; padding: 1.5rem; margin-bottom: 1rem; border: 1px solid rgba(255, 255, 255, 0.18); border-left: 4px solid; border-image: linear-gradient(to bottom, rgba(59, 130, 246, 0.8), rgba(79, 70, 229, 0.8)) 1; transition: all 0.3s ease; width: 100%; cursor: pointer; display: flex; flex-direction: column; align-items: center; } .nav-button:hover { transform: translateY(-5px); box-shadow: 0 15px 30px rgba(31, 38, 135, 0.25); border-image: linear-gradient(to bottom, rgba(59, 130, 246, 1), rgba(79, 70, 229, 1)) 1; background: linear-gradient(120deg, rgba(255, 255, 255, 0.9) 0%, rgba(240, 249, 255, 0.8) 100%); } .nav-button.selected { background: linear-gradient(120deg, rgba(239, 246, 255, 0.9) 0%, rgba(219, 234, 254, 0.8) 100%); border-image: linear-gradient(to bottom, #3b82f6, #4f46e5) 1; box-shadow: 0 8px 20px rgba(31, 38, 135, 0.2); } .nav-icon { font-size: 1.8rem; margin-bottom: 0.75rem; background: linear-gradient(90deg, #1e3a8a 0%, #3b82f6 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } .nav-title { font-size: 1.1rem; font-weight: 600; background: linear-gradient(90deg, #1e3a8a 0%, #3b82f6 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-align: center; } [data-testid="stSidebar"] { background-color: rgba(248, 250, 252, 0.7); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-right: 1px solid rgba(229, 231, 235, 0.5); } [data-testid="stSidebarNav"] { background-color: transparent; } .st-emotion-cache-16txtl3 { padding-top: 2rem; } .sidebar-header { font-size: 1.3rem; font-weight: 700; color: #1e3a8a; margin: 1rem 0; padding-bottom: 0.75rem; border-bottom: 1px solid rgba(229, 231, 235, 0.5); text-align: center; text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1); } /* Button Styles */ .stButton>button { background: linear-gradient(135deg, #3b82f6 0%, #4f46e5 100%); color: white; width: 100%; font-weight: 500; border-radius: 8px; border: 1px solid rgba(255, 255, 255, 0.18); padding: 0.6rem 1.2rem; transition: all 0.3s ease; backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); box-shadow: 0 4px 6px rgba(31, 38, 135, 0.15); } .stButton>button:hover { background: linear-gradient(135deg, #2563eb 0%, #4338ca 100%); box-shadow: 0 8px 15px rgba(31, 38, 135, 0.2); transform: translateY(-2px); } /* Glassomorphic Results Display Styles */ .results-container { background: linear-gradient(120deg, rgba(255, 255, 255, 0.8) 0%, rgba(240, 249, 255, 0.7) 100%); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-radius: 12px; padding: 1.75rem; margin-top: 1.25rem; box-shadow: 0 8px 32px rgba(31, 38, 135, 0.15); border: 1px solid rgba(255, 255, 255, 0.18); } .result-item { padding: 1.25rem; border-bottom: 1px solid rgba(229, 231, 235, 0.5); margin-bottom: 1.25rem; background: linear-gradient(120deg, rgba(255, 255, 255, 0.7) 0%, rgba(248, 250, 252, 0.6) 100%); border-radius: 8px; transition: all 0.2s ease; } .result-item:hover { background-color: rgba(255, 255, 255, 0.8); box-shadow: 0 4px 6px rgba(31, 38, 135, 0.1); } .result-title { font-size: 1.15rem; font-weight: 600; color: #1e3a8a; margin-bottom: 0.6rem; } .result-snippet { color: #4b5563; font-size: 0.95rem; line-height: 1.6; } .result-url { color: #059669; font-size: 0.85rem; margin-top: 0.6rem; word-break: break-all; } /* Form Styles */ .stTextInput>div>div>input { border-radius: 8px; border: 1px solid rgba(209, 213, 219, 0.5); background-color: rgba(255, 255, 255, 0.7); backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); } .stTextInput>div>div>input:focus { border-color: rgba(59, 130, 246, 0.7); box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.2); background-color: rgba(255, 255, 255, 0.9); } /* Dashboard Home Styles */ .intro-container { background: linear-gradient(135deg, rgba(239, 246, 255, 0.8) 0%, rgba(224, 242, 254, 0.7) 100%); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); padding: 1.75rem; border-radius: 12px; box-shadow: 0 8px 32px rgba(31, 38, 135, 0.15); margin-bottom: 1.5rem; border-left: 4px solid rgba(59, 130, 246, 0.7); border: 1px solid rgba(255, 255, 255, 0.18); } .intro-text { color: #374151; line-height: 1.7; font-size: 1.05rem; margin: 0; } .intro-highlight { color: #1e3a8a; font-weight: 600; } /* Chart Container Styles */ .chart-container { background-color: rgba(255, 255, 255, 0.7); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-radius: 12px; padding: 1.5rem; margin: 1.25rem 0; box-shadow: 0 8px 32px rgba(31, 38, 135, 0.15); border: 1px solid rgba(255, 255, 255, 0.18); } .chart-title { font-size: 1.1rem; font-weight: 600; color: #1e3a8a; margin-bottom: 1rem; text-align: center; } /* Tab Styles */ .stTabs [data-baseweb="tab-list"] { gap: 12px; background: linear-gradient(120deg, rgba(255, 255, 255, 0.8) 0%, rgba(240, 249, 255, 0.7) 100%); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); padding: 1rem; border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.18); box-shadow: 0 8px 32px rgba(31, 38, 135, 0.15); } .stTabs [data-baseweb="tab"] { background: linear-gradient(120deg, rgba(255, 255, 255, 0.7) 0%, rgba(240, 249, 255, 0.6) 100%); backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); border-radius: 10px; padding: 0.75rem 1.25rem; border: 1px solid rgba(255, 255, 255, 0.18); border-left: 3px solid; border-image: linear-gradient(to bottom, rgba(59, 130, 246, 0.8), rgba(79, 70, 229, 0.8)) 1; transition: all 0.3s ease; font-weight: 500; color: #1e3a8a; } .stTabs [data-baseweb="tab"]:hover { transform: translateY(-2px); box-shadow: 0 8px 15px rgba(31, 38, 135, 0.15); background: linear-gradient(120deg, rgba(255, 255, 255, 0.8) 0%, rgba(240, 249, 255, 0.7) 100%); } .stTabs [aria-selected="true"] { background: linear-gradient(135deg, #3b82f6 0%, #4f46e5 100%) !important; color: white !important; border-image: none !important; border-left: 3px solid #3b82f6 !important; box-shadow: 0 8px 15px rgba(59, 130, 246, 0.25) !important; } /* Additional Styles for Tabs Content */ .stTabs [data-baseweb="tab-panel"] { background: linear-gradient(120deg, rgba(255, 255, 255, 0.8) 0%, rgba(240, 249, 255, 0.7) 100%); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-radius: 0 12px 12px 12px; padding: 1.75rem; border: 1px solid rgba(255, 255, 255, 0.18); box-shadow: 0 8px 32px rgba(31, 38, 135, 0.15); margin-top: -1px; } /* Responsive Adjustments */ @media (max-width: 768px) { .tool-card, .workflow-card, .intro-container, .results-container { padding: 1.25rem; } .main-header { font-size: 1.8rem; } .category-header { font-size: 1.2rem; } .tool-title, .workflow-title { font-size: 1.15rem; } }