:root{--bg:#12121a;--bg-deep:#0c0c12;--surface-1:#1a1a24;--surface-2:#22222e;--surface-3:#2b2b38;--overlay:rgba(8,8,14,.62);--glass:rgba(26,26,36,.78);--glass-hi:rgba(255,255,255,.04);--line-soft:#22222c;--line:#2c2c38;--line-strong:#3c3c4a;--ink:#f4f4f8;--ink-2:#c4c4d2;--ink-3:#8a8a9e;--ink-4:#5e5e72;--ink-inv:#0c0c12;--accent:#7c5cff;--accent-hi:#a18bff;--accent-2:#ff3d8b;--accent-soft:rgba(124,92,255,.16);--accent-line:rgba(124,92,255,.42);--grad:linear-gradient(135deg,#7c5cff,#9a80ff);--grad-dim:linear-gradient(135deg,rgba(124,92,255,.22),rgba(154,128,255,.18));--st-idle:#6b6b80;--st-thinking:#a78bfa;--st-tool:#34d3ee;--st-waiting:#ffb020;--st-offline:#3a3a46;--st-error:#ff5c5c;--st-ok:#35d07f;--ok-soft:rgba(53,208,127,.12);--warn-soft:rgba(255,176,32,.12);--error-soft:rgba(255,92,92,.12);--info-soft:rgba(52,211,238,.12);--diff-add-bg:rgba(53,208,127,.1);--diff-add-bar:#35d07f;--diff-add-ink:#9ff0c6;--diff-del-bg:rgba(255,92,92,.1);--diff-del-bar:#ff5c5c;--diff-del-ink:#ffb3b3;--diff-word:rgba(53,208,127,.26);--diff-word-del:rgba(255,92,92,.26);--syn-key:#a78bfa;--syn-str:#8fd6a4;--syn-num:#ffb020;--syn-fn:#5aa9ff;--syn-dim:#5e5e72;--font-sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,"JetBrains Mono","Cascadia Mono",Consolas,"Liberation Mono",monospace;--r-xs:8px;--r-sm:12px;--r:16px;--r-lg:22px;--r-pill:980px;--shadow:0 1px 2px rgba(0,0,0,.4);--shadow-lg:0 16px 40px rgba(0,0,0,.45);--shadow-pop:0 24px 64px rgba(0,0,0,.55);--ring:0 0 0 3px rgba(124,92,255,.22);--shadow-bubble:0 8px 24px rgba(124,92,255,.18);--sidebar-w:300px;--topbar-h:56px;--content-w:820px;--ease:cubic-bezier(.2,.9,.3,1);--kb:0px;--ag-1:#7c5cff;--ag-2:#ff3d8b;--ag-3:#34d3ee;--ag-4:#ffb020;--ag-5:#35d07f;--ag-6:#5aa9ff;--ag-7:#ff7a5c;--ag-8:#b8e356}html{color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,body,#root{height:100%}body{margin:0;background:var(--bg-deep);color:var(--ink);font-family:var(--font-sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow:hidden;overscroll-behavior:none}a{color:inherit;text-decoration:none}button,input,textarea,select{font-family:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}h1,h2,h3,h4{margin:0;font-weight:700;letter-spacing:-.01em}p{margin:0 0 .7em}p:last-child{margin-bottom:0}:focus-visible{outline:none;box-shadow:var(--ring)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}*{scrollbar-color:var(--line-strong) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:980px;border:3px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--ink-4);background-clip:padding-box}.mono{font-family:var(--font-mono);font-variant-ligatures:none}.eyebrow{font-family:var(--font-mono);font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:var(--r-pill);padding:9px 16px;font-size:14px;font-weight:600;line-height:1;transition:background .14s var(--ease),border-color .14s var(--ease),opacity .14s var(--ease);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:hover{background:var(--surface-3);border-color:var(--line-strong)}.btn:active{transform:scale(.985)}.btn:disabled{opacity:.45;pointer-events:none}.btn-grad{background:var(--grad);border:0;color:#fff}.btn-grad:hover{background:var(--grad);filter:brightness(1.08)}.btn-ghost{background:transparent;border-color:transparent;color:var(--ink-2)}.btn-ghost:hover{background:var(--surface-2);border-color:transparent;color:var(--ink)}.btn-danger{background:var(--error-soft);border-color:#ff5c5c57;color:#ffb3b3}.btn-block{display:flex;width:100%}.field{display:block;margin:0 0 12px}.field-label{display:block;margin:0 0 6px;font-size:11.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.input,.textarea{display:block;width:100%;background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);padding:11px 12px;font-size:16px;line-height:1.35;color:var(--ink);transition:border-color .14s var(--ease),box-shadow .14s var(--ease)}.input::placeholder,.textarea::placeholder{color:var(--ink-4)}.input:focus,.textarea:focus{outline:none;border-color:var(--accent-line);box-shadow:var(--ring)}.input[readonly]{cursor:default}.hint{margin:6px 0 0;font-size:12px;color:var(--ink-3)}.hint-error{color:#ffb3b3}.card{background:var(--surface-1);border:1px solid var(--line-soft);border-radius:var(--r);box-shadow:var(--shadow)}.sheet-grab{width:36px;height:4px;border-radius:980px;background:var(--line-strong);margin:2px auto 10px}.st-idle{color:var(--st-idle)}.st-thinking{color:var(--st-thinking)}.st-tool{color:var(--st-tool)}.st-waiting{color:var(--st-waiting)}.st-offline{color:var(--st-offline)}.st-error,.st-errored{color:var(--st-error)}.st-starting{color:var(--st-thinking)}.st-ok{color:var(--st-ok)}.toast-stack{position:fixed;left:50%;bottom:calc(18px + var(--kb, 0px));transform:translate(-50%);display:flex;flex-direction:column;gap:8px;align-items:center;z-index:1000;pointer-events:none;padding:0 12px;width:100%;max-width:460px}.toast{background:var(--surface-3);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--r-pill);padding:9px 16px;font-size:13.5px;font-weight:600;box-shadow:var(--shadow-lg);animation:toast-in .22s var(--ease);max-width:100%}.toast-error{background:#2a1417;border-color:#ff5c5c66;color:#ffc9c9}@keyframes toast-in{0%{opacity:0;transform:translateY(12px) scale(.96)}}@keyframes bot-breathe{0%,to{opacity:1}50%{opacity:.45}}@keyframes bot-spin{to{transform:rotate(360deg)}}@keyframes bot-shimmer{0%,to{opacity:.55}50%{opacity:1}}@keyframes bot-caret{0%,to{opacity:1}50%{opacity:0}}@keyframes bot-halo{0%,to{box-shadow:0 0 #7c5cff73,0 0 28px #7c5cff47}50%{box-shadow:0 0 0 10px #7c5cff00,0 0 36px #7c5cff6b}}@keyframes bot-ring{0%{transform:scale(.85);opacity:.55}to{transform:scale(1.45);opacity:0}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.dot.is-animated{box-shadow:inset 0 0 0 2px #ffffff8c}}.chip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);color:var(--ink-2);font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.04em;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.chip-status{text-transform:uppercase;letter-spacing:.1em}.chip-offline{color:var(--ink-4)}.chip-idle{color:var(--st-idle)}.chip-starting,.chip-thinking{color:var(--st-thinking);border-color:#a78bfa47}.chip-tool{color:var(--st-tool);border-color:#34d3ee47;background:var(--info-soft)}.chip-waiting{color:var(--st-waiting);border-color:#ffb02066;background:var(--warn-soft)}.chip-errored{color:var(--st-error);border-color:#ff5c5c66;background:var(--error-soft)}.chip-dir{color:var(--ink-3);cursor:pointer}.chip-dir:hover{color:var(--ink);border-color:var(--line-strong)}.chip-mode{cursor:pointer}.chip-mode-key{color:var(--ink-4);font-weight:500}.chip-mode-val{color:var(--ink)}.chip-mode.is-danger{background:var(--error-soft);border-color:#ff5c5c73}.chip-mode.is-danger .chip-mode-key,.chip-mode.is-danger .chip-mode-val{color:var(--st-error)}.chip-mode-menu .menu-trigger{width:auto;height:auto;background:none}.chip-mode-menu .menu-trigger:hover{background:none}.app-fallback{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-deep)}.crash{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:var(--bg-deep)}.crash-card{max-width:440px}.crash-card h1{font-size:20px;margin:8px 0 10px}.crash-copy{font-size:13.5px;color:var(--ink-3);line-height:1.6;margin-bottom:16px}.crash-detail{margin-top:18px;padding:10px 12px;border-radius:var(--r-sm);background:var(--surface-1);border:1px solid var(--line-soft);font-size:11.5px;color:var(--ink-3);white-space:pre-wrap;overflow-x:auto}
