:root{--sidebar-bg:#171717;--sidebar-text:#ececec;--sidebar-hover:#2a2a2a;--sidebar-active:#343434;--main-bg:#212121;--main-text:#ececec;--user-bubble:#2f2f2f;--assistant-bubble:transparent;--input-bg:#2f2f2f;--input-border:#424242;--accent:#8b5cf6;--accent-hover:#7c3aed;--accent-glow:#8b5cf640;--copy-btn:#8e8ea0;--copy-hover:#ececec;--hint-color:#8e8ea0}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--main-bg);color:var(--main-text);height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans SC,sans-serif;overflow:hidden}#root{height:100vh}.app{height:100vh;display:flex;overflow:hidden}.sidebar{background:var(--sidebar-bg);border-right:1px solid #ffffff0f;flex-direction:column;width:260px;min-width:260px;display:flex}.sidebar-header{padding:12px}.new-chat-btn{width:100%;color:var(--sidebar-text);cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:10px;align-items:center;gap:10px;padding:12px 14px;font-size:14px;transition:background .2s;display:flex}.new-chat-btn:hover{background:var(--sidebar-hover)}.sidebar-conversations{flex:1;padding:0 8px;overflow-y:auto}.conv-btn{width:100%;color:var(--sidebar-text);cursor:pointer;text-align:left;opacity:.75;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:13.5px;transition:background .15s;display:flex}.conv-btn:hover{background:var(--sidebar-hover);opacity:1}.conv-btn.active{background:var(--sidebar-active);opacity:1}.conv-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-footer{border-top:1px solid #ffffff0f;padding:12px}.clear-btn{width:100%;color:var(--sidebar-text);cursor:pointer;opacity:.65;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:13.5px;transition:all .15s;display:flex}.clear-btn:hover{background:var(--sidebar-hover);opacity:1}.chat-main{flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.welcome{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:20px;display:flex}.welcome-icon{background:linear-gradient(135deg, var(--accent), #ec4899);color:#fff;width:72px;height:72px;box-shadow:0 0 40px var(--accent-glow);border-radius:50%;justify-content:center;align-items:center;margin-bottom:8px;display:flex}.welcome h1{letter-spacing:-.5px;color:var(--main-text);font-size:28px;font-weight:600}.welcome p{color:var(--hint-color);margin-bottom:24px;font-size:15px}.suggestions{flex-wrap:wrap;justify-content:center;gap:10px;max-width:600px;display:flex}.suggestion-btn{background:var(--input-bg);border:1px solid var(--input-border);color:var(--main-text);cursor:pointer;border-radius:20px;padding:10px 18px;font-size:13.5px;transition:all .2s}.suggestion-btn:hover{background:var(--sidebar-active);border-color:#fff3}.messages{scroll-behavior:smooth;flex:1;padding:24px 0;overflow-y:auto}.messages::-webkit-scrollbar{width:6px}.messages::-webkit-scrollbar-track{background:0 0}.messages::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.message-row{gap:16px;width:100%;max-width:800px;margin:0 auto;padding:16px 24px;animation:.3s fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.message-row.assistant{background:0 0}.message-row.user{background:0 0;justify-content:flex-end}.avatar{border-radius:50%;justify-content:center;align-items:center;width:32px;min-width:32px;height:32px;margin-top:2px;font-size:14px;display:flex}.message-row.assistant .avatar{background:linear-gradient(135deg, var(--accent), #ec4899);color:#fff}.message-row.user .avatar{color:#fff;background:#5b5fc7;order:2}.message-content{flex-direction:column;gap:4px;max-width:85%;display:flex}.message-row.user .message-content{align-items:flex-end}.message-bubble{white-space:pre-wrap;word-break:break-word;font-size:15px;line-height:1.65}.message-row.user .message-bubble{background:var(--user-bubble);border-radius:20px 20px 4px;padding:12px 18px}.message-row.assistant .message-bubble{padding:4px 0}.copy-btn{color:var(--copy-btn);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;align-items:center;gap:4px;width:fit-content;padding:4px 8px;font-size:12px;transition:all .15s;display:inline-flex}.message-content:hover .copy-btn{opacity:1}.copy-btn:hover{color:var(--copy-hover);background:#ffffff14}.loading-dots{gap:5px;padding:8px 0;display:flex}.loading-dots span{background:var(--hint-color);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite bounce}.loading-dots span:first-child{animation-delay:0s}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,80%,to{opacity:.4;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.chat-input-wrapper{width:100%;max-width:800px;margin:0 auto;padding:16px 24px 20px}.chat-input-container{background:var(--input-bg);border:1px solid var(--input-border);border-radius:16px;align-items:flex-end;padding:8px 8px 8px 18px;transition:border-color .2s,box-shadow .2s;display:flex}.chat-input-container:focus-within{box-shadow:0 0 0 2px var(--accent-glow);border-color:#fff3}.chat-input-container textarea{color:var(--main-text);resize:none;background:0 0;border:none;outline:none;flex:1;min-height:24px;max-height:160px;padding:6px 0;font-family:inherit;font-size:15px;line-height:1.5}.chat-input-container textarea::placeholder{color:var(--hint-color)}.chat-input-container textarea:disabled{opacity:.5}.send-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;transition:all .15s;display:flex}.send-btn:hover:not(:disabled){background:var(--accent-hover);transform:scale(1.05)}.send-btn:disabled{opacity:.3;cursor:not-allowed}.input-hint{text-align:center;color:var(--hint-color);opacity:.6;margin-top:8px;font-size:12px}@media (width<=768px){.sidebar{display:none}.message-row{padding:12px 16px}.chat-input-wrapper{padding:12px 16px 16px}}
