body { width: 100%; height: 100%; padding: 20px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; background-color: #f0f4f8; color: #333; margin: 0; box-sizing: border-box; } #app { background-color: white; border-radius: 8px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); padding: 20px; height: calc(100% - 40px); min-width: 76vw; display: flex; flex-direction: column; } h3 { font-size: 22px; margin-bottom: 20px; color: #2c3e50; text-align: center; } input[type="password"], select { width: 100%; padding: 10px; margin-bottom: 15px; border: 1px solid #ddd; border-radius: 4px; font-size: 14px; background-color: white; } .ai-provider-section, .model-selection, .api-key-section { margin-bottom: 20px; } .ai-provider-section label, .model-selection label { display: block; margin-bottom: 5px; font-weight: 600; color: #2c3e50; } .status-message { font-size: 12px; margin-top: 5px; padding: 5px; border-radius: 3px; } .status-message.success { color: #27ae60; background-color: #d5f4e6; } .status-message.error { color: #e74c3c; background-color: #fdf2f2; } /* Context Management Styles */ .context-section, .device-section { margin-bottom: 20px; border: 1px solid #e0e6ed; border-radius: 6px; padding: 15px; background-color: #f8fafc; } .context-section h4, .device-section h4 { margin: 0 0 15px 0; color: #2c3e50; font-size: 16px; } .context-tabs { display: flex; margin-bottom: 15px; border-bottom: 1px solid #ddd; } .tab-button { background: none; border: none; padding: 8px 12px; cursor: pointer; border-bottom: 2px solid transparent; font-size: 14px; color: #666; margin: 0; width: auto; } .tab-button.active { color: #3498db; border-bottom-color: #3498db; } .tab-button:hover { background-color: #f0f4f8; } .tab-content { display: none; } .tab-content.active { display: block; } #contextTextInput { width: 100%; min-height: 100px; padding: 10px; border: 1px solid #ddd; border-radius: 4px; resize: vertical; font-family: inherit; margin-bottom: 10px; } #contextTypeSelect { width: 100%; padding: 8px; margin-bottom: 10px; border: 1px solid #ddd; border-radius: 4px; background-color: white; } #contextTitleInput { width: 100%; padding: 8px; margin-bottom: 10px; border: 1px solid #ddd; border-radius: 4px; } .upload-info { font-size: 12px; color: #666; margin-top: 5px; } .context-item { display: flex; justify-content: space-between; align-items: center; padding: 10px; border: 1px solid #ddd; border-radius: 4px; margin-bottom: 8px; background-color: white; } .context-item-info { flex: 1; } .context-item-title { font-weight: 600; color: #2c3e50; } .context-item-preview { font-size: 12px; color: #666; margin-top: 2px; } .context-item-actions { display: flex; gap: 5px; } .context-item-actions button { padding: 4px 8px; font-size: 12px; margin: 0; width: auto; } .danger-btn { background-color: #e74c3c !important; } .danger-btn:hover { background-color: #c0392b !important; } /* Device Section Styles */ .device-options { display: flex; flex-direction: column; gap: 10px; } .access-url { background-color: #f0f4f8; padding: 10px; border-radius: 4px; font-family: monospace; font-size: 12px; word-break: break-all; margin: 10px 0; border: 1px solid #ddd; } .qr-code { text-align: center; margin-top: 10px; } .device-info { background-color: white; padding: 15px; border-radius: 4px; border: 1px solid #ddd; margin-top: 10px; } button { width: 100%; padding: 10px; margin-bottom: 15px; background-color: #3498db; color: white; border: none; border-radius: 4px; cursor: pointer; font-size: 16px; transition: background-color 0.3s ease; } button:hover { background-color: #2980b9; } #saveApiKey { background-color: #2ecc71; } #saveApiKey:hover { background-color: #27ae60; } #transcript, #aiResponse { margin-top: 15px; border: 1px solid #ddd; padding: 15px; min-height: 60px; max-height: 150px; overflow-y: auto; border-radius: 4px; font-size: 14px; line-height: 1.5; } #transcript { background-color: #ecf0f1; } #aiResponse { background-color: #e8f6fd; } /* Scrollbar styling */ ::-webkit-scrollbar { width: 8px; } ::-webkit-scrollbar-track { background: #f1f1f1; } ::-webkit-scrollbar-thumb { background: #888; border-radius: 4px; } ::-webkit-scrollbar-thumb:hover { background: #555; } button:disabled { background-color: #95a5a6; cursor: not-allowed; } button:disabled:hover { background-color: #95a5a6; }