Spaces:
Sleeping
Sleeping
| :root { | |
| --bg: #0f1117; | |
| --panel: #151926; | |
| --panel-2: #1c2130; | |
| --line: #2a3144; | |
| --text: #e8edf8; | |
| --muted: #9ca6bd; | |
| --accent: #fbbf24; | |
| --accent-strong: #f59e0b; | |
| } | |
| html, | |
| body { | |
| margin: 0 ; | |
| padding: 0 ; | |
| overflow: hidden ; | |
| height: 100dvh ; | |
| max-height: 100dvh ; | |
| background: var(--bg); | |
| color: var(--text); | |
| position: fixed ; | |
| inset: 0 ; | |
| width: 100vw ; | |
| } | |
| /* HF Spaces iframe guard: force all Gradio wrappers to stay viewport-locked */ | |
| .gradio-container, | |
| .gradio-container > *, | |
| .gradio-container > .main, | |
| .gradio-container > .main > .wrap, | |
| .gradio-container > .main > .wrap > *, | |
| .app, | |
| .app > * { | |
| height: 100dvh ; | |
| max-height: 100dvh ; | |
| overflow: hidden ; | |
| margin: 0 ; | |
| } | |
| .gradio-container, | |
| .gradio-container > .main, | |
| .gradio-container > .main > .wrap { | |
| position: fixed ; | |
| inset: 0 ; | |
| width: 100vw ; | |
| max-width: 100vw ; | |
| padding: 0 ; | |
| gap: 0 ; | |
| } | |
| footer { | |
| display: none ; | |
| } | |
| #sidebar { | |
| position: fixed; | |
| left: 0; | |
| top: 0; | |
| bottom: 0; | |
| width: 272px; | |
| background: linear-gradient(180deg, #101420 0%, #0f1117 100%); | |
| border-right: 1px solid var(--line); | |
| display: flex; | |
| flex-direction: column; | |
| padding: 10px; | |
| box-sizing: border-box; | |
| z-index: 200; | |
| } | |
| .sb-top { | |
| display: flex; | |
| align-items: center; | |
| gap: 8px; | |
| margin-bottom: 12px; | |
| } | |
| .sb-logo { | |
| font-size: 0.9rem; | |
| font-weight: 650; | |
| color: #dce4f7; | |
| } | |
| .sb-icon-btn, | |
| .sb-new-chat, | |
| .sb-item, | |
| .sb-bottom-item { | |
| border: 1px solid transparent; | |
| background: transparent; | |
| color: var(--muted); | |
| cursor: pointer; | |
| transition: all 0.15s ease; | |
| } | |
| .sb-icon-btn { | |
| width: 34px; | |
| height: 34px; | |
| border-radius: 9px; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| } | |
| .sb-icon-btn:hover { | |
| color: var(--text); | |
| background: var(--panel-2); | |
| border-color: var(--line); | |
| } | |
| .sb-new-chat { | |
| width: 100%; | |
| display: flex; | |
| align-items: center; | |
| gap: 8px; | |
| padding: 10px; | |
| border-radius: 10px; | |
| font-size: 0.85rem; | |
| margin-bottom: 8px; | |
| text-align: left; | |
| } | |
| .sb-new-chat svg { | |
| width: 16px; | |
| height: 16px; | |
| } | |
| .sb-new-chat:hover { | |
| color: var(--text); | |
| background: var(--panel-2); | |
| border-color: var(--line); | |
| } | |
| .sb-section-label { | |
| color: #7f8aa5; | |
| font-size: 0.72rem; | |
| text-transform: uppercase; | |
| letter-spacing: 0.06em; | |
| margin: 8px 8px 4px; | |
| } | |
| .sb-item { | |
| width: 100%; | |
| text-align: left; | |
| padding: 9px 10px; | |
| border-radius: 9px; | |
| font-size: 0.83rem; | |
| overflow: hidden; | |
| text-overflow: ellipsis; | |
| white-space: nowrap; | |
| } | |
| .sb-item:hover, | |
| .sb-item.is-active { | |
| color: var(--text); | |
| background: var(--panel-2); | |
| border-color: var(--line); | |
| } | |
| .sb-spacer { | |
| flex: 1; | |
| } | |
| .sb-bottom { | |
| display: grid; | |
| gap: 6px; | |
| } | |
| .sb-bottom-item { | |
| width: 100%; | |
| text-align: left; | |
| padding: 9px 10px; | |
| border-radius: 9px; | |
| font-size: 0.8rem; | |
| } | |
| .sb-bottom-item:hover { | |
| color: var(--text); | |
| background: var(--panel-2); | |
| border-color: var(--line); | |
| } | |
| #main-col { | |
| position: fixed ; | |
| top: 0; | |
| bottom: 0; | |
| left: 272px; | |
| right: 0; | |
| display: flex; | |
| flex-direction: column; | |
| background: radial-gradient(circle at 20% 0%, #151a2b 0%, #0f1117 45%); | |
| overflow: hidden; | |
| padding: 0 ; | |
| margin: 0 ; | |
| } | |
| #welcome { | |
| flex: 1; | |
| min-height: 0; | |
| display: flex; | |
| flex-direction: column; | |
| align-items: center; | |
| justify-content: center; | |
| gap: 10px; | |
| padding: 0 24px 150px; | |
| } | |
| #welcome-kicker { | |
| margin: 0; | |
| color: #f6d88e; | |
| font-size: 0.84rem; | |
| letter-spacing: 0.05em; | |
| text-transform: uppercase; | |
| } | |
| #welcome-title { | |
| margin: 0; | |
| color: #f5f7fd; | |
| font-size: clamp(1.5rem, 2.7vw, 2.2rem); | |
| font-weight: 680; | |
| text-align: center; | |
| } | |
| #welcome-sub { | |
| margin: 0; | |
| color: var(--muted); | |
| font-size: 0.92rem; | |
| text-align: center; | |
| } | |
| #pills-row { | |
| margin-top: 10px; | |
| max-width: 760px; | |
| display: flex; | |
| flex-wrap: wrap; | |
| justify-content: center; | |
| gap: 8px; | |
| } | |
| .pill { | |
| background: rgba(28, 33, 48, 0.92); | |
| border: 1px solid var(--line); | |
| border-radius: 999px; | |
| padding: 8px 14px; | |
| color: #d1d9eb; | |
| font-size: 0.82rem; | |
| cursor: pointer; | |
| } | |
| .pill:hover { | |
| background: #22283a; | |
| border-color: #39445f; | |
| } | |
| #chatbot { | |
| flex: 1; | |
| min-height: 0; | |
| overflow-y: auto; | |
| border: none ; | |
| border-radius: 0 ; | |
| box-shadow: none ; | |
| background: transparent ; | |
| padding-bottom: 170px ; | |
| } | |
| #chatbot > div { | |
| max-width: 860px; | |
| margin: 0 auto; | |
| padding: 20px 14px; | |
| background: transparent ; | |
| } | |
| #chatbot .bubble-wrap { | |
| background: transparent ; | |
| } | |
| #chatbot [data-testid="user"] > div { | |
| background: #1c2130 ; | |
| border: 1px solid var(--line); | |
| border-radius: 14px ; | |
| } | |
| #chatbot [data-testid="assistant"] > div { | |
| background: transparent ; | |
| } | |
| #chatbot .prose { | |
| color: #e7ecf7 ; | |
| line-height: 1.55; | |
| } | |
| #chatbot img { | |
| border-radius: 12px; | |
| margin-top: 8px; | |
| border: 1px solid var(--line); | |
| } | |
| #steps-box { | |
| max-width: 860px; | |
| width: 100%; | |
| margin: 0 auto 8px; | |
| background: transparent ; | |
| border: none ; | |
| padding: 0 14px ; | |
| } | |
| .steps-toggle { | |
| background: none; | |
| border: none; | |
| color: #7f8aa5; | |
| font-size: 0.73rem; | |
| cursor: pointer; | |
| padding: 3px 2px; | |
| display: flex; | |
| align-items: center; | |
| gap: 4px; | |
| } | |
| .steps-toggle:hover { | |
| color: #abb6cf; | |
| } | |
| .steps-content { | |
| display: none; | |
| margin-top: 6px; | |
| background: #151927; | |
| border: 1px solid var(--line); | |
| border-radius: 10px; | |
| padding: 11px 12px; | |
| color: #c8d1e5; | |
| font-size: 0.78rem; | |
| } | |
| .steps-content pre { | |
| margin: 0; | |
| background: #1d2434; | |
| border: 1px solid #303b55; | |
| border-radius: 8px; | |
| padding: 7px 8px; | |
| color: #dce5f8; | |
| white-space: pre-wrap; | |
| } | |
| .step-tool { | |
| font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; | |
| background: #29314a; | |
| border: 1px solid #3a4665; | |
| color: #f7d794; | |
| border-radius: 7px; | |
| padding: 2px 6px; | |
| margin-left: 8px; | |
| font-size: 0.72rem; | |
| } | |
| #input-bar { | |
| position: fixed ; | |
| left: 272px; | |
| right: 0; | |
| bottom: 0; | |
| z-index: 110; | |
| padding: 20px clamp(14px, calc(50% - 430px), 110px) 12px; | |
| background: linear-gradient(to top, #0f1117 74%, rgba(15, 17, 23, 0)); | |
| } | |
| #input-container { | |
| display: flex; | |
| flex-direction: column; | |
| border-radius: 16px; | |
| background: #161b29; | |
| border: 1px solid #2f3850; | |
| box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25); | |
| } | |
| #input-container:focus-within { | |
| border-color: #4a5980; | |
| } | |
| #input-container #msg-box { | |
| border: none ; | |
| box-shadow: none ; | |
| background: transparent; | |
| } | |
| #input-container #msg-box textarea { | |
| min-height: 48px ; | |
| max-height: 160px ; | |
| padding: 14px 16px 6px ; | |
| border: none ; | |
| outline: none ; | |
| box-shadow: none ; | |
| background: transparent ; | |
| color: var(--text) ; | |
| font-size: 0.95rem ; | |
| line-height: 1.4; | |
| resize: none ; | |
| } | |
| #input-container #msg-box textarea::placeholder { | |
| color: #73809f ; | |
| } | |
| #input-bottom { | |
| display: flex; | |
| align-items: center; | |
| justify-content: space-between; | |
| padding: 0 10px 10px; | |
| } | |
| .input-left, | |
| .input-right { | |
| display: flex; | |
| align-items: center; | |
| gap: 8px; | |
| } | |
| .add-btn { | |
| width: 30px; | |
| height: 30px; | |
| border-radius: 8px; | |
| border: 1px solid #394560; | |
| background: #20273a; | |
| color: #bcc7e2; | |
| font-size: 1rem; | |
| cursor: pointer; | |
| } | |
| .add-btn:hover { | |
| background: #27304a; | |
| } | |
| .mcp-pill { | |
| display: flex; | |
| align-items: center; | |
| gap: 6px; | |
| border-radius: 999px; | |
| border: 1px solid #394560; | |
| background: #20273a; | |
| padding: 4px 10px; | |
| color: #c7d2ec; | |
| font-size: 0.75rem; | |
| } | |
| .mcp-dot { | |
| width: 7px; | |
| height: 7px; | |
| border-radius: 999px; | |
| background: #34d399; | |
| } | |
| #send-btn { | |
| display: none ; | |
| } | |
| .send-visual-btn { | |
| width: 34px; | |
| height: 34px; | |
| border-radius: 10px; | |
| border: none; | |
| background: var(--accent); | |
| color: #1b1300; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| cursor: pointer; | |
| } | |
| .send-visual-btn:hover { | |
| background: var(--accent-strong); | |
| } | |
| #input-note { | |
| text-align: center; | |
| color: #73809f; | |
| font-size: 0.7rem; | |
| padding: 5px 0 7px; | |
| } | |
| @media (max-width: 880px) { | |
| #sidebar { | |
| width: 76px; | |
| padding: 10px 8px; | |
| } | |
| .sb-logo, | |
| .sb-section-label, | |
| .sb-item, | |
| .sb-bottom-item, | |
| .sb-new-chat span { | |
| display: none; | |
| } | |
| .sb-new-chat { | |
| justify-content: center; | |
| } | |
| #main-col, | |
| #input-bar { | |
| left: 76px; | |
| } | |
| } | |
| @media (max-width: 620px) { | |
| #sidebar { | |
| display: none; | |
| } | |
| #main-col, | |
| #input-bar { | |
| left: 0; | |
| } | |
| #input-bar { | |
| padding-left: 10px; | |
| padding-right: 10px; | |
| } | |
| #chatbot > div { | |
| padding-left: 10px; | |
| padding-right: 10px; | |
| } | |
| .mcp-pill { | |
| display: none; | |
| } | |
| } | |