:root{--bg:#12140f;--panel:#1a1d17;--line:#2c3128;--ink:#e8eae4;--ink-soft:#9aa393;--accent:#8fcfb4;--user:#24382f;--danger:#e0806a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:ui-sans-serif,system-ui,Segoe UI,sans-serif;font-size:14px}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0}.layout{grid-template-columns:260px minmax(0,1fr) 380px;height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:var(--panel);flex-direction:column;gap:14px;padding:18px;display:flex;overflow-y:auto}.sidebar h1{letter-spacing:.04em;margin:0;font-size:16px}.field{color:var(--ink-soft);flex-direction:column;gap:5px;font-size:12px;display:flex}input,textarea{border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;border-radius:8px;padding:8px 10px;font-family:ui-monospace,Cascadia Code,monospace;font-size:12px}input:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}button{border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;cursor:pointer;border-radius:8px;padding:8px 12px}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.45;cursor:not-allowed}.conversations{flex-direction:column;gap:6px;display:flex}.conversation{text-align:left;flex-direction:column;align-items:flex-start;gap:3px;display:flex}.conversation.active{border-color:var(--accent)}.conversation-date{color:var(--ink-soft);font-size:11px}.empty{color:var(--ink-soft);font-size:12px}.main{flex-direction:column;min-width:0;display:flex}.transcript{flex-direction:column;flex:1;gap:12px;padding:20px;display:flex;overflow-y:auto}.bubble{border:1px solid var(--line);background:var(--panel);border-radius:12px;max-width:70ch;padding:10px 14px}.bubble.user{background:var(--user);align-self:flex-end}.bubble.streaming{border-color:var(--accent)}.bubble header{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);align-items:baseline;gap:10px;margin-bottom:6px;font-size:11px;display:flex}.bubble .meta{text-transform:none;letter-spacing:0;font-family:ui-monospace,monospace}.bubble .meta.failed{color:var(--danger)}.bubble p{white-space:pre-wrap;margin:0;line-height:1.55}.error,.error-detail{color:var(--danger)}.error{border-bottom:1px solid var(--line);padding:10px 20px;font-family:ui-monospace,monospace;font-size:12px}.error-detail{margin-top:6px;font-family:ui-monospace,monospace;font-size:12px}.composer{border-top:1px solid var(--line);background:var(--panel);align-items:flex-end;gap:10px;padding:14px 20px 18px;display:flex}.composer textarea{resize:vertical;flex:1;font-family:inherit;font-size:14px}.login{place-items:center;min-height:100vh;padding:24px;display:grid}.login form{border:1px solid var(--line);background:var(--panel);border-radius:14px;flex-direction:column;gap:14px;width:min(360px,100%);padding:28px;display:flex}.login h1{margin:0 0 4px;font-size:17px}.login input{font-family:inherit;font-size:14px}.sidebar-head{flex-direction:column;gap:4px;display:flex}.who{color:var(--ink-soft);font-size:12px}.link{color:var(--ink-soft);background:0 0;border:0;align-self:flex-start;padding:0;font-size:12px;text-decoration:underline}.link:hover{color:var(--accent)}.panel{border-left:1px solid var(--line);background:var(--panel);flex-direction:column;gap:12px;padding:16px;display:flex;overflow-y:auto}.panel-head{justify-content:space-between;align-items:baseline;display:flex}.panel h2{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin:0;font-size:13px}.topic-list{flex-direction:column;gap:5px;display:flex}.topic{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;font-size:13px;display:flex}.topic.active{border-color:var(--accent)}.topic-meta{color:var(--ink-soft);font-family:ui-monospace,monospace;font-size:11px}.topic-state{border-top:1px solid var(--line);flex-direction:column;gap:14px;padding-top:6px;display:flex}.state-head{flex-direction:column;gap:3px;display:flex}.summary{color:var(--ink);margin:0;font-size:13px;line-height:1.5}.block h3{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 5px;font-size:11px}.statement{margin:0 0 7px;font-size:12.5px;line-height:1.5}.tag{border:1px solid var(--line);color:var(--ink-soft);vertical-align:middle;border-radius:5px;margin-left:6px;padding:1px 5px;font-family:ui-monospace,monospace;font-size:10px;display:inline-block}.tag.infer{border-color:var(--danger);color:var(--danger)}.tag.warn,.warn-text{color:var(--danger)}.basis{color:var(--ink-soft);margin-top:3px;font-size:11px;font-style:italic;display:block}.tabs{gap:4px;display:flex}.tabs .tab{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);padding:3px 8px;font-size:11px}.tabs .tab.on{border-color:var(--accent);color:var(--ink)}.gap-buttons{gap:5px;margin-bottom:8px;display:flex}.gap-buttons button{padding:3px 9px;font-family:ui-monospace,monospace;font-size:11px}.summary.preview{border-left:2px solid var(--accent);background:var(--bg);margin-top:8px;padding:9px 11px;font-size:12.5px}.choices{flex-direction:column;gap:4px;display:flex}.choice{text-align:left;border:1px solid var(--line);background:var(--bg);color:var(--ink-soft);cursor:pointer;border-radius:6px;flex-direction:column;gap:2px;padding:6px 9px;display:flex}.choice strong{font-family:ui-monospace,monospace;font-size:12px}.choice span{font-size:11px}.choice.on{border-color:var(--accent);color:var(--ink)}.style-locked{color:var(--ink-soft);cursor:not-allowed;gap:7px;margin-bottom:7px;font-size:12px;display:flex}.style-locked input{accent-color:var(--accent);margin-top:2px}.ab{flex-direction:column;gap:10px;margin-top:8px;display:flex}.ab-side{min-width:0}.ab-side .summary.preview{margin-top:4px}.prompt{border:1px solid var(--line);background:var(--bg);white-space:pre-wrap;color:var(--ink-soft);border-radius:6px;margin:0;padding:9px 11px;font-size:11px;line-height:1.5}.row-with-action{align-items:stretch;gap:3px;display:flex}.row-with-action>.conversation,.row-with-action>.topic{flex:1;min-width:0}.x{border:1px solid var(--line);color:var(--ink-soft);cursor:pointer;background:0 0;border-radius:6px;flex:none;padding:0 7px;font-family:ui-monospace,monospace;font-size:12px}.x:hover,.danger{color:var(--danger);border-color:var(--danger)}.memory-row{border-bottom:1px solid var(--line);padding-bottom:9px}.block-row{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:baseline;gap:8px;padding:3px 0;font-size:12.5px;display:flex}.block-row:hover{color:var(--accent)}
