:root{--bg: #fafaf9;--fg: #1c1917;--muted: #78716c;--panel: #f5f5f4;--border: #e7e5e4;--accent: #b45309;--accent-fg: #fff;--user: #fde68a33;--code: #efeeed;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: #1c1917;--fg: #f5f5f4;--muted: #a8a29e;--panel: #292524;--border: #44403c;--accent: #f59e0b;--accent-fg: #1c1917;--user: #f59e0b22;--code: #322e2b}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--fg);font:16px/1.5 -apple-system,system-ui,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}button{font:inherit;border:0;border-radius:10px;padding:8px 14px;background:var(--accent);color:var(--accent-fg);cursor:pointer}button:disabled{opacity:.5;cursor:default}button.ghost{background:transparent;color:var(--fg);padding:6px 10px}input,textarea{font:inherit;color:var(--fg);background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:10px 12px;width:100%}.muted{color:var(--muted)}.error{color:#dc2626}.center{height:100%;display:grid;place-items:center;padding:24px}.app{display:grid;grid-template-columns:280px 1fr;height:100%}.sidebar{display:flex;flex-direction:column;background:var(--panel);border-right:1px solid var(--border)}.sidebar header,.sidebar footer{display:flex;align-items:center;justify-content:space-between;padding:12px 16px}.sidebar header{padding-top:max(12px,env(safe-area-inset-top))}.sidebar nav{flex:1;overflow-y:auto;padding:0 8px}.thread{display:flex;flex-direction:column;align-items:stretch;width:100%;text-align:left;background:transparent;color:var(--fg);padding:10px 12px;border-radius:10px;gap:2px}.thread.active{background:var(--bg)}.thread .title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.thread .meta{font-size:12px;color:var(--muted)}.badge{font-size:11px;text-transform:uppercase;color:var(--accent);margin-right:6px}.scrim{display:none}main{display:flex;flex-direction:column;min-width:0}.thread-view{display:flex;flex-direction:column;height:100%}.thread-view>header{display:flex;align-items:center;gap:8px;padding:10px 12px;padding-top:max(10px,env(safe-area-inset-top));border-bottom:1px solid var(--border)}.thread-view h2{flex:1;font-size:15px;font-weight:600;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu{display:none}.messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}article{max-width:760px;padding:2px 0}article.user{align-self:flex-end;background:var(--user);border-radius:14px;padding:8px 14px;max-width:85%}article.user p{margin:0;white-space:pre-wrap}article.assistant :is(h1,h2,h3){font-size:1.05em;margin:14px 0 6px}article.assistant p{margin:8px 0}article.assistant table{border-collapse:collapse;font-size:14px;display:block;overflow-x:auto;max-width:100%}article.assistant th,article.assistant td{border:1px solid var(--border);padding:4px 8px;text-align:left;white-space:nowrap}article.assistant blockquote{margin:8px 0;padding-left:12px;border-left:3px solid var(--border);color:var(--muted)}article.assistant code{background:var(--code);padding:1px 5px;border-radius:5px;font-size:.9em}.tool{font-size:12px;color:var(--muted)}.status{font-size:12px}.hint{max-width:420px}.composer{display:flex;gap:8px;padding:10px 12px;padding-bottom:max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--border)}.composer textarea{resize:none;max-height:160px}.composer button{width:44px;flex:none}.join{width:min(400px,100%);display:grid;gap:14px}.join h1{margin:0}.join label{display:grid;gap:4px;font-size:14px;color:var(--muted)}@media(max-width:800px){.app{grid-template-columns:1fr}.sidebar{position:fixed;top:0;right:25%;bottom:0;left:0;z-index:10;transform:translate(-100%);transition:transform .2s}.sidebar.open{transform:none}.scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:9}.menu{display:inline-block}}.dialog-scrim{display:grid!important;place-items:center;z-index:20}.dialog{background:var(--bg);color:var(--fg);border-radius:14px;padding:20px;width:min(440px,calc(100% - 32px));display:grid;gap:10px}.dialog h3{margin:0}.dialog ol{margin:0;padding-left:20px}.topic{display:block;background:var(--code);padding:10px;border-radius:8px;word-break:break-all;-webkit-user-select:all;user-select:all;font-size:13px}
