:root{--bg:#0f0f11;--surface:#1a1a1e;--surface-2:#25252b;--text:#f3f3f5;--text-muted:#a0a0a8;--accent:#7c5cff;--accent-hover:#6a4ce6;--border:#2e2e36;--radius:14px}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.container{max-width:720px;margin:0 auto;height:100vh;display:flex;flex-direction:column;padding:16px}header{padding:12px 0 20px;border-bottom:1px solid var(--border);margin-bottom:16px}header h1{font-size:1.25rem;font-weight:600}header p{color:var(--text-muted);font-size:.875rem;margin-top:4px}.messages{flex:1 1;overflow-y:auto;display:flex;flex-direction:column;gap:14px;padding-bottom:16px}.message{max-width:85%;padding:14px 18px;border-radius:var(--radius);line-height:1.5;font-size:.95rem;white-space:pre-wrap}.message.user{align-self:flex-end;background:var(--accent);color:#fff;border-bottom-right-radius:4px}.message.assistant{align-self:flex-start;background:var(--surface);border:1px solid var(--border);border-bottom-left-radius:4px}.input-area{display:flex;gap:10px;padding-top:12px;border-top:1px solid var(--border)}.input-area input{flex:1 1;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:12px 18px;color:var(--text);font-size:.95rem;outline:none}.input-area input:focus{border-color:var(--accent)}.input-area button{background:var(--accent);color:#fff;border:none;border-radius:999px;padding:0 22px;font-weight:500;cursor:pointer}.input-area button:hover:not(:disabled){background:var(--accent-hover)}.input-area button:disabled{opacity:.6;cursor:not-allowed}.empty{text-align:center;margin-top:40px}.empty,.memory-badge{color:var(--text-muted)}.memory-badge{display:inline-block;font-size:.7rem;margin-top:8px}.tabs{display:flex;gap:8px;margin-bottom:12px}.tabs button{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);padding:8px 14px;border-radius:999px;cursor:pointer}.tabs button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.memory-list{display:flex;flex-direction:column;gap:10px;overflow-y:auto;flex:1 1}.memory-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px}.memory-card .content{font-size:.9rem;line-height:1.4}.memory-card .meta{font-size:.75rem;color:var(--text-muted);margin-top:6px}