:root{--bg: #0E0F12;--surface: #16181D;--surface2: #1E2128;--border: #2A2E37;--text: #ECEEF1;--text2: #A7ADB8;--accent: #7C8CFF;--accentText: #0B0C10;--ok: #3FB97F;--warn: #E0A63F;--danger: #E5534B;--code-bg: #111318;--radius-s: 12px;--radius-m: 16px;--radius-l: 20px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}@media(min-width:900px){body{font-size:16px}}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;min-height:44px}button:disabled{opacity:.45;cursor:default}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}code,pre,.mono{font-family:ui-monospace,SFMono-Regular,JetBrains Mono,monospace;font-size:13px;line-height:1.5}input,textarea,select{font:inherit;color:var(--text)}a{color:var(--accent)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.center{min-height:100dvh;display:grid;place-items:center;padding:16px}.logincard{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);padding:32px;width:min(400px,100%);display:grid;gap:14px}.logincard input{width:100%;margin-top:6px;padding:12px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-s)}.muted{color:var(--text2)}.err{color:var(--danger)}.tiny{font-size:12px}.pad{padding:16px}.padsm{padding:4px 12px}.btn{padding:8px 16px;border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface2)}.btn-primary{background:var(--accent);color:var(--accentText);border-color:transparent;font-weight:600}.btn-danger{background:var(--danger);color:#fff;border-color:transparent}.btn-warn{background:var(--warn);color:#111;border-color:transparent}.big{min-height:48px}.round{border-radius:999px;min-width:44px}.linkbtn{color:var(--accent);padding:6px 8px;min-height:36px}.iconbtn{min-width:44px;border-radius:var(--radius-s)}.iconbtn.big{font-size:20px}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px}.row.end{justify-content:flex-end}.layout{display:flex;height:100dvh}.rail{width:300px;flex:0 0 300px;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column}.rail-h{display:flex;justify-content:space-between;align-items:center;padding:12px 16px}.search{margin:0 12px 8px;padding:10px 12px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-s)}.sessionlist{overflow-y:auto;flex:1}.grouplabel{padding:10px 16px 4px;color:var(--text2);font-size:12px}.sessionrow{display:flex;align-items:center;gap:2px;padding-right:6px}.sessionrow.active{background:var(--surface2)}.sessionmain{flex:1;text-align:left;padding:8px 16px;display:grid;gap:2px;min-height:52px}.sessionname{font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sessionmain small{color:var(--text2)}.unread{width:9px;height:9px;border-radius:50%;background:var(--accent);flex:0 0 auto}.rail-f{display:flex;gap:4px;padding:8px;border-top:1px solid var(--border)}.main{flex:1;display:flex;flex-direction:column;min-width:0}.onlymobile{display:none}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:30}@media(max-width:899px){.rail{position:fixed;z-index:40;left:0;top:0;bottom:0;transform:translate(-105%);transition:transform .2s}.rail.open{transform:none;box-shadow:0 8px 30px #00000073}.onlymobile{display:inline-grid;place-items:center}}.banner{padding:8px 16px;font-size:13px}.banner-warn{background:#3a2f14;color:#f0cd8a}.banner-off{background:#40201e;color:#ffb4ae}.banner-danger{background:#4a1f1d;color:#ffc9c4}.banner-info{background:#1c2745;color:#b9c6ff}.chatheader{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--border);background:var(--surface)}.chathead-main{flex:1;display:grid;min-width:0}.chathead-main strong,.chathead-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}.dot.on{background:var(--ok)}.dot.off{background:var(--danger)}.pill{border:1px solid var(--border);background:var(--surface2);border-radius:999px;padding:6px 12px;font-size:13px}.menu-wrap{position:relative}.menu{position:absolute;right:0;top:48px;z-index:20;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-m);display:grid;min-width:190px;box-shadow:0 8px 30px #00000073}.menu button{text-align:left;padding:10px 14px}.stream{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:14px;max-width:900px;width:100%;margin:0 auto}.empty{border:1px dashed var(--border);border-radius:var(--radius-m);padding:24px;color:var(--text2)}.msg.user{display:flex;justify-content:flex-end}.msg.user .msgbody{background:var(--surface2);border-radius:var(--radius-l);padding:10px 16px;max-width:min(640px,88%)}.usertext{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.msg.assistant .msgbody{max-width:100%}.md p{margin:0 0 10px;overflow-wrap:anywhere}.md pre{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--radius-s);padding:12px;overflow-x:auto}.md table{border-collapse:collapse;overflow-x:auto;display:block}.md th,.md td{border:1px solid var(--border);padding:6px 10px}.codewrap{position:relative}.copybtn{position:absolute;right:6px;top:6px;font-size:12px;background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:3px 10px;min-height:28px}.cursor{color:var(--accent);animation:blink 1s steps(2) infinite}@keyframes blink{50%{opacity:0}}.toolcard{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-m)}.toolhead{width:100%;display:flex;gap:10px;align-items:center;padding:6px 14px;text-align:left}.tooltitle{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.tooldot.done{color:var(--ok)}.tooldot.failed{color:var(--danger)}.tooldot.running{color:var(--warn);animation:blink 1.2s steps(2) infinite}.toolbody{border-top:1px solid var(--border);padding:8px 14px}.toolpre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:420px;overflow:auto;font-size:12px}.plancard{margin:0 auto;width:min(900px,calc(100% - 24px));border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-m);padding:10px 16px}.plancard-h{font-weight:600;margin-bottom:4px}.planrow{display:flex;gap:10px;padding:2px 0}.plandone{color:var(--text2);text-decoration:line-through}.composer{border-top:1px solid var(--border);background:var(--surface);padding:10px 12px calc(10px + env(safe-area-inset-bottom))}.composer-row{display:flex;gap:8px;align-items:flex-end;max-width:900px;margin:0 auto;position:relative}.composer textarea{flex:1;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-m);padding:12px 14px;resize:none;max-height:220px}.charwarn{position:absolute;right:110px;bottom:14px;color:var(--warn);font-size:12px}.composer-f{display:flex;gap:14px;flex-wrap:wrap;align-items:center;max-width:900px;margin:6px auto 0;font-size:13px}.toggle{display:inline-flex;gap:6px;align-items:center;min-height:36px}.composer-f+p{max-width:900px;margin:4px auto 0}.recbar{max-width:900px;margin:0 auto 8px;color:var(--danger)}.wave{letter-spacing:2px}.sheetbackdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:50;display:grid;place-items:end center}@media(min-width:700px){.sheetbackdrop{place-items:center}}.sheet{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l) var(--radius-l) 0 0;padding:20px;width:min(560px,100%);max-height:88dvh;overflow-y:auto;box-shadow:0 8px 30px #00000073}@media(min-width:700px){.sheet{border-radius:var(--radius-l)}}.radiolist{display:grid;gap:8px;margin:10px 0}.radioitem{display:grid;text-align:left;border:1px solid var(--border);background:var(--surface2);border-radius:var(--radius-s);padding:10px 14px}.radioitem.sel{border-color:var(--accent)}.radioitem small{color:var(--text2)}.fieldlabel{color:var(--text2);margin:14px 0 6px;font-size:13px}.segmented{display:flex;border:1px solid var(--border);border-radius:var(--radius-s);overflow:hidden;width:fit-content;flex-wrap:wrap}.segmented button{padding:8px 14px;background:var(--surface2)}.segmented button.sel{background:var(--accent);color:var(--accentText);font-weight:600}.risk{font-size:12px;padding:2px 10px;border-radius:999px}.risk-low{background:#173527;color:#7ce3ac}.risk-med{background:#3a2f14;color:#f0cd8a}.risk-high{background:#4a1f1d;color:#ffc9c4}.approvalsummary{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--code-bg);padding:10px;border-radius:var(--radius-s)}.approvalactions{justify-content:space-between}.confirmbox{border:1px solid var(--warn);border-radius:var(--radius-m);padding:12px;margin-top:12px}.page{padding:20px;max-width:960px;margin:0 auto;width:100%;overflow-y:auto}.split{display:grid;grid-template-columns:minmax(200px,300px) 1fr;gap:16px}@media(max-width:700px){.split{grid-template-columns:1fr}}.filepre{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--radius-s);padding:12px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12.5px}.filelink{text-align:left}.diffpre{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--radius-s);padding:12px;overflow-x:auto;font-size:12.5px}.diffadd{background:#3fb97f24}.diffdel{background:#e5534b24}.diffhdr{color:var(--text2)}.add{color:var(--ok)}.del{color:var(--danger)}.toasts{position:fixed;right:14px;bottom:14px;z-index:60;display:grid;gap:8px;max-width:min(420px,90vw)}.toast{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-s);padding:10px 14px;box-shadow:0 8px 30px #00000073}.toast.error{border-color:var(--danger)}.working{animation:blink 1.6s steps(2) infinite}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}
