.app-container{display:flex;height:100vh;width:100vw;overflow:hidden;background:#fff;position:fixed;top:0;left:0}.sidebar{width:260px;background:#0000000d;display:flex;flex-direction:column;padding:.75rem;border-right:1px solid rgba(0,0,0,.1);height:100vh;overflow:hidden}.new-chat-btn{background:#0000001a;border:none;color:#000;padding:.5rem;border-radius:8px;cursor:pointer;transition:all .2s ease;margin-bottom:.75rem;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px}.new-chat-btn:hover{background:#00000026}.conversations-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;padding-right:.5rem;margin-bottom:.75rem}.conversation-item{padding:.5rem;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:.5rem;min-height:36px}.conversation-item:hover{background:#0000001a}.conversation-item.active{background:#00000026}.user-section{display:flex;flex-direction:column;gap:.5rem;padding-top:.75rem;border-top:1px solid rgba(0,0,0,.1)}.account-btn,.logout-btn{padding:.5rem;border-radius:8px;cursor:pointer;transition:all .2s ease;background:transparent;border:1px solid rgba(0,0,0,.1);display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:36px}.account-btn:hover,.logout-btn:hover{background:#0000000d}.chat-main{flex:1;display:flex;flex-direction:column;height:100vh;overflow:hidden;position:relative}.chat-container{flex:1;display:flex;flex-direction:column;max-width:80%;margin:20px auto;width:100%;padding:.75rem;height:100%;position:relative;justify-content:flex-end}.chat-messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;padding:.5rem;margin-bottom:.75rem;max-height:calc(100vh - 140px)}.message{padding:.75rem;border-radius:8px;max-width:85%;animation:fadeIn .3s ease-in-out;box-shadow:0 1px 2px #0000001a}.message.user{align-self:flex-end;color:#fff;background:#000}.message.assistant{align-self:flex-start;background:#fff;border:1px solid rgba(0,0,0,.1);width:100%}.message-content{line-height:1.5;font-size:.95rem;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;max-width:100%;padding:0 .5rem}.message-content ul,.message-content ol{padding-left:1.5rem;margin:.5rem 0}.message-content li{margin:.25rem 0}.message.user .message-content{color:#fff}.message-content pre{margin:.75rem 0;border-radius:8px;overflow-x:auto;background:#000c;padding:.75rem;max-width:100%;font-size:.9rem}.message-content code{font-family:monospace;font-size:.9em}.chat-input-container{position:sticky;bottom:0;left:0;right:0;display:flex;gap:.5rem;padding:.75rem;background:#fff;border-radius:8px;border:1px solid rgba(0,0,0,.1);min-height:60px;max-height:60px;margin-top:auto;box-shadow:0 -2px 10px #0000000d}.chat-input{flex:1;padding:.5rem .75rem;border:1px solid rgba(0,0,0,.1);border-radius:8px;font-size:.95rem;background:#fff;resize:none;min-height:40px;max-height:40px}.chat-input:focus{outline:none;border-color:#000}.send-button{padding:.5rem;border:none;border-radius:8px;color:#fff;background:#000;cursor:pointer;transition:all .2s ease;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.send-button:hover:not(:disabled){opacity:.9}.send-button:disabled{opacity:.5;cursor:not-allowed}.loading-indicator{display:flex;gap:.5rem;padding:.5rem;justify-content:center;align-items:center;min-height:24px}.dot{width:6px;height:6px;border-radius:50%;background:#000;animation:bounce 1.4s infinite ease-in-out}.dot:nth-child(1){animation-delay:-.32s}.dot:nth-child(2){animation-delay:-.16s}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.app-container{flex-direction:column}.sidebar{width:100%;height:auto;max-height:40vh;border-right:none;border-bottom:1px solid rgba(0,0,0,.1);padding:.5rem}.chat-container{padding:.5rem;height:calc(60vh - 2px)}.chat-messages{max-height:calc(60vh - 80px)}.message{max-width:90%}.chat-input-container{margin:0;padding:.5rem;min-height:50px;max-height:50px}.chat-input{min-height:36px;max-height:36px;font-size:.9rem}.send-button{width:36px;height:36px}}.chat-messages::-webkit-scrollbar,.conversations-list::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track,.conversations-list::-webkit-scrollbar-track{background:#0000000d;border-radius:4px}.chat-messages::-webkit-scrollbar-thumb,.conversations-list::-webkit-scrollbar-thumb{background:#0003;border-radius:4px;transition:all .2s ease}.chat-messages::-webkit-scrollbar-thumb:hover,.conversations-list::-webkit-scrollbar-thumb:hover{background:#0000004d}.auth-container{display:flex;height:100vh;width:100vw;align-items:center;justify-content:center;background:#fff}.auth-box{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 20px #0000001a;width:100%;max-width:400px}.auth-title{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;text-align:center;color:#000}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-input{padding:.75rem;border:1px solid rgba(0,0,0,.1);border-radius:8px;font-size:.95rem;transition:all .2s ease}.auth-input:focus{outline:none;border-color:#000}.auth-button{padding:.75rem;border:none;border-radius:8px;color:#fff;background:#000;cursor:pointer;transition:all .2s ease;font-size:.95rem;position:relative;min-height:48px;display:flex;align-items:center;justify-content:center}.auth-button:hover{opacity:.9}.auth-button:disabled{opacity:.7;cursor:not-allowed}.auth-link{text-align:center;margin-top:1rem;font-size:.9rem;color:#000000b3}.auth-link a{color:#000;text-decoration:none;font-weight:500}.auth-link a:hover{text-decoration:underline}.auth-divider{display:flex;align-items:center;margin:1rem 0;color:#00000080}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid rgba(0,0,0,.1)}.auth-divider span{padding:0 1rem;font-size:.9rem}.social-auth-buttons{display:flex;gap:1rem;margin-top:1rem}.social-auth-button{flex:1;padding:.75rem;border:1px solid rgba(0,0,0,.1);border-radius:8px;background:#fff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.social-auth-button:hover{background:#0000000d}.auth-error{background:#ff00001a;color:#d32f2f;padding:.75rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem;text-align:center}.loading-dots{display:flex;align-items:center;gap:.5rem}.loading-dots .dot{width:6px;height:6px;background:#fff;border-radius:50%;animation:bounce 1.4s infinite ease-in-out}.loading-dots .dot:nth-child(1){animation-delay:-.32s}.loading-dots .dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.auth-input:disabled{opacity:.7;cursor:not-allowed}.social-auth-button:disabled{opacity:.7;cursor:not-allowed}:root{--color-primary: #0A2647;--color-secondary: #205295;--gradient-primary: linear-gradient(135deg, #0A2647 0%, #205295 100%)}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{padding:1.5rem;color:#fff;text-align:center}.app-header h1{margin:0;font-size:2rem;font-weight:700}.app-header p{margin:.5rem 0 0;opacity:.9}.app-main{flex:1;display:flex;flex-direction:column}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc}.text-gradient{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}*{padding:0;margin:0;box-sizing:border-box;font-family:Inter,sans-serif}
