static/main.css (296 lines of code) (raw):

body, input { line-height: 24px; color: #353740; font-family: "ColfaxAI", Helvetica, sans-serif; margin: 0; padding: 0; } body { display: flex; flex-direction: column; align-items: stretch; justify-content: center; width: 100%; overflow: hidden; } .icon { width: 34px; } h3 { font-size: 32px; line-height: 40px; font-weight: bold; color: #202123; margin: 16px 0 40px; } .chat-container { max-width: 600px; width: 70%; padding: 40px 20px 20px; margin: 0 auto; display: flex; flex-direction: column; overflow-y: auto; box-sizing: border-box; justify-content: space-between; } .user-message, .assistant-message { padding: 12px 16px; border-radius: 4px; margin-bottom: 8px; max-width: 80%; word-wrap: break-word; font-size: 16px; } .user-message { align-self: flex-end; background-color: #f7f7f8; } .assistant-message { align-self: flex-start; background-color: #cbdbf8; } .message-input-container { width: 100%; background: #fff; box-sizing: border-box; display: flex; justify-content: center; align-items: start; z-index: 100; } .message-input-container form, form { display: flex; align-items: center; width: 100%; max-width: 600px; margin: 0 auto; justify-content: space-between; } textarea, input[type="text"] { border: 1px solid #c5c5d2; border-radius: 8px; padding: 8px 12px; width: calc(100% - 20px); margin: 0 10px 24px 0; box-sizing: border-box; } textarea { resize: vertical; max-height: 32px; } input[type="submit"], input[type="button"], #send-btn { padding: 12px 16px; color: #fff; background-color: #1a73e8; border: none; border-radius: 4px; text-align: center; cursor: pointer; margin: 0 2px; } input[type="submit"] { flex-grow: 4; } input[type="button"] { flex-grow: 1; background-color: #f44336; } ::placeholder { color: #8e8ea0; opacity: 1; } .result { font-weight: bold; margin-top: 40px; } .typing-indicator-container { display: flex; justify-content: flex-start; } .typing-indicator { margin-left: 4px; font-size: 16px; } .typing-indicator::after { content: "•"; animation: typing 1.5s infinite step-start; } @keyframes typing { 0%, 100% { content: "•"; } 33% { content: "••"; } 66% { content: "•••"; } } .button-group { display: flex; align-items: center; justify-content: space-between; } .file-upload-input { display: none; } #upload-banner { display: none; position: fixed; top: 0; width: 100%; background-color: #1a73e8; color: white; text-align: center; padding: 10px; z-index: 1000; } #ids-container { font-size: 9px; margin-bottom: 20px; text-align: center; } .modal { display: none; position: fixed; z-index: 1; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgb(0, 0, 0); background-color: rgba(0, 0, 0, 0.4); } .modal-content { background-color: #fefefe; margin: 15% auto; padding: 20px; border: 1px solid #888; width: 80%; } .close { color: #aaa; float: right; font-size: 28px; font-weight: bold; } .close:hover, .close:focus { color: black; text-decoration: none; cursor: pointer; } .file-icon { cursor: pointer; color: #000; display: inline-block; font-size: 24px; padding-left: 5px; } .header { background-color: white; width: 100%; padding: 10px 0; display: flex; align-items: center; justify-content: start; } .header img { height: 20px; margin-right: 10px; } .header .demo-text { font-size: 15px; font-weight: bold; } .message-role { align-self: flex-start; font-size: 12pt; color: #000000; margin-bottom: 4px; } .message-role.user { align-self: flex-end; } #send-btn { width: 42px; height: 32px; border-radius: 4px; border: 1px solid #c5c5d2; background-color: #1a73e8; color: #fff; cursor: pointer; display: flex; justify-content: center; align-items: center; } .file-upload-section { display: flex; flex-direction: column; justify-content: space-around; align-items: center; padding: 20px; box-sizing: border-box; border-right: 1px solid #c5c5d2; } .centered-text { margin-top: 85%; padding: 20px; text-align: center; width: 100%; } .file-upload-btn, .file-upload-input + label { margin-top: auto; width: calc(100% - 40px); padding: 4px 8px; cursor: pointer; background-color: #1a73e8; color: white; border: none; max-height: 32px; border-radius: 8px; box-sizing: border-box; text-align: center; } body::after { content: none; } .main-content { display: flex; flex-direction: row; height: 100vh; overflow: auto; align-items: stretch; } .messages { flex-grow: 1; overflow-y: auto; display: flex; flex-direction: column; } .hidden { display: none; } #filesList { width: 100%; } .file-entry { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding-bottom: 15px; } .file-entry div { display: flex; align-items: center; } .file-entry span { flex-grow: 1; margin: 0 10px; } #filesDivider { border-top: 1px solid #ececf1; width: 100%; }