.login-container{align-items:center;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-box{background:#2d2d2d;border:1px solid #404040;border-radius:16px;box-shadow:0 8px 32px #0006;max-width:420px;padding:3rem;width:100%}.login-header{margin-bottom:2rem;text-align:center}.login-logo{animation:float 3s ease-in-out infinite;height:80px;margin-bottom:1rem;width:80px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.login-header h1{color:#f5f5f5;font-size:2rem;font-weight:600;margin-bottom:.5rem}.login-header p{color:#999;font-size:.9375rem}.login-form{display:flex;flex-direction:column;gap:1.5rem}.login-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#f87171;font-size:.875rem;padding:.875rem;text-align:center}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:#e5e5e5;font-size:.875rem;font-weight:500}.form-group input{background:#1a1a1a;border:1px solid #404040;border-radius:8px;color:#e5e5e5;font-size:.9375rem;padding:.875rem 1rem;transition:all .2s}.form-group input:focus{border-color:#fbbf24;box-shadow:0 0 0 2px #fbbf241a;outline:none}.form-group input:disabled{cursor:not-allowed;opacity:.5}.form-group input::placeholder{color:#666}.login-button{align-items:center;background:linear-gradient(135deg,#f59e0b,#fbbf24);border:none;border-radius:8px;color:#1a1a1a;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;margin-top:.5rem;padding:.875rem 1.5rem;transition:all .2s}.login-button:hover:not(:disabled){box-shadow:0 4px 12px #f59e0b66;transform:translateY(-2px)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{cursor:not-allowed;opacity:.5}.login-header .tagline{color:#999;font-size:.875rem;font-weight:400;letter-spacing:.5px;margin-top:.5rem;text-transform:uppercase}*{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}.app,body{background:#1a1a1a}.app{display:flex;flex-direction:column;height:100vh}.header{background:#2d2d2d;border-bottom:1px solid #404040;box-shadow:0 2px 8px #0000004d;padding:1rem 2rem}.header-content{justify-content:space-between;margin:0 auto;max-width:1200px}.header-brand,.header-content{align-items:center;display:flex}.header-brand{gap:.75rem}.header-logo-wrapper{align-items:center;border-radius:12px;display:flex;height:48px;justify-content:center;position:relative;transition:all .3s ease;width:48px}.header-logo-wrapper.connected{background:#10b98126;box-shadow:0 0 0 2px #10b9814d}.header-logo-wrapper.disconnected{background:#ef444426;box-shadow:0 0 0 2px #ef44444d}.header-logo-wrapper.checking{animation:pulse 2s ease-in-out infinite;background:#64748b26;box-shadow:0 0 0 2px #64748b4d}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.header-logo{animation:subtleFloat 4s ease-in-out infinite;height:40px;width:40px}@keyframes subtleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.header h1{color:#f5f5f5;font-size:1.5rem;font-weight:600;letter-spacing:-.3px;margin:0}.header-actions{gap:1rem}.header-actions,.logout-button{align-items:center;display:flex}.logout-button{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;color:#e5e5e5;cursor:pointer;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.logout-button:hover{background:#ffffff1a;border-color:#fbbf24}.chat-container{margin:0 auto;max-width:1200px;overflow:hidden;padding:2rem;width:100%}.chat-container,.messages{display:flex;flex:1 1;flex-direction:column}.messages{background:#1a1a1a;border-radius:12px 12px 0 0;gap:1.5rem;overflow-y:auto;padding:1.5rem}.welcome-message{color:#999;padding:4rem 2rem;text-align:center}.welcome-logo{animation:fadeInScale .6s ease-out;height:120px;margin-bottom:1.5rem;width:120px}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.welcome-message h2{color:#e5e5e5;font-size:3rem;font-weight:400;margin-bottom:0}.message{animation:slideIn .3s ease-out;display:flex}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{justify-content:flex-end}.message-content{border-radius:18px;font-size:1rem;line-height:1.6;max-width:70%;padding:1.125rem 1.5rem}.message.user .message-content{background:linear-gradient(135deg,#f59e0b,#fbbf24);border-bottom-right-radius:4px;box-shadow:0 2px 8px #f59e0b4d;color:#1a1a1a;font-weight:500}.message.assistant .message-content{background:#2d2d2d;border:1px solid #404040;border-bottom-left-radius:4px;color:#e5e5e5}.message-content.streaming{position:relative}.message-text{word-wrap:break-word;white-space:pre-wrap}.message-files{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.file-badge{background:#00000026;border-radius:12px;font-size:.875rem;padding:.25rem .75rem}.markdown{color:#e5e5e5;line-height:1.7}.markdown p{margin-bottom:.875rem}.markdown p:last-child{margin-bottom:0}.markdown code{background:#1a1a1a;border:1px solid #404040;border-radius:4px;color:#fbbf24;font-family:SF Mono,Monaco,Courier New,monospace;font-size:.9em;padding:.125rem .5rem}.markdown pre{background:#1a1a1a;border:1px solid #404040;border-radius:8px;color:#e5e5e5;margin:1rem 0;overflow-x:auto;padding:1.25rem}.markdown pre code{background:none;border:none;color:inherit;padding:0}.markdown h1,.markdown h2,.markdown h3{color:#f5f5f5;font-weight:600;margin-bottom:.75rem;margin-top:1.5rem}.markdown ol,.markdown ul{margin-bottom:.875rem;margin-left:1.5rem}.markdown li{margin-bottom:.5rem}.markdown a{border-bottom:1px solid #fbbf244d;color:#fbbf24;text-decoration:none;transition:all .2s}.markdown a:hover{border-bottom-color:#fcd34d;color:#fcd34d}.cursor-blink{animation:blink 1s step-end infinite;color:#fbbf24;display:inline-block;font-weight:700;margin-left:2px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.spinner{animation:spin 1s linear infinite;color:#fbbf24}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.input-container{background:#2d2d2d;border:1px solid #404040;border-radius:0 0 12px 12px;border-top:none;padding:1.25rem}.uploaded-files{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.file-chip{background:#1a1a1a;border:1px solid #404040;border-radius:20px;color:#ccc;font-size:.9375rem;gap:.5rem;padding:.5rem .75rem}.file-chip,.remove-file{align-items:center;display:flex}.remove-file{background:none;border:none;color:#999;cursor:pointer;padding:0;transition:color .2s}.remove-file:hover{color:#f87171}.input-wrapper{align-items:flex-end;display:flex;gap:.75rem}textarea{background:#1a1a1a;border:1px solid #404040;border-radius:12px;color:#e5e5e5;flex:1 1;font-family:inherit;font-size:1rem;line-height:1.5;max-height:200px;min-height:52px;padding:.875rem 1.25rem;resize:none;transition:all .2s ease}textarea::placeholder{color:#666;font-size:1rem}textarea:focus{background:#1a1a1a;border-color:#fbbf24;box-shadow:0 0 0 2px #fbbf241a;outline:none}textarea:disabled{background:#2d2d2d;border-color:#333;color:#666;cursor:not-allowed}.attach-button,.send-button{align-items:center;background:linear-gradient(135deg,#f59e0b,#fbbf24);border:none;border-radius:10px;color:#1a1a1a;cursor:pointer;display:flex;flex-shrink:0;font-weight:600;height:52px;justify-content:center;transition:all .2s ease;width:52px}.attach-button:hover:not(:disabled),.send-button:hover:not(:disabled){background:linear-gradient(135deg,#fbbf24,#fcd34d);box-shadow:0 4px 12px #f59e0b66;transform:translateY(-1px)}.attach-button:active:not(:disabled),.send-button:active:not(:disabled){transform:translateY(0)}.attach-button:disabled,.send-button:disabled{background:#404040;cursor:not-allowed;opacity:.3}.messages::-webkit-scrollbar{width:8px}.messages::-webkit-scrollbar-track{background:#0000}.messages::-webkit-scrollbar-thumb{background:#404040;border-radius:4px}.messages::-webkit-scrollbar-thumb:hover{background:#4a4a4a}.loading-screen{align-items:center;display:flex;justify-content:center;min-height:100vh}@media (max-width:768px){.chat-container,.header{padding:1rem}.message-content{font-size:.9375rem;max-width:85%}.header h1{font-size:1.25rem}.input-container,.messages{padding:1rem}.attach-button,.send-button{height:48px;width:48px}textarea{font-size:1rem}}.tagline{color:#999;font-size:1.125rem;font-size:.875rem;font-weight:400;letter-spacing:.5px;margin-top:.5rem;text-transform:uppercase}.welcome-message .tagline{font-size:1rem;margin-top:1rem}
/*# sourceMappingURL=main.cb733730.css.map*/