:root{color-scheme:light;--ink: #1f2933;--muted: #8b95a1;--line: #e6e8eb;--blue: #2f6fed;--blue-soft: #eaf3ff;--staff: #e7f1ff;--client: #f3f4f6;--pink: #e11d48;--pink-soft: #fff1f2;--danger: #b42318;--ok: #15803d;font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:#fff}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--blue)}h1,h2,p{margin:0}.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.boot,.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f7f8fa}.login-card,.settings{width:min(720px,100%);background:#fff;border:1px solid var(--line);border-radius:8px;padding:28px}.login-card{width:min(420px,100%)}.login-card h1,.settings h1{font-size:28px;font-weight:750}.lede,.muted,.thread-sub,.thread-hint{color:var(--muted)}.lede{margin-top:8px}label{display:grid;gap:6px;font-size:14px;font-weight:650}input,textarea{width:100%;border:1px solid #d5d9e0;background:#fff;border-radius:6px;padding:10px 12px;font-weight:450}textarea{resize:vertical;min-height:72px}input:focus,textarea:focus,button:focus-visible{outline:2px solid #bfd4ff;outline-offset:1px}.login-card,.settings form,.composer{display:grid;gap:14px}button,.primary{border:0;background:#fff;border-radius:6px;padding:10px 16px}.primary,.new-chat{background:var(--blue);color:#fff;font-weight:650}.primary{justify-self:start;min-width:140px}.primary:disabled{opacity:.55;cursor:wait}.form-error,.bubble-error,.failed{color:var(--danger)}.form-ok,.gateway-line.online{color:var(--ok)}.shell{height:100vh;display:grid;grid-template-rows:auto auto minmax(0,1fr);background:#fff}.topbar{display:flex;align-items:center;gap:16px;min-height:58px;padding:0 20px;border-bottom:1px solid var(--line);background:#fff}.brand{color:var(--ink);font-weight:750;font-size:22px;text-decoration:none}.topbar nav{margin-left:auto;display:flex;align-items:center;gap:12px}.who,.sep,.pill{color:#4b5563;font-size:14px}.pill.online{color:var(--ok)}.logout{color:var(--blue);background:transparent;padding:0;font-weight:650}.banner{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 20px;background:#f3f7ff;color:#334155;font-size:14px}.banner button{color:var(--blue);background:transparent;padding:0}.workspace{min-height:0;display:grid;grid-template-columns:320px minmax(0,1fr)}.dialogs-pane,.thread-pane{min-height:0}.dialogs-pane{display:flex;flex-direction:column;gap:12px;padding:16px 14px 12px;border-right:1px solid var(--line);background:#fff}.search{position:relative}.search input{padding-left:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%239aa3af' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:12px 50%}.new-chat{width:100%;padding:11px 16px}.dialogs{list-style:none;margin:0;padding:0;overflow:auto;display:grid;align-content:start;gap:2px;flex:1}.dialog,.empty-list{width:100%;text-align:left;border-radius:8px;background:transparent;padding:10px 10px 12px}.dialog{display:grid;gap:4px}.dialog.active{background:var(--blue-soft)}.dialog-top{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.dialog strong{font-size:15px}.dialog time,.preview,.bubble footer{color:var(--muted);font-size:13px;font-weight:450}.preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{justify-self:start;background:var(--pink-soft);color:var(--pink);border-radius:4px;padding:2px 6px;font-size:12px;font-weight:650}.empty-list,.side-foot{color:var(--muted);font-size:14px}.side-foot{margin-top:auto;padding-top:8px}.thread-pane{display:flex;flex-direction:column;background:#fff;min-height:0}.thread-head{display:flex;gap:12px;align-items:center;padding:16px 20px 12px;border-bottom:1px solid var(--line)}.thread-head h1{font-size:26px;font-weight:750}.thread-sub{margin-top:2px;font-size:14px}.back{display:none;color:var(--blue);background:transparent;padding:0}.bubbles{flex:1;overflow:auto;padding:18px 20px;display:flex;flex-direction:column;gap:16px}.thread-hint{margin:auto;text-align:center}.bubble{display:flex;flex-direction:column;max-width:min(460px,86%);gap:4px}.bubble.in{margin-right:auto;align-items:flex-start}.bubble.out{margin-left:auto;align-items:flex-end}.who-label{font-size:13px;font-weight:750}.bubble p{margin:0;padding:10px 12px;border-radius:8px;background:var(--client);white-space:pre-wrap;line-height:1.45;font-weight:450}.bubble.out p{background:var(--staff)}.bubble.hit p{outline:2px solid #f3b4c2}.bubble-error,.retry{font-size:13px}.retry{color:var(--blue);background:transparent;padding:0}.composer{padding:14px 20px 18px;border-top:1px solid var(--line);background:#fff}.composer .primary{margin-top:2px}.settings{margin:24px}.settings h2{margin-top:8px;font-size:20px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check{grid-template-columns:auto 1fr;align-items:center;font-weight:600}.check input{width:auto}.token-box{display:flex;gap:8px;align-items:center}.token-box code{flex:1;padding:12px;background:#f8fafc;border-radius:6px;overflow-wrap:anywhere}.token-box button,.settings form>button:not(.primary){border:1px solid var(--line)}@media(max-width:800px){.topbar{flex-wrap:wrap;padding:12px 16px}.workspace{grid-template-columns:1fr}.workspace.show-thread .dialogs-pane{display:none}.workspace:not(.show-thread) .thread-pane{display:none}.back{display:inline-flex}.grid{grid-template-columns:1fr}.shell{height:auto;min-height:100vh}.thread-pane{min-height:calc(100vh - 90px)}}
