*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1a1a1a;background:#f4f5f7}.layout{display:flex;height:100vh}.sidebar{width:260px;flex-shrink:0;background:#14213d;color:#e8eaf0;display:flex;flex-direction:column;padding:16px 12px;gap:12px}.sidebar-header{font-weight:600;letter-spacing:.3px;padding:4px 8px}.new-btn,.sidebar-header{font-size:14px;color:#ffffff}.new-btn{border:1px solid #3a4a6b;background:#1d2d4d;border-radius:8px;padding:10px 12px;cursor:pointer;text-align:left}.new-btn:hover:not(:disabled){background:#26385c}.conv-list{display:flex;flex-direction:column;gap:2px;overflow-y:auto}.conv-item{border:none;background:transparent;color:#c3c9d6;border-radius:6px;padding:8px 10px;font-size:13px;cursor:pointer;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv-item:hover:not(:disabled){background:#1d2d4d;color:#ffffff}.conv-item.active{background:#26385c;color:#ffffff}.conv-row{display:flex;align-items:center;border-radius:6px}.conv-row .conv-item{flex:1 1;min-width:0}.conv-row.active,.conv-row.active .conv-item{background:#26385c;color:#ffffff}.conv-row:hover:not(.active){background:#1d2d4d}.conv-delete{border:none;background:transparent;color:#8892a8;font-size:16px;line-height:1;padding:6px 8px;border-radius:6px;cursor:pointer;visibility:hidden}.conv-row:hover .conv-delete{visibility:visible}.conv-delete:hover:not(:disabled){color:#ff8f8f}.file-card{border:1px solid #d8dde7;background:#f6f8fb;border-radius:10px;padding:12px 14px;margin:10px 0}.file-card-head{display:flex;align-items:center;gap:8px;font-weight:600;color:#22314f;font-size:14px;word-break:break-all}.file-actions{display:flex;gap:8px;margin-top:10px}.file-btn{border:1px solid #c6cede;background:#ffffff;color:#2b3c60;border-radius:8px;padding:6px 12px;font-size:13px;cursor:pointer}.file-btn:hover{background:#eef2f8}.file-generating{color:#6b7791}.file-check,.file-generating{margin-top:8px;font-size:13px}.file-check{padding:6px 10px;border-radius:6px}.file-check.ok{color:#1b7a43;background:#eaf7ef}.file-check.warn{color:#b3261e;background:#fdecea}.file-check.warn div+div{margin-top:4px}.main{min-width:0}.main,.thread{flex:1 1;display:flex;flex-direction:column}.thread{overflow-y:auto;padding:24px;gap:16px}.msg-row{display:flex}.msg-row.user{justify-content:flex-end}.msg-row.assistant{justify-content:flex-start}.bubble{max-width:720px;padding:12px 16px;border-radius:12px;font-size:15px;line-height:1.55}.user-bubble{background:#14213d;color:#ffffff;white-space:pre-wrap;word-break:break-word;border-bottom-right-radius:4px}.assistant-bubble{background:#ffffff;color:#1a1a1a;border:1px solid #e3e5ea;border-bottom-left-radius:4px}.paragraph{white-space:pre-wrap;word-break:break-word}.paragraph+.paragraph{margin-top:10px}.typing{color:#8a8f9c}.sources{margin-top:12px;display:flex;flex-wrap:wrap;gap:6px;padding-top:10px;border-top:1px solid #eceef2}.source-chip{font-size:12px;background:#eef1f6;color:#3a4a6b;border-radius:6px;padding:4px 8px}.empty{margin:auto;max-width:560px;text-align:center;padding:24px}.empty h1{font-size:26px;margin-bottom:12px}.empty p{font-size:15px;color:#4a4f5c;line-height:1.6;margin-bottom:24px}.examples{display:flex;flex-direction:column;gap:10px}.example-chip{border:1px solid #d6d9e0;background:#ffffff;color:#14213d;border-radius:10px;padding:12px 14px;font-size:14px;cursor:pointer;text-align:left}.example-chip:hover:not(:disabled){border-color:#14213d;background:#f7f8fa}.error-banner{margin:0 24px 8px;padding:10px 14px;background:#fdecea;color:#b3261e;border:1px solid #f5c6c2;border-radius:8px;font-size:14px}.composer{display:flex;gap:10px;padding:16px 24px 20px;border-top:1px solid #e3e5ea;background:#ffffff}.input{flex:1 1;resize:none;border:1px solid #d6d9e0;border-radius:10px;padding:10px 12px;font-size:15px;font-family:inherit;line-height:1.5;outline:none}.input:focus{border-color:#14213d}.input:disabled{background:#f4f5f7}.send-btn{align-self:flex-end;border:none;background:#14213d;color:#ffffff;border-radius:10px;padding:10px 20px;font-size:15px;font-weight:500;cursor:pointer}.send-btn:hover:not(:disabled){background:#1d2d4d}.conv-item:disabled,.example-chip:disabled,.new-btn:disabled,.send-btn:disabled{opacity:.55;cursor:not-allowed}@media (max-width:768px){.sidebar{display:none}}