:root { --app-bg: #080b10; --surface: #101722; --surface-raised: #151f2c; --surface-soft: rgba(255, 255, 255, 0.055); --line: rgba(226, 232, 240, 0.14); --line-strong: rgba(226, 232, 240, 0.24); --text: #f8fafc; --text-soft: #cbd5e1; --muted: #8ea0b8; --teal: #2dd4bf; --teal-dark: #0f766e; --indigo: #818cf8; --blue: #38bdf8; --amber: #f59e0b; --rose: #fb7185; --green: #22c55e; --shadow: 0 18px 54px rgba(0, 0, 0, 0.34); } .gradio-container { background: linear-gradient(180deg, rgba(45, 212, 191, 0.08) 0, transparent 240px), linear-gradient(135deg, #080b10 0%, #0d1420 48%, #111827 100%) !important; color: var(--text) !important; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important; } .gradio-container > .main { max-width: 1280px !important; margin: 0 auto !important; } #hero { border: 1px solid var(--line); border-radius: 8px; background: linear-gradient(135deg, rgba(45, 212, 191, 0.16), rgba(129, 140, 248, 0.10) 52%, rgba(245, 158, 11, 0.08)), rgba(16, 23, 34, 0.86); box-shadow: var(--shadow); padding: 24px; margin: 8px 0 18px; } .brand-lockup { display: flex; align-items: center; gap: 14px; } .brand-mark { width: 42px; height: 42px; border-radius: 8px; background: linear-gradient(135deg, var(--teal), var(--indigo)); border: 1px solid rgba(255, 255, 255, 0.36); box-shadow: 0 12px 32px rgba(45, 212, 191, 0.22); position: relative; flex: 0 0 auto; } .brand-mark::after { content: ""; position: absolute; inset: 11px; border: 2px solid rgba(8, 11, 16, 0.76); border-radius: 6px; } .eyebrow { margin: 0 0 4px; color: var(--teal); font-size: 12px; line-height: 1.2; font-weight: 800; text-transform: uppercase; letter-spacing: 0.08em; } #hero h1 { margin: 0; color: var(--text); font-size: 42px; line-height: 1.05; letter-spacing: 0; } .hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px; align-items: end; margin-top: 18px; } .hero-copy { max-width: 760px; color: var(--text-soft); font-size: 16px; line-height: 1.6; margin: 0 0 16px; } .pipeline-rail { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; max-width: 680px; } .pipeline-rail span { min-height: 44px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--line); border-radius: 8px; background: rgba(8, 11, 16, 0.42); color: #e2e8f0; font-size: 13px; font-weight: 800; } .pipeline-rail span:nth-child(1) { border-color: rgba(45, 212, 191, 0.40); } .pipeline-rail span:nth-child(2) { border-color: rgba(34, 197, 94, 0.36); } .pipeline-rail span:nth-child(3) { border-color: rgba(129, 140, 248, 0.40); } .pipeline-rail span:nth-child(4) { border-color: rgba(245, 158, 11, 0.40); } .system-strip { min-width: 220px; border: 1px solid var(--line); border-radius: 8px; background: rgba(8, 11, 16, 0.38); padding: 10px; display: grid; gap: 8px; } .system-strip span { color: var(--text-soft); font-size: 13px; font-weight: 700; display: flex; align-items: center; gap: 8px; } .system-strip span::before { content: ""; width: 8px; height: 8px; border-radius: 999px; background: var(--green); box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.12); } .tabs { border-radius: 8px !important; } .tab-nav { border-bottom: 1px solid var(--line) !important; } .tab-nav button { color: var(--muted) !important; } .tab-nav button.selected { color: var(--text) !important; border-color: var(--teal) !important; } .demo-grid, .brick-grid, .diagnostic-grid { gap: 16px !important; } .panel-shell { border: 1px solid var(--line) !important; border-radius: 8px !important; background: rgba(16, 23, 34, 0.72) !important; box-shadow: 0 12px 34px rgba(0, 0, 0, 0.22); padding: 14px !important; } .input-panel { border-color: rgba(45, 212, 191, 0.22) !important; } .output-panel { border-color: rgba(245, 158, 11, 0.24) !important; } .section-kicker { display: inline-flex; align-items: center; min-height: 32px; padding: 0 10px; margin-bottom: 10px; border-radius: 8px; border: 1px solid var(--line); background: rgba(255, 255, 255, 0.055); color: var(--teal); font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: 0.08em; } .control-row { align-items: end !important; } .block, .form, .panel { border-radius: 8px !important; } .block { border-color: var(--line) !important; background: rgba(15, 23, 42, 0.60) !important; } label, .label-wrap span { color: var(--text-soft) !important; font-weight: 800 !important; } textarea, input, select { background: rgba(8, 11, 16, 0.68) !important; color: var(--text) !important; border-color: rgba(226, 232, 240, 0.14) !important; border-radius: 8px !important; font-size: 15px !important; } textarea:focus, input:focus, select:focus, button:focus-visible { outline: 2px solid rgba(45, 212, 191, 0.90) !important; outline-offset: 2px !important; } button.primary, button { border-radius: 8px !important; font-weight: 900 !important; min-height: 46px !important; transition: transform 160ms ease, border-color 160ms ease, filter 160ms ease !important; touch-action: manipulation; } button:hover { transform: translateY(-1px); filter: brightness(1.04); } button:active { transform: translateY(0); } #run_asl, #run_demo_asl { background: linear-gradient(135deg, var(--teal), var(--green)) !important; color: #04111a !important; border: none !important; } #run_llm, #run_demo_llm { background: linear-gradient(135deg, var(--indigo), var(--blue)) !important; color: white !important; border: none !important; } #run_tts, #run_demo_tts, #run_full { background: linear-gradient(135deg, var(--amber), var(--rose)) !important; color: #111827 !important; border: none !important; } .video-container, video { border-radius: 8px !important; } audio { width: 100%; } .json-holder, pre, code { border-radius: 8px !important; } .footer-note { color: var(--muted); font-size: 13px; text-align: center; margin: 18px 0 4px; } @media (prefers-reduced-motion: reduce) { button { transition: none !important; } button:hover { transform: none; } } @media (max-width: 900px) { #hero { padding: 18px; } #hero h1 { font-size: 32px; } .hero-grid { grid-template-columns: 1fr; } .system-strip { min-width: 0; } .pipeline-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 560px) { #hero h1 { font-size: 28px; } .brand-lockup { align-items: flex-start; } .pipeline-rail { grid-template-columns: 1fr; } }