:root{color-scheme:light;--bg:#faf9f6;--panel:#f0efeb;--ink:#262723;--muted:#777a72;--line:#dddfd6;--accent:#24624b;font:15px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}[hidden]{display:none!important}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid transparent;border-radius:8px;padding:9px 14px;background:var(--accent);color:white}button:hover{filter:brightness(.94)}button:disabled{opacity:.45;cursor:default}.quiet{background:transparent;color:var(--ink);border-color:var(--line)}input,select,textarea{padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--bg);color:inherit}input:focus,textarea:focus,select:focus{outline:2px solid #81ab98;outline-offset:1px}label{display:grid;gap:6px}h1,h2,p{margin-top:0}.brand{font-weight:700;font-size:21px;letter-spacing:-.6px}.login{min-height:100vh;display:grid;place-items:center}.login form{width:min(420px,90vw);display:grid;gap:20px;background:white;border:1px solid var(--line);padding:32px;border-radius:14px}.login h1{font-size:23px;line-height:1.3;margin:0}#login-error{color:#ab3030;margin:0}
#shell{display:grid;grid-template-columns:275px minmax(0,1fr);height:100vh}aside{background:var(--panel);border-right:1px solid var(--line);padding:24px 17px;display:flex;flex-direction:column;gap:20px;overflow:hidden}aside nav{overflow:auto;flex:1}aside footer{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:13px}.archive-toggle{display:flex;align-items:center;font-size:12px;color:var(--muted)}.project{margin-bottom:20px}.project-heading{display:flex;align-items:center;gap:8px;padding:3px 4px 8px}.project-heading strong{flex:1;overflow-wrap:anywhere}.project-heading button{padding:2px 8px;background:transparent;color:var(--ink)}.chat-link{display:block;width:100%;text-align:left;background:transparent;color:var(--ink);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:8px 10px;margin:2px 0}.chat-link.selected{background:white;border-color:var(--line)}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#a5aaa0;margin-right:8px}.dot.running,.dot.awaiting_input{background:#cb9a32}.dot.error,.dot.unavailable{background:#b95442}.project-note{font-size:12px;color:var(--muted);overflow-wrap:anywhere}
main{display:flex;flex-direction:column;min-height:0;min-width:0}header{padding:17px 30px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px}header h1{font-size:17px;margin:0}#chat-status,#connection{font-size:12px;color:var(--muted)}.header-actions{display:flex;gap:10px;align-items:center}.header-actions button{font-size:12px;padding:6px}.notice{padding:10px 22px;background:#fff4d9;font-size:13px;overflow-wrap:anywhere}.error{background:#fce8e4;color:#7c2922}#messages{flex:1;overflow:auto;padding:26px max(24px,calc((100% - 850px)/2));scroll-behavior:smooth}.welcome{text-align:center;margin:18vh auto;color:var(--muted)}.welcome h2{color:var(--ink);font-size:29px}.message{margin:0 0 24px;overflow-wrap:anywhere}.message-label{font-size:12px;font-weight:650;color:var(--muted);margin-bottom:7px}.message.user{background:#eceee7;border-radius:12px;padding:15px 20px;margin-left:12%}.message .body{white-space:pre-wrap}.message.assistant .body{white-space:normal}.body>:last-child{margin-bottom:0}.body pre,.tool-output{background:#eceee8;padding:14px;border-radius:8px;overflow:auto;font:12px/1.6 ui-monospace,Consolas,monospace;white-space:pre-wrap}.body code{font-family:ui-monospace,Consolas,monospace;font-size:.9em}.body table{border-collapse:collapse}.body td,.body th{padding:5px 10px;border:1px solid var(--line)}a{color:var(--accent)}.tool{margin:8px 0;border:1px solid var(--line);border-radius:8px;font-size:13px;padding:9px 12px}.tool summary{cursor:pointer;overflow-wrap:anywhere}.tool-output{max-height:300px;margin:10px 0 0}.tool-meta{font-size:12px;color:var(--muted);white-space:pre-wrap}.turn-note{font-size:12px;color:var(--muted);margin:12px 0}
#interactions{max-height:38vh;overflow:auto;padding:0 max(24px,calc((100% - 850px)/2))}.interaction{border:1px solid #d5b870;background:#fffaf0;border-radius:10px;padding:16px;margin:12px 0}.interaction summary{font-size:15px;font-weight:650;cursor:pointer;overflow-wrap:anywhere}.interaction[open] summary{margin-bottom:8px}.interaction summary:focus-visible{outline:2px solid #81ab98;outline-offset:4px}.interaction pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;max-height:160px;overflow:auto}.interaction fieldset{border:0;margin:8px 0;padding:0}.interaction input[type=text],.interaction input[type=password]{width:100%;margin-top:6px}.interaction label{display:flex;gap:8px;margin:5px 0}.actions{display:flex;gap:8px;justify-content:flex-end}.interaction .actions{justify-content:flex-start;margin-top:12px}.interaction-status{color:var(--muted);font-size:12px}#composer{margin:12px max(24px,calc((100% - 850px)/2)) 0;background:white;border:1px solid var(--line);border-radius:13px;padding:12px;box-shadow:0 3px 14px #00000005}#prompt{width:100%;resize:vertical;max-height:220px;border:0;background:transparent;min-height:70px}#prompt:focus{outline:none}.composer-footer{display:flex;align-items:center;gap:10px;padding-top:10px}#model{max-width:230px;font-size:12px;padding:6px}#composer-hint{font-size:11px;flex:1;color:var(--muted)}.footnote{text-align:center;font-size:11px;color:var(--muted);margin:8px}dialog{width:min(470px,92vw);border:1px solid var(--line);border-radius:14px;padding:25px}dialog::backdrop{background:#0005}dialog form{display:grid;gap:16px}dialog h2,dialog p{margin:0}dialog p{font-size:12px;color:var(--muted)}
@media(max-width:760px){#shell{grid-template-columns:190px minmax(0,1fr)}aside{padding:16px 9px}header{padding:12px;align-items:flex-start}.header-actions{flex-wrap:wrap;justify-content:flex-end}#messages{padding:18px 14px}#composer{margin:8px 12px}#interactions{padding:0 12px}.composer-footer{flex-wrap:wrap}#model{max-width:150px}.brand{font-size:18px}}@media(max-width:480px){#shell{grid-template-columns:145px minmax(0,1fr)}.header-actions button{display:none}.footnote{display:none}#composer-hint{display:none}}
