Spaces:
Running
Running
| * { | |
| margin: 0; | |
| padding: 0; | |
| box-sizing: border-box; | |
| } | |
| html, | |
| body { | |
| height: 100%; | |
| width: 100%; | |
| font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', | |
| 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; | |
| overflow: hidden; | |
| } | |
| /* --- Top Bar --- */ | |
| #topBar { | |
| display: flex; | |
| align-items: center; | |
| height: 50px; | |
| background: #6366f1; | |
| padding: 0 20px; | |
| box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15); | |
| z-index: 1000; | |
| } | |
| #titleSection { | |
| display: flex; | |
| align-items: center; | |
| } | |
| #titleSection h1 { | |
| font-size: 20px; | |
| font-weight: 600; | |
| color: white; | |
| letter-spacing: 0.5px; | |
| } | |
| #divider { | |
| width: 2px; | |
| height: 30px; | |
| background: rgba(255, 255, 255, 0.3); | |
| margin: 0 20px; | |
| } | |
| /* --- Menus --- */ | |
| #menuSection { | |
| display: flex; | |
| gap: 5px; | |
| } | |
| .menuGroup { | |
| position: relative; | |
| } | |
| .menuButton { | |
| background: rgba(255, 255, 255, 0.15); | |
| color: white; | |
| border: 1px solid rgba(255, 255, 255, 0.2); | |
| padding: 8px 16px; | |
| border-radius: 4px; | |
| cursor: pointer; | |
| font-size: 14px; | |
| font-weight: 500; | |
| transition: all 0.2s ease; | |
| backdrop-filter: blur(10px); | |
| } | |
| .menuButton:hover { | |
| background: rgba(255, 255, 255, 0.25); | |
| border-color: rgba(255, 255, 255, 0.3); | |
| transform: translateY(-1px); | |
| } | |
| .menuButton:active { | |
| transform: translateY(0); | |
| } | |
| .dropdown { | |
| position: absolute; | |
| top: 100%; | |
| left: 0; | |
| background: white; | |
| border-radius: 6px; | |
| box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15); | |
| min-width: 150px; | |
| opacity: 0; | |
| visibility: hidden; | |
| transform: translateY(-8px); | |
| transition: all 0.2s ease; | |
| margin-top: 4px; | |
| z-index: 2000; | |
| } | |
| .menuGroup:hover .dropdown, | |
| .dropdown:hover { | |
| opacity: 1; | |
| visibility: visible; | |
| transform: translateY(0); | |
| } | |
| .dropdownItem { | |
| display: block; | |
| padding: 12px 16px; | |
| color: #333; | |
| text-decoration: none; | |
| font-size: 14px; | |
| transition: all 0.15s ease; | |
| border-left: 3px solid transparent; | |
| } | |
| .dropdownItem:first-child { | |
| border-top-left-radius: 6px; | |
| border-top-right-radius: 6px; | |
| } | |
| .dropdownItem:last-child { | |
| border-bottom-left-radius: 6px; | |
| border-bottom-right-radius: 6px; | |
| } | |
| .dropdownItem:hover { | |
| background: #f0f2f5; | |
| border-left-color: #667eea; | |
| padding-left: 20px; | |
| } | |
| .dropdownItem:active { | |
| background: #e8ebf0; | |
| } | |
| /* --- GitHub Link --- */ | |
| #githubLink { | |
| margin-left: auto; | |
| display: flex; | |
| align-items: center; | |
| } | |
| #githubLink a { | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| width: 40px; | |
| height: 40px; | |
| color: white; | |
| transition: all 0.2s ease; | |
| border-radius: 4px; | |
| } | |
| #githubLink a:hover { | |
| background: rgba(255, 255, 255, 0.15); | |
| transform: scale(1.05); | |
| } | |
| #githubLink a:active { | |
| transform: scale(0.95); | |
| } | |
| #githubLink svg { | |
| width: 24px; | |
| height: 24px; | |
| } | |
| /* --- Main Split Layout --- */ | |
| #pageContainer { | |
| display: flex; | |
| width: 100%; | |
| height: calc(100% - 50px); | |
| overflow: hidden; | |
| } | |
| #pageContainer.dragging { | |
| user-select: none; | |
| cursor: col-resize; | |
| } | |
| /* Add dark grey padding around Gradio + Code --- */ | |
| #outputPane { | |
| flex: 0 0 30%; | |
| background: #2c2c2c; | |
| /* dark grey background around both sections */ | |
| display: flex; | |
| flex-direction: column; | |
| box-sizing: border-box; | |
| overflow: hidden; | |
| } | |
| /* --- Tab Bar --- */ | |
| #tabBar { | |
| display: flex; | |
| background: #1f1f1f; | |
| border-bottom: 2px solid #e5e7eb; | |
| flex-shrink: 0; | |
| } | |
| .tab { | |
| padding: 12px 20px; | |
| cursor: pointer; | |
| font-size: 14px; | |
| font-weight: 500; | |
| color: #999; | |
| background: #1f1f1f; | |
| border: none; | |
| transition: all 0.2s ease; | |
| border-bottom: 3px solid transparent; | |
| margin-bottom: -2px; | |
| } | |
| .tab:hover { | |
| color: #ccc; | |
| } | |
| .tab.active { | |
| color: #6366f1; | |
| border-bottom-color: #6366f1; | |
| } | |
| /* --- Tab Content --- */ | |
| .tabContent { | |
| display: none; | |
| flex: 1; | |
| flex-direction: column; | |
| padding: 16px; | |
| gap: 16px; | |
| overflow: hidden; | |
| box-sizing: border-box; | |
| } | |
| .tabContent.active { | |
| display: flex; | |
| } | |
| /* Add matching background to the Gradio frame container */ | |
| #chatContainer { | |
| background: #2c2c2c; | |
| border: none; | |
| flex: 1; | |
| box-sizing: border-box; | |
| border-radius: 6px; | |
| overflow: hidden; | |
| } | |
| /* Slightly inset the Gradio iframe */ | |
| #chatContainer iframe, | |
| #gradioContainer iframe { | |
| border-radius: 6px; | |
| overflow: hidden; | |
| width: 100%; | |
| height: 100%; | |
| border: none; | |
| } | |
| #gradioContainer { | |
| background: #2c2c2c; | |
| border: none; | |
| flex: 1; | |
| box-sizing: border-box; | |
| border-radius: 6px; | |
| overflow: hidden; | |
| } | |
| /* Style the code area with matching margin and contrast */ | |
| #generatedCode { | |
| display: none; | |
| background: #1f1f1f; | |
| color: #e0e7ff; | |
| border-radius: 6px; | |
| padding: 16px; | |
| box-sizing: border-box; | |
| flex: 1; | |
| overflow-y: auto; | |
| font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'source-code-pro', monospace; | |
| white-space: pre-wrap; | |
| font-size: 13px; | |
| line-height: 1.5; | |
| } | |
| #aichatCode { | |
| background: #1f1f1f; | |
| color: #e0e7ff; | |
| border-radius: 6px; | |
| padding: 16px; | |
| box-sizing: border-box; | |
| flex: 1; | |
| overflow-y: auto; | |
| font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'source-code-pro', monospace; | |
| white-space: pre-wrap; | |
| font-size: 13px; | |
| line-height: 1.5; | |
| } | |
| /* --- Vertical Resizer --- */ | |
| .verticalResizer { | |
| display: none; | |
| height: 8px; | |
| background: #e5e7eb; | |
| cursor: row-resize; | |
| transition: background 0.2s ease; | |
| flex-shrink: 0; | |
| z-index: 1500; | |
| } | |
| .verticalResizer:hover, | |
| .verticalResizer.active { | |
| background: #6366f1; | |
| } | |
| /* --- Resizer --- */ | |
| .resizer { | |
| width: 8px; | |
| background: #e5e7eb; | |
| cursor: col-resize; | |
| transition: background 0.2s ease; | |
| flex-shrink: 0; | |
| z-index: 1500; | |
| } | |
| .resizer:hover, | |
| .resizer.active { | |
| background: #6366f1; | |
| } | |
| /* --- Right Pane --- */ | |
| #blocklyDiv { | |
| flex: 1; | |
| min-width: 40%; | |
| height: 100%; | |
| overflow: hidden; | |
| background: #fff; | |
| } |