:root{color-scheme:light;--bg:#f6f7f4;--panel:#fff;--ink:#18201b;--muted:#667068;--line:#d9dfd7;--accent:#0e7c68;--accent-strong:#075e51;--accent-soft:#dff4ee;--warning:#b86b00;--shadow:0 18px 60px rgba(25,35,29,.12)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,textarea{font:inherit}.app-shell{min-height:100vh;padding:24px}.workspace{display:grid;grid-template-columns:320px minmax(0,1fr);min-height:calc(100vh - 48px);overflow:hidden;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.sidebar{display:flex;flex-direction:column;gap:28px;padding:28px;background:#edf1eb;border-right:1px solid var(--line)}.eyebrow{margin:0 0 8px;color:var(--accent-strong);font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:0;font-size:28px;line-height:1.08}h2{margin-bottom:12px;font-size:14px}.status-list{display:grid;gap:10px}.status-row{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14px}.status-dot{width:10px;height:10px;border-radius:999px;background:var(--warning)}.status-dot.ready{background:var(--accent)}.source-panel{min-height:0}.source-list{display:grid;gap:10px;max-height:52vh;overflow:auto;padding-right:4px}.source-card{display:grid;gap:6px;padding:12px;background:#ffffffb8;border:1px solid var(--line);border-radius:8px}.source-card a{color:var(--accent-strong);font-size:13px;font-weight:700;overflow-wrap:anywhere}.source-meta{color:var(--muted);font-size:12px}.muted{color:var(--muted);font-size:14px;line-height:1.45}.chat-panel{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0;background:#fbfcfa}.messages{display:flex;flex-direction:column;gap:18px;overflow-y:auto;padding:32px}.message{display:grid;grid-template-columns:40px minmax(0,760px);gap:12px;align-items:start}.message.user{grid-template-columns:minmax(0,760px) 40px;justify-content:end}.message.user .avatar{grid-column:2;background:#2d3545}.message.user .bubble{grid-column:1;grid-row:1;background:#eef2f8}.avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:8px;background:var(--accent);color:#fff;font-size:12px;font-weight:800}.bubble{padding:16px 18px;background:#fff;border:1px solid var(--line);border-radius:8px;line-height:1.58;overflow-wrap:anywhere}.bubble p:last-child{margin-bottom:0}.bubble pre{overflow-x:auto;padding:12px;background:#111815;color:#fff;border-radius:6px}.composer{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:12px;padding:18px;border-top:1px solid var(--line);background:#fff}.prompt-suggestions{display:flex;grid-column:1/-1;flex-wrap:wrap;gap:8px}.prompt-chip{width:auto;min-height:36px;height:auto;padding:8px 12px;place-items:center;border:1px solid var(--line);color:var(--accent-strong);background:var(--accent-soft);font-size:13px;font-weight:700;line-height:1.25;text-align:left}.prompt-chip:hover{color:#fff;border-color:var(--accent-strong);background:var(--accent-strong)}textarea{width:100%;min-height:52px;max-height:180px;resize:vertical;padding:14px 16px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fbfcfa;outline:none}textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}button{display:grid;place-items:center;width:48px;height:52px;border:0;border-radius:8px;color:#fff;background:var(--accent);cursor:pointer}button:hover{background:var(--accent-strong)}button:disabled{cursor:wait;opacity:.65}button svg{width:22px;height:22px;fill:currentColor}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:820px){.app-shell{padding:0}.workspace{grid-template-columns:1fr;min-height:100vh;border:0;border-radius:0}.sidebar{gap:16px;padding:20px;border-right:0;border-bottom:1px solid var(--line)}.source-list{max-height:180px}.messages{padding:20px}.message,.message.user{grid-template-columns:34px minmax(0,1fr)}.message.user .avatar{grid-column:1}.message.user .bubble{grid-column:2}.avatar{width:34px;height:34px}}
