/* Mobile-first responsive design */ .gradio-container { max-width: 900px !important; margin: 0 auto !important; padding: 1rem !important; } /* Header styling */ .header-container { text-align: center; margin-bottom: 2rem; padding: 1.5rem 1rem; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); border-radius: 1rem; color: white; } .header-title { font-size: 2rem; font-weight: 700; margin-bottom: 0.5rem; line-height: 1.2; } .header-subtitle { font-size: 1rem; opacity: 0.95; font-weight: 400; } /* Info banner */ .info-banner { border-left: 4px solid #3b82f6; padding: 1rem; border-radius: 0.5rem; margin-bottom: 1.5rem; font-size: 0.875rem; background: var(--background-fill-secondary); color: var(--body-text-color); } /* Main content card — let gr.Group handle background */ .main-card { border-radius: 1rem; padding: 1.5rem; margin-bottom: 1.5rem; } /* Audio component styling */ .audio-container { margin-bottom: 1.5rem; } /* Transcription output styling — no hardcoded background */ .transcription-output { min-height: 120px; border-radius: 0.75rem; padding: 1rem; font-size: 1rem; line-height: 1.6; } /* Examples styling */ .examples-container { margin-top: 2rem; } /* Mobile optimizations */ @media (max-width: 640px) { .header-title { font-size: 1.5rem; } .header-subtitle { font-size: 0.875rem; } .main-card { padding: 1rem; } .gradio-container { padding: 0.5rem !important; } } /* Button styling */ .primary-button { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important; border: none !important; font-weight: 600 !important; padding: 0.75rem 2rem !important; font-size: 1rem !important; transition: transform 0.2s, box-shadow 0.2s !important; } .primary-button:hover { transform: translateY(-2px) !important; box-shadow: 0 10px 20px rgba(102, 126, 234, 0.3) !important; }