.gradio-container { background: linear-gradient(135deg, #f0f8ff 0%, #e6f3ff 100%); font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } .header-container { text-align: center; margin: 20px 0; padding: 30px; background: linear-gradient(135deg, rgba(255,107,107,0.1), rgba(78,205,196,0.1), rgba(255,234,167,0.1)); border-radius: 20px; box-shadow: 0 8px 32px rgba(31, 38, 135, 0.1); } .header-title { background: linear-gradient(90deg, #FF6B6B, #4ECDC4, #45B7D1, #96CEB4, #FFEAA7, #DDA0DD); background-size: 300% 300%; animation: gradient 8s ease infinite; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-align: center; font-size: 3em; font-weight: bold; margin: 20px 0; } @keyframes gradient { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } .loading-container { text-align: center; padding: 40px; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); border-radius: 15px; color: white; margin: 20px 0; } .loading-spinner { border: 4px solid #f3f3f3; border-top: 4px solid #3498db; border-radius: 50%; width: 40px; height: 40px; animation: spin 1s linear infinite; margin: 0 auto 20px; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .progress-bar { width: 100%; height: 20px; background-color: rgba(255,255,255,0.3); border-radius: 10px; overflow: hidden; margin: 15px 0; } .progress-fill { height: 100%; background: linear-gradient(90deg, #4CAF50, #81C784); border-radius: 10px; animation: progress 3s ease-in-out; } @keyframes progress { 0% { width: 0%; } 25% { width: 30%; } 50% { width: 60%; } 75% { width: 85%; } 100% { width: 100%; } } .prediction-box { background: linear-gradient(135deg, #FF6B6B, #4ECDC4); border-radius: 15px; padding: 20px; color: white; text-align: center; font-size: 1.2em; font-weight: bold; box-shadow: 0 8px 32px rgba(31, 38, 135, 0.37); margin: 15px 0; } .insight-box { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); border-radius: 15px; padding: 20px; color: white; margin: 15px 0; box-shadow: 0 8px 32px rgba(31, 38, 135, 0.37); } .executive-summary { background: linear-gradient(135deg, #2C3E50, #34495E); border-radius: 15px; padding: 25px; color: white; margin: 15px 0; box-shadow: 0 8px 32px rgba(31, 38, 135, 0.37); border-left: 5px solid #E74C3C; } .feature-box { background: linear-gradient(135deg, #96CEB4, #FFEAA7); border-radius: 15px; padding: 15px; margin: 10px 0; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); } .system-status { background: linear-gradient(135deg, #27AE60, #2ECC71); color: white; padding: 10px 20px; border-radius: 25px; margin: 10px 0; text-align: center; font-weight: bold; } .metric-card { background: linear-gradient(135deg, #3498DB, #5DADE2); color: white; border-radius: 10px; padding: 15px; margin: 5px; text-align: center; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); } .button-predict { background: linear-gradient(135deg, #E74C3C, #C0392B) !important; color: white !important; border: none !important; border-radius: 25px !important; padding: 15px 30px !important; font-size: 16px !important; font-weight: bold !important; box-shadow: 0 4px 15px rgba(231, 76, 60, 0.4) !important; transition: all 0.3s ease !important; } .button-predict:hover { transform: translateY(-2px) !important; box-shadow: 0 6px 20px rgba(231, 76, 60, 0.6) !important; } .plot-container { border: 1px solid #e1e5e9; border-radius: 15px; padding: 15px; margin: 15px 0; background: rgba(255, 255, 255, 0.95); box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); } .info-card { background: rgba(255, 255, 255, 0.95); border-radius: 10px; padding: 15px; margin: 10px 0; border-left: 5px solid #3498DB; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); }