.app{background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;height:100vh}.app-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-bottom:1px solid #fff3;padding:1rem 2rem;text-align:center}.app-header h1{color:#fff;font-size:1.8rem;font-weight:600;margin:0 0 .5rem}.app-header p{color:#fffc;font-size:.9rem;margin:0}.app-header .connection-status{align-items:center;border-radius:1rem;display:inline-flex;font-size:.8rem;font-weight:500;gap:.5rem;margin-left:1rem;padding:.25rem .75rem}.connection-status.connected{background:#4caf5033;color:#4caf50}.connection-status.disconnected{background:#ffc10733;color:#ffc107}.chat-container{box-sizing:border-box;flex-direction:column;margin:0 auto;max-width:1000px;width:100%}.chat-container,.chat-window{display:flex;flex:1 1;padding:1rem}.chat-window{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:1rem;box-shadow:0 8px 32px #0000001a;flex-direction:column;margin-bottom:1rem;min-height:400px}.messages-container{flex:1 1;max-height:calc(100vh - 250px);overflow-y:auto;padding:.5rem 0;scroll-behavior:smooth}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:#0000}.messages-container::-webkit-scrollbar-thumb{background:#0003;border-radius:3px}.message-bubble{align-items:flex-start;display:flex;gap:.75rem;margin-bottom:1rem}.user-message{flex-direction:row-reverse}.user-message .message-content{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:1rem 1rem .25rem 1rem;color:#fff}.ai-message .message-content{background:#f1f3f4;border-radius:1rem 1rem 1rem .25rem;color:#333}.message-avatar{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.user-message .message-avatar{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.ai-message .message-avatar{background:#e8f0fe;color:#1976d2}.message-content{box-shadow:0 2px 8px #0000001a;max-width:70%;padding:.75rem 1rem}.message-text{word-wrap:break-word;line-height:1.6;word-break:break-word}.message-text h1,.message-text h2,.message-text h3,.message-text h4,.message-text h5,.message-text h6{font-weight:600;margin-bottom:.5rem;margin-top:.5rem}.message-text h1{font-size:1.5rem}.message-text h2{font-size:1.3rem}.message-text h3{font-size:1.1rem}.message-text h4{font-size:1rem}.message-text h5{font-size:.9rem}.message-text h6{font-size:.85rem}.message-text p{margin:.5rem 0}.message-text ol,.message-text ul{margin:.5rem 0;padding-left:1.5rem}.message-text li{margin:.25rem 0}.message-text code{background:#0000001a;border-radius:.25rem;font-family:Courier New,monospace;font-size:.9em;padding:.125rem .25rem}.user-message .message-text code{background:#fff3}.message-text pre{background:#0000000d;border-radius:.5rem;margin:.5rem 0;overflow-x:auto;padding:.75rem}.user-message .message-text pre{background:#ffffff1a}.message-text pre code{background:#0000;padding:0}.message-text blockquote{border-left:3px solid #0003;font-style:italic;margin:.5rem 0;padding-left:1rem}.user-message .message-text blockquote{border-left-color:#ffffff4d}.message-text table{border-collapse:collapse;margin:.5rem 0;width:100%}.message-text td,.message-text th{border:1px solid #0000001a;padding:.5rem;text-align:left}.user-message .message-text td,.user-message .message-text th{border-color:#fff3}.message-text th{background:#0000000d;font-weight:600}.user-message .message-text th{background:#ffffff1a}.message-text a{color:#667eea;text-decoration:underline}.user-message .message-text a{color:#a5b4fc}.message-text hr{border:none;border-top:1px solid #0000001a;margin:1rem 0}.user-message .message-text hr{border-top-color:#fff3}.message-text::-webkit-scrollbar{width:4px}.message-text::-webkit-scrollbar-track{background:#0000}.message-text::-webkit-scrollbar-thumb{background:#0000004d;border-radius:2px}.message-time{font-size:.75rem;margin-top:.25rem;opacity:.7}.message-input-form{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:1rem;box-shadow:0 8px 32px #0000001a;padding:1rem}.message-input-container{align-items:center;display:flex;gap:.75rem}.message-input{background:#fff;border:2px solid #e0e7ff;border-radius:2rem;flex:1 1;font-size:1rem;outline:none;padding:.75rem 1rem;transition:all .2s ease}.message-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.message-input:disabled{background:#f5f5f5;cursor:not-allowed}.send-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:48px;justify-content:center;transition:all .2s ease;width:48px}.send-button:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.send-button:disabled{cursor:not-allowed;opacity:.5;transform:none}.typing-indicator{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem}.typing-dots{background:#f1f3f4;border-radius:1rem 1rem 1rem .25rem;display:flex;gap:.25rem;padding:1rem 1.5rem}.typing-dots span{animation:typing 1.4s ease-in-out infinite;background:#666;border-radius:50%;height:8px;width:8px}.typing-dots span:first-child{animation-delay:-.32s}.typing-dots span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.error-banner{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f443361a;border:1px solid #f443364d;border-radius:.5rem;color:#d32f2f;justify-content:space-between;margin-bottom:1rem;padding:.75rem 1rem}.error-banner,.error-content{align-items:center;display:flex}.error-content{gap:.5rem}.error-icon{flex-shrink:0}.error-message{font-size:.9rem;font-weight:500}.error-close{background:none;border:none;border-radius:.25rem;color:#d32f2f;cursor:pointer;padding:.25rem;transition:background-color .2s ease}.error-close:hover{background:#f443361a}.loading-spinner{align-items:center;color:#fffc;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:2rem}.spinner-icon{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-message{font-size:1rem;font-weight:500}.loading{align-items:center;color:#fff;display:flex;font-size:1.2rem;height:100vh;justify-content:center}@media (max-width:768px){.chat-container{padding:.5rem}.app-header{padding:1rem}.app-header h1{font-size:1.5rem}.message-content{max-width:85%}.message-avatar{height:32px;width:32px}.connection-status{margin-left:.5rem!important;padding:.2rem .5rem!important}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;overflow:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{height:100vh}
/*# sourceMappingURL=main.f512dbdf.css.map*/