.chat-container{display:flex;flex-direction:column;height:100vh;max-width:1200px;margin:0 auto;background:#fff}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #e0e0e0;background:#fff}.chat-header h1{font-size:1.5rem;color:#333}.user-info{display:flex;gap:1rem;align-items:center;font-size:.9rem;color:#666}.sync-status{font-size:.8rem;color:#888}.sync-button{padding:.5rem 1rem;background:#0374b5;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem}.sync-button:hover:not(:disabled){background:#025a8c}.sync-button:disabled{background:#ccc;cursor:not-allowed}.messages-container{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.welcome-message{text-align:center;padding:3rem;color:#666}.welcome-message h2{margin-bottom:1rem;color:#333}.welcome-message .hint{font-size:.9rem;color:#999;margin-top:.5rem}.message{display:flex;margin-bottom:1rem}.message.user{justify-content:flex-end}.message.assistant{justify-content:flex-start}.message-content{max-width:70%;padding:1rem;border-radius:8px;word-wrap:break-word}.message.assistant .message-content h1,.message.assistant .message-content h2,.message.assistant .message-content h3{margin:.6em 0 .3em;line-height:1.3}.message.assistant .message-content h1:first-child,.message.assistant .message-content h2:first-child,.message.assistant .message-content h3:first-child{margin-top:0}.message.assistant .message-content h1{font-size:1.15em}.message.assistant .message-content h2{font-size:1.05em}.message.assistant .message-content h3{font-size:.95em}.message.assistant .message-content p{margin:.4em 0;line-height:1.5}.message.assistant .message-content ul,.message.assistant .message-content ol{margin:.4em 0;padding-left:1.4em}.message.assistant .message-content li{margin-bottom:.25em;line-height:1.5}.message.assistant .message-content strong{font-weight:600}.message.assistant .message-content hr{border:none;border-top:1px solid rgba(0,0,0,.1);margin:.6em 0}.message.assistant .message-content a:not(.citation-pill){color:#0374b5;text-decoration:underline}.message.assistant .message-content a:not(.citation-pill):hover{color:#025a8c}.message.assistant .message-content blockquote{border-left:3px solid #0374b5;margin:.4em 0;padding:.2em .8em;background:#0374b50d;border-radius:0 4px 4px 0}.message.assistant .message-content code{background:#0000000f;padding:.15em .35em;border-radius:3px;font-size:.9em}.message.user .message-content{background:#0374b5;color:#fff}.message.assistant .message-content{background:#f0f0f0;color:#333}.message-content.typing{font-style:italic;color:#666}.sources{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.3);font-size:.85rem;opacity:.9}.message.assistant .sources{border-top:1px solid rgba(0,0,0,.1)}.sources a{color:#0374b5;text-decoration:underline}.message.user .sources a{color:#cce5ff}.source-list{margin:.5rem 0 0;padding-left:1.5rem;font-size:.85rem}.source-list li{margin-bottom:.2rem}.citation-pill{display:inline-block;background:#e8f4fc;color:#0374b5;font-size:.8em;font-weight:500;padding:.15em .6em;border-radius:999px;text-decoration:none;border:1px solid #b8ddf0;margin:0 .15em;white-space:nowrap}.citation-pill:hover{background:#0374b5;color:#fff;border-color:#0374b5}.input-container{display:flex;gap:.5rem;padding:1rem 1.5rem;border-top:1px solid #e0e0e0;background:#fff}.input-container input{flex:1;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.input-container input:focus{outline:2px solid #0374b5;outline-offset:1px;border-color:#0374b5}.input-container button{padding:.75rem 1.5rem;background:#0374b5;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:500}.input-container button:hover:not(:disabled){background:#025a8c}.input-container button:disabled{background:#ccc;cursor:not-allowed}.error-message{padding:2rem;text-align:center;color:#d32f2f}.launch-container{padding:2rem;text-align:center}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5}#root{min-height:100vh}
