import gradio as gr CSS = """ :root, body, .gradio-container { font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important; } .gradio-container { background: linear-gradient(135deg, #020617, #111827 56%, #312e81) !important; } .hero { max-width: 880px; margin: 0 auto; padding: 52px 24px; color: #f8fafc !important; } .badge { display: inline-flex; align-items: center; padding: 7px 11px; border-radius: 999px; background: #dbeafe; color: #1d4ed8; font-weight: 800; font-size: 0.9rem; margin-bottom: 18px; } .hero h1 { margin: 0 0 14px; font-size: clamp(2rem, 4.2vw, 3.2rem); line-height: 1.05; letter-spacing: 0; color: #ffffff !important; } .hero .lead { max-width: 760px; margin: 0; font-size: 1.08rem; line-height: 1.7; color: #e5e7eb !important; font-weight: 600; } .actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; } .button { text-decoration: none !important; padding: 11px 15px; border-radius: 8px; border: 1px solid rgba(199, 210, 254, 0.65); background: #ffffff; color: #111827 !important; font-weight: 800; box-shadow: 0 1px 2px rgba(15, 23, 42, 0.18); } .button.primary { background: #818cf8; color: #111827 !important; border-color: #818cf8; } .button.muted { background: rgba(255, 255, 255, 0.12); color: #f8fafc !important; border-color: rgba(255, 255, 255, 0.28); cursor: default; } """ HTML = """
ECCV 2026

Welcome to VideoSearch-R1

Iterative video retrieval and reasoning via Soft Query Refinement. VideoSearch-R1 retrieves, verifies, refines, and grounds video moments over large video corpora.

GitHub Repository Project Page Paper
""" with gr.Blocks(css=CSS, fill_width=True) as demo: gr.HTML(HTML) if __name__ == "__main__": demo.launch()