:root{--rail-width:240px;--rail-width-collapsed:48px;--border:#e2e2e2;--muted:#6b7280;--accent:#2563eb;--bubble-user:#eef2ff;--bubble-assistant:#f8fafc}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%;font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#111827}.app-shell{display:flex;min-height:100vh}.app-shell__surface{flex:1 1;min-width:0}.app-shell__surface,.left-rail{display:flex;flex-direction:column}.left-rail{width:var(--rail-width);flex-shrink:0;border-right:1px solid var(--border);padding:.75rem;gap:1rem}.left-rail--collapsed{width:var(--rail-width-collapsed);padding:.75rem .25rem}.left-rail--loading{background:#fafafa}.left-rail__toggle{align-self:flex-end;background:none;border:1px solid var(--border);border-radius:4px;cursor:pointer;padding:.1rem .4rem}.left-rail__heading{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 .4rem}.left-rail__section{display:flex;flex-direction:column}.left-rail__agents,.left-rail__nav,.left-rail__recent{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.left-rail__agent{width:100%;text-align:left;background:none;border:1px solid transparent;border-radius:6px;padding:.4rem .5rem;cursor:pointer}.left-rail__agent--selected{background:var(--bubble-user);border-color:var(--accent);font-weight:600}.left-rail__nav-item{display:block;padding:.4rem .5rem;border-radius:6px;text-decoration:none;color:inherit}.left-rail__nav-item--active{background:var(--bubble-user);font-weight:600}.left-rail__recent-item{display:flex;align-items:baseline;gap:.35rem;overflow:hidden;text-decoration:none;color:inherit;padding:.15rem 0}.left-rail__recent-item:hover .left-rail__recent-title{text-decoration:underline}.left-rail__recent-item--active{background:var(--bubble-user);border-radius:6px;padding:.15rem .5rem;font-weight:600}.left-rail__recent-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem}.left-rail__recent-agent{flex:none;color:var(--muted);font-size:.75rem}.left-rail__muted{color:var(--muted);font-size:.85rem;margin:0}.chat-surface{flex:1 1;display:flex;flex-direction:column;min-height:0;padding:1rem}.chat-surface__waiting{color:var(--muted)}.chat-thread{min-height:0}.chat-thread,.chat-thread__viewport{flex:1 1;display:flex;flex-direction:column}.chat-thread__viewport{overflow-y:auto;gap:.75rem;padding-bottom:1rem}.chat-thread__empty{color:var(--muted);margin:auto 0;text-align:center}.chat-msg{display:flex}.chat-msg--user{justify-content:flex-end}.chat-msg--assistant{justify-content:flex-start}.chat-msg__bubble{max-width:48rem;padding:.6rem .85rem;border-radius:10px;white-space:pre-wrap;word-break:break-word}.chat-msg--user .chat-msg__bubble{background:var(--bubble-user)}.chat-msg--assistant .chat-msg__bubble{background:var(--bubble-assistant);border:1px solid var(--border)}.chat-text{white-space:normal}.chat-text .markdown-view>:first-child{margin-top:0}.chat-text .markdown-view>:last-child{margin-bottom:0}.chat-text .markdown-view ol,.chat-text .markdown-view p,.chat-text .markdown-view ul{margin:.4rem 0}.chat-text .markdown-view h1,.chat-text .markdown-view h2,.chat-text .markdown-view h3,.chat-text .markdown-view h4{margin:.8rem 0 .3rem;line-height:1.25}.chat-text .markdown-view li{margin:.15rem 0}.chat-composer{display:flex;gap:.5rem;align-items:flex-end;border-top:1px solid var(--border);padding-top:.75rem}.chat-composer__input{flex:1 1;resize:none;min-height:2.5rem;max-height:12rem;padding:.5rem .65rem;border:1px solid var(--border);border-radius:8px;font:inherit}.chat-composer__send,.chat-composer__stop{padding:.5rem 1rem;border-radius:8px;border:1px solid var(--accent);cursor:pointer;font:inherit}.chat-composer__send{background:var(--accent);color:#fff}.chat-composer__stop{background:#fff;color:var(--accent)}.chat-starters{display:flex;flex-direction:column;gap:1rem;margin:auto 0;align-items:center}.chat-starters__prompt{color:var(--muted);margin:0}.chat-starters__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.chat-starter{display:flex;flex-direction:column;gap:.25rem;width:15rem;padding:.85rem 1rem;text-align:left;border:1px solid var(--border);border-radius:10px;background:var(--bubble-assistant);cursor:pointer;font:inherit}.chat-starter:focus-visible,.chat-starter:hover{border-color:var(--accent)}.chat-starter__title{font-weight:600}.chat-starter__description{color:var(--muted);font-size:.85rem}.tool-card{margin:.4rem 0;border:1px solid var(--border);border-radius:8px;background:#fff}.tool-card__summary{display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem;cursor:pointer;list-style:none;font-size:.85rem}.tool-card__summary::-webkit-details-marker{display:none}.tool-card__icon{flex-shrink:0}.tool-card__name{font-weight:600}.tool-card__arg{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1;min-width:0}.tool-card__status{flex-shrink:0;font-size:.75rem;padding:.05rem .4rem;border-radius:999px;border:1px solid var(--border)}.tool-card__status--done{color:#15803d;border-color:#bbf7d0}.tool-card__status--error{color:#b91c1c;border-color:#fecaca}.tool-card__body{padding:0 .6rem .5rem;font-size:.85rem}.tool-card__error-code{color:#b91c1c;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.tool-card__result{max-height:16rem;overflow:auto;background:#f8fafc;border:1px solid var(--border);border-radius:6px;padding:.5rem;margin:0;font-size:.8rem}.source-chips{list-style:none;margin:.4rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem}.source-chip{display:inline-block;font-size:.75rem;padding:.1rem .5rem;border-radius:999px;border:1px solid var(--border);background:#f8fafc;color:var(--muted);text-decoration:none}.source-chip--knowledge{color:var(--accent);border-color:#bfdbfe}.source-chip--inert{color:var(--muted);cursor:default}