Spaces:
Sleeping
Sleeping
| :root { | |
| font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; | |
| line-height: 1.5; | |
| font-weight: 400; | |
| color-scheme: light dark; | |
| color: rgba(255, 255, 255, 0.87); | |
| background-color: #1a1a1a; | |
| } | |
| body { | |
| margin: 0; | |
| } | |
| /* New 3-Panel Grid Layout */ | |
| .app-container { | |
| display: grid; | |
| grid-template-columns: 320px 1fr 400px; /* System | Main | Knowledge */ | |
| grid-template-rows: auto 1fr; /* Header | Content */ | |
| grid-template-areas: | |
| "header header header" | |
| "system-panel main-panel knowledge-panel"; | |
| height: 100vh; | |
| width: 100vw; | |
| overflow: hidden; | |
| } | |
| .app-header { | |
| grid-area: header; | |
| padding: 1rem 2rem; | |
| border-bottom: 1px solid #333; | |
| background-color: #242424; | |
| } | |
| .header-content { | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: center; | |
| } | |
| .tagline { | |
| color: #888; | |
| font-size: 0.9rem; | |
| margin: 0.2rem 0 0 0; | |
| } | |
| .system-panel, | |
| .main-panel, | |
| .knowledge-panel { | |
| padding: 1rem; | |
| overflow-y: auto; | |
| height: calc(100vh - 80px); /* Adjust based on header height */ | |
| } | |
| .system-panel { | |
| grid-area: system-panel; | |
| background-color: #202020; | |
| border-right: 1px solid #333; | |
| } | |
| .main-panel { | |
| grid-area: main-panel; | |
| display: flex; | |
| flex-direction: column; | |
| } | |
| .knowledge-panel { | |
| grid-area: knowledge-panel; | |
| background-color: #202020; | |
| border-left: 1px solid #333; | |
| } | |
| .panel-section { | |
| margin-bottom: 2rem; | |
| border: 1px solid #333; | |
| border-radius: 8px; | |
| padding: 1rem; | |
| } | |
| .panel-section h3 { | |
| margin-top: 0; | |
| color: #00aaff; | |
| } | |
| /* General Component Styles */ | |
| button { | |
| padding: 10px 20px; | |
| border-radius: 6px; | |
| border: 1px solid transparent; | |
| background-color: #007acc; | |
| color: white; | |
| font-size: 1em; | |
| font-weight: 500; | |
| cursor: pointer; | |
| transition: all 0.15s ease; | |
| user-select: none; | |
| } | |
| button:disabled { | |
| background-color: #444; | |
| cursor: not-allowed; | |
| opacity: 0.6; | |
| } | |
| button:hover:not(:disabled) { | |
| background-color: #0099e6; | |
| transform: translateY(-1px); | |
| box-shadow: 0 2px 8px rgba(0, 122, 204, 0.3); | |
| } | |
| button:active:not(:disabled) { | |
| transform: translateY(0) scale(0.98); | |
| box-shadow: 0 1px 4px rgba(0, 122, 204, 0.2); | |
| } | |
| input, select, textarea { | |
| width: 100%; | |
| padding: 10px 15px; | |
| border-radius: 6px; | |
| border: 1px solid #555; | |
| background-color: #333; | |
| color: white; | |
| font-size: 1em; | |
| box-sizing: border-box; | |
| } | |
| /* Chat/Inference Styles (re-purposed) */ | |
| .chat-container { | |
| display: flex; | |
| flex-direction: column; | |
| height: 100%; | |
| } | |
| .messages { | |
| flex-grow: 1; | |
| overflow-y: auto; | |
| padding-right: 10px; | |
| margin-bottom: 1rem; | |
| } | |
| .message { | |
| margin-bottom: 1.5rem; | |
| padding: 1rem; | |
| border-radius: 8px; | |
| line-height: 1.6; | |
| } | |
| .question { | |
| background-color: #3a3a3a; | |
| align-self: flex-end; | |
| max-width: 80%; | |
| margin-left: auto; | |
| } | |
| .response { | |
| background-color: #2a2a2a; | |
| border: 1px solid #4a4a4a; | |
| max-width: 95%; | |
| } | |
| .input-area { | |
| margin-top: 1rem; | |
| display: flex; | |
| gap: 10px; | |
| } | |
| /* Save button disabled state */ | |
| .save-btn:disabled { | |
| background-color: #555; | |
| cursor: not-allowed; | |
| } | |
| /* Loading Dots Animation */ | |
| .loading-dots { | |
| display: inline-block; | |
| width: 1.5em; /* Adjust as needed */ | |
| text-align: left; | |
| } | |
| .loading-dots span { | |
| animation: blink 1.4s infinite; | |
| } | |
| .loading-dots span:nth-child(2) { | |
| animation-delay: 0.2s; | |
| } | |
| .loading-dots span:nth-child(3) { | |
| animation-delay: 0.4s; | |
| } | |
| @keyframes blink { | |
| 0% { opacity: 0.2; } | |
| 20% { opacity: 1; } | |
| 100% { opacity: 0.2; } | |
| } | |