Spaces:
Runtime error
Runtime error
| /* ═══════════════════════════════════════════════════════════ | |
| TWOQUARKS - QuarksLab | |
| ═══════════════════════════════════════════════════════════ | |
| ──── Precision systems for adaptive intelligence. ──── */ | |
| * { margin: 0; padding: 0; box-sizing: border-box; } | |
| :root { | |
| /* keep tokens but UI should be dark-glass first */ | |
| --ultra-blue: #3B82F6; | |
| --ultra-blue-bright: #60A5FA; | |
| --ultra-blue-deep: #1E40AF; | |
| --ultra-blue-glow: rgba(39, 100, 180, 0.35); | |
| --bg-base: #000000; | |
| --bg-elev: rgba(10, 12, 18, 0.82); | |
| --fg-primary: #FFFFFF; | |
| --fg-secondary: rgba(255, 255, 255, 0.72); | |
| --fg-tertiary: rgba(255, 255, 255, 0.46); | |
| /* DARK GLASS SYSTEM */ | |
| --surface-glass: rgba(0, 0, 0, 0.34); | |
| --surface-card: rgba(255, 255, 255, 0.045); | |
| --surface-card-hover: rgba(255, 255, 255, 0.075); | |
| --surface-input: rgba(255, 255, 255, 0.04); | |
| --border-subtle: rgba(255, 255, 255, 0.08); | |
| --border-medium: rgba(255, 255, 255, 0.14); | |
| /* de-emphasize blue (still usable as accent) */ | |
| --border-accent: rgba(180, 190, 200, 0.22); | |
| --space-xs: 0.5rem; | |
| --space-sm: 0.75rem; | |
| --space-md: 1rem; | |
| --space-lg: 1.5rem; | |
| --space-xl: 2rem; | |
| --radius-sm: 10px; | |
| --radius-md: 14px; | |
| --radius-lg: 18px; | |
| --radius-full: 999px; | |
| --font-body: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; | |
| --font-mono: 'JetBrains Mono', 'Fira Code', monospace; | |
| --trans-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1); | |
| --trans-base: 200ms cubic-bezier(0.4, 0, 0.2, 1); | |
| --trans-slow: 300ms cubic-bezier(0.4, 0, 0.2, 1); | |
| --shadow-soft: 0 10px 30px rgba(0,0,0,0.35); | |
| --shadow-glow: 0 0 22px rgba(140, 180, 255, 0.10); | |
| --z-base: 1; | |
| --z-canvas: 0; | |
| } | |
| html, body { height: 100%; overflow-x: hidden; } | |
| body { | |
| font-family: var(--font-body); | |
| background: var(--bg-base); | |
| color: var(--fg-primary); | |
| line-height: 1.6; | |
| -webkit-font-smoothing: antialiased; | |
| -moz-osx-font-smoothing: grayscale; | |
| } | |
| .gradio-container { | |
| background: var(--bg-base) ; | |
| color: var(--fg-primary) ; | |
| max-width: 1050px; | |
| margin: 0 auto; | |
| padding: var(--space-lg); | |
| } | |
| .gradio-container .prose, | |
| .gradio-container .markdown { | |
| color: var(--fg-secondary) ; | |
| } | |
| /* STARFIELD */ | |
| #quantumField { | |
| position: fixed; | |
| inset: 0; | |
| width: 100vw; | |
| height: 100vh; | |
| z-index: var(--z-canvas); | |
| background: var(--bg-base); | |
| pointer-events: none; | |
| } | |
| #tq-app { | |
| position: relative; | |
| z-index: var(--z-base); | |
| padding-top: var(--space-md); | |
| } | |
| /* HERO */ | |
| .tq-hero { | |
| margin: var(--space-md) 0 var(--space-lg) 0; | |
| padding: var(--space-lg) var(--space-xl); | |
| background: rgba(0,0,0,0.38); | |
| backdrop-filter: blur(16px) saturate(160%); | |
| -webkit-backdrop-filter: blur(12px) saturate(160%); | |
| border: 1px solid var(--border-subtle); | |
| border-radius: var(--radius-lg); | |
| box-shadow: var(--shadow-soft); | |
| } | |
| .tq-hero__brand { | |
| font-weight: 750; | |
| font-size: 1.55rem; | |
| letter-spacing: -0.02em; | |
| background: linear-gradient(135deg, var(--fg-primary) 0%, rgba(210,220,235,0.85) 100%); | |
| background-clip: text; | |
| -webkit-background-clip: text; | |
| -webkit-text-fill-color: transparent; | |
| } | |
| .tq-hero__desc { | |
| margin-top: var(--space-sm); | |
| color: var(--fg-secondary); | |
| font-size: 0.95rem; | |
| line-height: 1.7; | |
| max-width: 70ch; | |
| } | |
| /* BASE PANELS / CARDS — force dark glass (no blue wash) */ | |
| .gradio-container .gr-panel, | |
| .gradio-container [class*="gr-box"], | |
| .gradio-container .gr-form, | |
| .gradio-container .block, | |
| .gradio-container .wrap { | |
| background: var(--surface-card) ; | |
| backdrop-filter: blur(12px) ; | |
| -webkit-backdrop-filter: blur(12px) ; | |
| border: 1px solid var(--border-subtle) ; | |
| border-radius: var(--radius-md) ; | |
| padding: var(--space-lg) ; | |
| transition: transform var(--trans-base), | |
| box-shadow var(--trans-base), | |
| border-color var(--trans-base), | |
| background var(--trans-base) ; | |
| box-shadow: 0 6px 22px rgba(0,0,0,0.22) ; | |
| } | |
| .gradio-container .gr-panel:hover, | |
| .gradio-container [class*="gr-box"]:hover, | |
| .gradio-container .gr-form:hover { | |
| border-color: rgba(255,255,255,0.14) ; | |
| background: var(--surface-card-hover) ; | |
| box-shadow: 0 10px 32px rgba(0,0,0,0.30) ; | |
| } | |
| /* TITLES */ | |
| .tq-card-title { | |
| font-weight: 650; | |
| letter-spacing: -0.01em; | |
| color: var(--fg-primary); | |
| margin-bottom: 0.35rem; | |
| } | |
| .tq-card-subtitle { | |
| color: var(--fg-tertiary); | |
| font-size: 0.85rem; | |
| margin-bottom: 0.75rem; | |
| } | |
| /* TABS */ | |
| .gradio-container .gr-tab-nav { | |
| background: transparent ; | |
| border: none ; | |
| gap: var(--space-sm) ; | |
| padding: 0 ; | |
| margin-bottom: var(--space-lg) ; | |
| } | |
| .gradio-container .gr-tab-nav button { | |
| padding: 0.55rem 0.95rem ; | |
| font-size: 0.875rem ; | |
| font-weight: 520 ; | |
| color: var(--fg-primary) ; | |
| background: rgba(255, 255, 255, 0.02) ; | |
| border: 1px solid var(--border-medium) ; | |
| border-radius: var(--radius-full) ; | |
| opacity: 0.92 ; | |
| transition: all var(--trans-base) ; | |
| } | |
| .gradio-container .gr-tab-nav button:hover { | |
| background: rgba(255, 255, 255, 0.06) ; | |
| border-color: rgba(255,255,255,0.20) ; | |
| } | |
| .gradio-container .gr-tab-nav button.selected, | |
| .gradio-container .gr-tab-nav button[aria-selected="true"] { | |
| background: rgba(255,255,255,0.06) ; | |
| border-color: rgba(255,255,255,0.26) ; | |
| box-shadow: 0 0 0 1px rgba(255,255,255,0.12) inset ; | |
| opacity: 1 ; | |
| } | |
| /* INPUTS */ | |
| .gradio-container input[type="text"], | |
| .gradio-container input[type="number"], | |
| .gradio-container textarea, | |
| .gradio-container select { | |
| background: var(--surface-input) ; | |
| border: 1px solid rgba(255,255,255,0.16) ; | |
| border-radius: var(--radius-md) ; | |
| color: var(--fg-primary) ; | |
| padding: 0.65rem 0.85rem ; | |
| font-size: 0.95rem ; | |
| transition: all var(--trans-base) ; | |
| } | |
| .gradio-container input:focus, | |
| .gradio-container textarea:focus, | |
| .gradio-container select:focus { | |
| outline: none ; | |
| border-color: rgba(255,255,255,0.28) ; | |
| box-shadow: 0 0 0 3px rgba(255,255,255,0.08) ; | |
| } | |
| .gradio-container input[type="range"] { | |
| accent-color: rgba(210,220,235,0.75) ; | |
| } | |
| /* BUTTONS — dark glass, subtle accent (not primary-blue) */ | |
| .gradio-container button:not(.gr-tab-nav button), | |
| .gradio-container .gr-button { | |
| padding: 0.65rem 1.05rem ; | |
| font-size: 0.95rem ; | |
| font-weight: 600 ; | |
| letter-spacing: 0.01em ; | |
| color: var(--fg-primary) ; | |
| background: rgba(255,255,255,0.04) ; | |
| border: 1px solid rgba(255,255,255,0.14) ; | |
| border-radius: var(--radius-full) ; | |
| cursor: pointer ; | |
| transition: transform var(--trans-fast), | |
| box-shadow var(--trans-base), | |
| background var(--trans-base), | |
| border-color var(--trans-base) ; | |
| } | |
| .gradio-container button:hover:not(.gr-tab-nav button), | |
| .gradio-container .gr-button:hover { | |
| background: rgba(255,255,255,0.07) ; | |
| border-color: rgba(255,255,255,0.22) ; | |
| box-shadow: 0 0 18px rgba(0,0,0,0.20) ; | |
| } | |
| .gradio-container button:active:not(.gr-tab-nav button), | |
| .gradio-container .gr-button:active { transform: scale(0.985) ; } | |
| .gradio-container button:disabled, | |
| .gradio-container .gr-button:disabled { | |
| opacity: 0.35 ; | |
| cursor: not-allowed ; | |
| } | |
| /* Even if variant="primary" leaks, keep it dark */ | |
| .gradio-container button.primary, | |
| .gradio-container .gr-button-primary { | |
| background: rgba(255,255,255,0.06) ; | |
| border-color: rgba(255,255,255,0.20) ; | |
| box-shadow: 0 10px 30px rgba(0,0,0,0.18) ; | |
| } | |
| .gradio-container button.primary:hover, | |
| .gradio-container .gr-button-primary:hover { | |
| filter: brightness(1.06) ; | |
| box-shadow: 0 14px 40px rgba(0,0,0,0.22) ; | |
| } | |
| /* IMAGES general */ | |
| .gradio-container img { | |
| width: auto ; | |
| height: auto ; | |
| max-width: 100% ; | |
| max-height: 100% ; | |
| object-fit: contain ; | |
| display: block ; | |
| } | |
| /* IMPORTANT: kill any leftover preview containers if some Gradio version still renders them */ | |
| #down_gallery .gr-gallery-preview, | |
| #strange_gallery .gr-gallery-preview, | |
| #down_gallery [data-testid="gallery-preview"], | |
| #strange_gallery [data-testid="gallery-preview"] { | |
| display: none ; | |
| visibility: hidden ; | |
| height: 0 ; | |
| overflow: hidden ; | |
| } | |
| /* ===== Gallery (ONLY filmstrip) — NO [class*="gallery"] selectors ===== */ | |
| #down_gallery, #strange_gallery { margin-top: 12px ; } | |
| #down_gallery .gr-gallery, | |
| #strange_gallery .gr-gallery { | |
| background: rgba(0,0,0,0.22) ; | |
| border: 1px solid var(--border-subtle) ; | |
| border-radius: var(--radius-md) ; | |
| padding: 10px ; | |
| overflow: hidden ; | |
| } | |
| /* strip wrapper */ | |
| #down_gallery .gr-gallery > div, | |
| #strange_gallery .gr-gallery > div { | |
| overflow-x: auto ; | |
| overflow-y: hidden ; | |
| scroll-snap-type: x mandatory ; | |
| -webkit-overflow-scrolling: touch ; | |
| padding-bottom: 10px ; | |
| } | |
| /* list */ | |
| #down_gallery [role="list"], | |
| #strange_gallery [role="list"] { | |
| display: flex ; | |
| flex-wrap: nowrap ; | |
| gap: 12px ; | |
| padding: 4px ; | |
| } | |
| /* tile */ | |
| #down_gallery [role="listitem"], | |
| #strange_gallery [role="listitem"] { | |
| flex: 0 0 220px ; | |
| scroll-snap-align: start ; | |
| border-radius: var(--radius-md) ; | |
| overflow: hidden ; | |
| background: rgba(255,255,255,0.03) ; | |
| border: 1px solid rgba(255,255,255,0.10) ; | |
| box-shadow: 0 10px 24px rgba(0,0,0,0.28) ; | |
| transition: transform var(--trans-base), border-color var(--trans-base), box-shadow var(--trans-base) ; | |
| } | |
| #down_gallery [role="listitem"]:hover, | |
| #strange_gallery [role="listitem"]:hover { | |
| transform: translateY(-2px) ; | |
| border-color: rgba(255,255,255,0.18) ; | |
| box-shadow: 0 12px 34px rgba(0,0,0,0.36) ; | |
| } | |
| /* image in tile */ | |
| #down_gallery [role="listitem"] img, | |
| #strange_gallery [role="listitem"] img { | |
| width: 100% ; | |
| height: 220px ; | |
| object-fit: contain ; | |
| display: block ; | |
| background: rgba(0,0,0,0.40) ; | |
| } | |
| /* subtle top accent bar, but neutral */ | |
| #down_gallery [role="listitem"]::before, | |
| #strange_gallery [role="listitem"]::before { | |
| content: ""; | |
| display: block; | |
| height: 10px; | |
| background: linear-gradient(90deg, rgba(255,255,255,0.10), rgba(0,0,0,0)); | |
| } | |
| /* scrollbars inside strip */ | |
| #down_gallery .gr-gallery > div::-webkit-scrollbar, | |
| #strange_gallery .gr-gallery > div::-webkit-scrollbar { height: 10px ; } | |
| #down_gallery .gr-gallery > div::-webkit-scrollbar-track, | |
| #strange_gallery .gr-gallery > div::-webkit-scrollbar-track { | |
| background: rgba(255,255,255,0.03) ; | |
| border-radius: 220px ; | |
| } | |
| #down_gallery .gr-gallery > div::-webkit-scrollbar-thumb, | |
| #strange_gallery .gr-gallery > div::-webkit-scrollbar-thumb { | |
| background: rgba(255,255,255,0.10) ; | |
| border-radius: 220px ; | |
| border: 1px solid rgba(255,255,255,0.08) ; | |
| } | |
| #down_gallery .gr-gallery > div::-webkit-scrollbar-thumb:hover, | |
| #strange_gallery .gr-gallery > div::-webkit-scrollbar-thumb:hover { | |
| background: rgba(255,255,255,0.16) ; | |
| } | |
| /* labels, descriptions */ | |
| .gradio-container label, | |
| .gradio-container .gr-label { | |
| color: var(--fg-secondary) ; | |
| font-size: 0.875rem ; | |
| font-weight: 550 ; | |
| margin-bottom: var(--space-xs) ; | |
| } | |
| .gradio-container .gr-description, | |
| .gradio-container .gr-info { | |
| color: var(--fg-tertiary) ; | |
| font-size: 0.82rem ; | |
| line-height: 1.55 ; | |
| } | |
| /* code blocks */ | |
| .gradio-container pre, | |
| .gradio-container code { | |
| font-family: var(--font-mono) ; | |
| background: rgba(255,255,255,0.04) ; | |
| border: 1px solid rgba(255,255,255,0.10) ; | |
| border-radius: var(--radius-sm) ; | |
| padding: 0.35rem 0.55rem ; | |
| color: rgba(210,220,235,0.92) ; | |
| } | |
| /* progress */ | |
| .gradio-container .gr-loading { color: rgba(210,220,235,0.80) ; } | |
| .gradio-container .progress-bar { | |
| background: rgba(210,220,235,0.60) ; | |
| box-shadow: 0 0 12px rgba(210,220,235,0.10) ; | |
| } | |
| /* global scrollbars */ | |
| ::-webkit-scrollbar { width: 8px; height: 8px; } | |
| ::-webkit-scrollbar-track { background: rgba(255,255,255,0.02); } | |
| ::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.12); border-radius: var(--radius-sm); } | |
| ::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.18); } | |
| @media (max-width: 768px) { | |
| :root { --space-lg: 1rem; --space-xl: 1.5rem; } | |
| .gradio-container { padding: var(--space-md); } | |
| .tq-hero { padding: var(--space-md) var(--space-lg); } | |
| .tq-hero__brand { font-size: 1.25rem; } | |
| #down_gallery [role="listitem"], #strange_gallery [role="listitem"] { flex-basis: 200px ; } | |
| #down_gallery [role="listitem"] img, #strange_gallery [role="listitem"] img { height: 200px ; } | |
| } | |
| /* kill Gradio footer */ | |
| footer, .gradio-container footer { display: none ; } | |