*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;overflow:hidden;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);background-color:#12120b}.loginContainer{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;background-color:#12120b;color:#f0f8ff;font-family:Gill Sans,Gill Sans MT,Calibri,Trebuchet MS,sans-serif}.loginContainer input{background-color:#292919;border-radius:10px;height:20px;border:none;font-size:16px}.loginContainer{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;background-color:#12120b;font-family:Gill Sans,Gill Sans MT,Calibri,Trebuchet MS,sans-serif}.loginContainer h1{color:#f0f8ff}.loginContainer input{background-color:#292919;border-radius:10px;height:20px;border:none;box-shadow:0 0 1px 1px #5c5c5b8d;padding-left:12px;color:#f7fbfead;text-align:center}.loginContainer input:focus{outline:none;box-shadow:0 0 1px 2px #b4dcfa29;border:none}.sidebar{display:flex;flex-direction:column;height:100%;padding:1rem;gap:.75rem}.newChatBtn{background:none;border:1px solid rgba(92,92,91,.5);border-radius:8px;color:#f0f8ff;padding:.6rem 1rem;cursor:pointer;font-size:14px;text-align:left;transition:background .15s}.newChatBtn:hover{background:#ffffff0d}.chatList{display:flex;flex-direction:column;gap:.25rem;overflow-y:auto;flex:1}.chatItem{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;border-radius:8px;cursor:pointer;color:#f7fbfead;font-size:14px;transition:background .15s}.chatItem:hover{background:#ffffff0d}.chatItem.active{background:#ffffff1a;color:#f0f8ff}.chatTitle{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deleteBtn{background:none;border:none;color:#ffffff4d;cursor:pointer;font-size:12px;padding:2px 6px;border-radius:4px;flex-shrink:0;opacity:0;transition:opacity .15s,color .15s}.chatItem:hover .deleteBtn{opacity:1}.deleteBtn:hover{color:#ff6464cc}.chatContainer{display:flex;flex-direction:column;height:100dvh;background-color:#12120b;font-family:Gill Sans,Gill Sans MT,Calibri,Trebuchet MS,sans-serif}.messageList{flex:1;overflow-y:auto;padding-top:1rem;padding-bottom:1rem;display:flex;flex-direction:column;gap:1rem;color:#f0f8ff}.message{padding:.5rem 1rem;max-width:80%;margin-left:5rem;margin-right:5rem}.inputArea{padding:.75rem 5rem;background-color:#12120b;border-top:1px solid rgba(92,92,91,.3)}.assistant{align-self:flex-start}.user{background-color:#000;align-self:flex-end;border-radius:10px}.inputArea input{width:100%;height:3rem;font-size:16px;background-color:#292919;border:none;border-radius:10px;box-shadow:0 0 1px 1px #5c5c5b8d;padding-left:12px;color:#f7fbfead}.inputArea input:focus{outline:none;box-shadow:0 0 1px 2px #b4dcfa29}.thinking{display:flex;gap:5px;align-items:center;height:20px}.thinking span{width:8px;height:8px;border-radius:50%;background:#ffffff80;animation:bounce .8s ease-in-out infinite}.thinking span:nth-child(2){animation-delay:.2s}.thinking span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,to{transform:translateY(0);opacity:.4}50%{transform:translateY(-6px);opacity:1}}.messageList::-webkit-scrollbar{width:6px}.messageList::-webkit-scrollbar-track{background:transparent}.messageList::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.messageList::-webkit-scrollbar-thumb:hover{background:#ffffff4d}@media(max-width:768px){.message{margin-left:1rem;margin-right:1rem}.inputArea{padding:.75rem 1rem}}.layout{display:flex;height:100dvh;overflow:hidden;background-color:#12120b;position:relative}.sidebarWrapper{width:260px;flex-shrink:0;height:100%;border-right:1px solid rgba(92,92,91,.3);z-index:100}.chatWrapper{flex:1;overflow:hidden;position:relative}.hamburger{display:none;position:absolute;top:1rem;left:1rem;z-index:50;background:none;border:none;color:#f0f8ff;font-size:1.5rem;cursor:pointer}.overlay{display:none}@media(max-width:768px){.sidebarWrapper{position:fixed;left:-260px;top:0;height:100%;transition:left .3s ease;background-color:#12120b}.sidebarWrapper.open{left:0}.hamburger{display:block}.overlay{display:block;position:fixed;inset:0;background:#00000080;z-index:99}}
