@keyframes sd-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes sd-blurIn{0%{opacity:0;filter:blur(4px)}to{opacity:1;filter:blur()}}@keyframes sd-slideUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}[data-sd-animate]{animation:var(--sd-animation,sd-fadeIn) var(--sd-duration,.15s) var(--sd-easing,ease) var(--sd-delay,0s) both}@keyframes sd-markerIn{0%{color:#0000}}[data-sd-animate-marker]::marker{animation:sd-markerIn var(--sd-marker-duration,.15s) var(--sd-marker-easing,ease) var(--sd-marker-delay,0s) both}:root{--bg-0:#0a100f;--bg-1:#0e1614;--bg-2:#121c1a;--bg-3:#172321;--ink-hi:#e2efe9;--ink:#b3c8c2;--ink-soft:#8ea69f;--ink-dim:#74908a;--hairline:#94c7ba24;--hairline-strong:#94c7ba42;--grid-line:#7ec8b50b;--grid-line-major:#7ec8b513;--signal-run:#4be3a4;--signal-warn:#efb35c;--signal-fail:#f2766d;--signal-idle:#7d97bb;--accent:#43dfb7;--accent-ink:#06231a;--focus-ring:#43dfb78c;--shadow-raise:0 10px 28px #030a0873;--font-mono:ui-monospace, "SF Mono", "Cascadia Code", "JetBrains Mono", Menlo, Consolas, "Liberation Mono", monospace;--font-sans:system-ui, -apple-system, "Segoe UI", "PingFang SC", "Noto Sans CJK SC", "Microsoft YaHei", sans-serif;--step--1:.75rem;--step-0:.8438rem;--step-1:.9375rem;--step-2:1.0625rem;--step-3:1.25rem;--radius:10px;--radius-soft:7px;--header-h:3.25rem;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:clip}body{background-color:var(--bg-0);color:var(--ink);font-family:var(--font-sans);font-size:var(--step-0);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;line-height:1.6}body:before{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px), linear-gradient(var(--grid-line-major) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line-major) 1px, transparent 1px);background-size:32px 32px,32px 32px,160px 160px,160px 160px;position:fixed;inset:0}#root{min-height:100dvh}::selection{background:#43dfb747}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:4px}a{color:var(--accent);text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}input,textarea{font:inherit;color:var(--ink-hi);background:var(--bg-2);border:1px solid var(--hairline);border-radius:var(--radius-soft);padding:.5rem .625rem}input::placeholder,textarea::placeholder{color:var(--ink-dim)}input:focus,textarea:focus{border-color:#43dfb78c;outline:none;box-shadow:0 0 0 3px #43dfb724}.shell{flex-direction:column;height:100dvh;display:flex}.shell-header{height:var(--header-h);padding:0 1rem;padding-left:max(1rem, env(safe-area-inset-left));padding-right:max(1rem, env(safe-area-inset-right));border-bottom:1px solid var(--hairline);background:color-mix(in srgb, var(--bg-1) 88%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:20;flex:none;align-items:center;gap:.75rem;display:flex;position:sticky;top:0}.brand{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.14em;color:var(--ink-hi);white-space:nowrap;align-items:baseline;gap:.4rem;display:flex}.brand-cursor{color:var(--signal-run);animation:1.2s steps(2,start) infinite blink}@keyframes blink{to{visibility:hidden}}.shell-spacer{flex:1}.connection-pill{font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-soft);border:1px solid var(--hairline);background:var(--bg-2);border-radius:999px;align-items:center;gap:.45rem;min-height:2.75rem;padding:.28rem .7rem;transition:border-color .12s;display:flex}.connection-pill:hover{border-color:var(--hairline-strong)}.header-settings{border:1px solid var(--hairline);background:var(--bg-2);min-width:2.75rem;min-height:2.75rem;color:var(--ink-soft);font-family:var(--font-mono);letter-spacing:.08em;border-radius:999px;place-items:center;font-size:.8rem;display:grid}.header-settings:hover{color:var(--ink-hi);border-color:var(--hairline-strong)}.shell-body{flex:1;grid-template-columns:minmax(0,1fr);min-height:0;display:grid}.home-rail{flex-direction:column;min-width:0;min-height:0;display:flex}.home-rail>.home{flex:1;min-height:0}.status-dot{background:var(--dot-color,var(--signal-idle));width:8px;height:8px;color:var(--dot-color,var(--signal-idle));border-radius:50%;flex:none;position:relative}.status-dot[data-pulse=true]:after{content:"";opacity:.5;border:1px solid;border-radius:50%;animation:2.2s ease-in-out infinite breathe;position:absolute;inset:-4px}@keyframes breathe{0%,to{opacity:.15;transform:scale(.55)}50%{opacity:.7;transform:scale(1.1)}}.dot-run{--dot-color:var(--signal-run)}.dot-warn{--dot-color:var(--signal-warn)}.dot-fail{--dot-color:var(--signal-fail)}.dot-idle{--dot-color:var(--signal-idle)}.dot-off{--dot-color:var(--ink-dim)}.home{width:100%;max-width:680px;padding:1.25rem 1rem calc(1.5rem + env(safe-area-inset-bottom));overscroll-behavior:contain;flex-direction:column;gap:1rem;height:100%;margin:0 auto;display:flex;overflow-y:auto}.hook-line{font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.hook-line strong{color:var(--ink-hi);font-weight:600}.task-composer{gap:.5rem;display:flex}.task-composer input{border-radius:var(--radius);flex:1;min-width:0;height:2.75rem}.btn{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.06em;border-radius:var(--radius-soft);border:1px solid var(--hairline);color:var(--ink);background:var(--bg-2);white-space:nowrap;justify-content:center;align-items:center;gap:.4rem;min-height:2.75rem;padding:0 .9rem;transition:border-color .12s,background .12s,color .12s;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--hairline-strong);color:var(--ink-hi)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-ink);border-color:#0000;font-weight:600}.btn-primary:hover:not(:disabled){color:var(--accent-ink);background:#5ce7c4}.btn-danger{color:var(--signal-fail);border-color:#f2766d66}.btn-danger:hover:not(:disabled){border-color:var(--signal-fail);color:#ff9b93}.session-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.session-card{text-align:left;border:1px solid var(--hairline);border-radius:var(--radius);background:color-mix(in srgb, var(--bg-1) 92%, transparent);width:100%;padding:.7rem .85rem;transition:border-color .12s;display:block}.session-card:hover,.session-card[data-current=true]{border-color:var(--hairline-strong)}.session-card[data-running=true]{border-color:#4be3a459}.session-card-head{align-items:center;gap:.5rem;display:flex}.session-card-title{min-width:0;color:var(--ink-hi);font-size:var(--step-1);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.session-card-time{font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-dim);flex:none}.session-card-summary{color:var(--ink-soft);font-size:var(--step--1);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:.25rem 0 0 1.125rem;display:-webkit-box;overflow:hidden}.session-card-stats{font-family:var(--font-mono);color:var(--ink-dim);flex-wrap:wrap;gap:.75rem;margin:.35rem 0 0 1.125rem;font-size:.6875rem;display:flex}.empty-state{border:1px dashed var(--hairline-strong);border-radius:var(--radius);color:var(--ink-soft);flex-direction:column;gap:.35rem;padding:1.4rem 1.1rem;display:flex}.empty-state .mono{font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-dim)}.section-label{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.14em;color:var(--ink-dim);text-transform:uppercase;margin:.4rem 0 0}.session-view{flex-direction:column;height:100%;min-height:0;display:flex}.session-head{border-bottom:1px solid var(--hairline);background:color-mix(in srgb, var(--bg-1) 88%, transparent);flex:none;align-items:center;gap:.6rem;padding:.6rem 1rem;display:flex}.session-back{border:1px solid var(--hairline);border-radius:var(--radius-soft);min-width:2.75rem;min-height:2.75rem;color:var(--ink-soft);font-family:var(--font-mono);place-items:center;display:grid}.session-back:hover{color:var(--ink-hi);border-color:var(--hairline-strong)}.session-head-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink-hi);font-size:var(--step-1);flex:1;overflow:hidden}.session-head-meta{font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-dim);flex:none;align-items:center;gap:.5rem;display:flex}.transcript{overscroll-behavior:contain;flex:1;min-height:0;padding:1rem 1rem 1.25rem;scroll-padding-bottom:1rem;overflow-y:auto}.transcript-inner{flex-direction:column;gap:.9rem;max-width:760px;margin:0 auto;display:flex}.transcript-banner{border:1px solid var(--hairline);border-radius:var(--radius-soft);background:var(--bg-2);color:var(--ink-soft);font-size:var(--step--1);align-items:center;gap:.5rem;padding:.55rem .75rem;display:flex}.transcript-banner[data-tone=error]{color:#f4a49d;border-color:#f2766d73}.transcript-banner[data-tone=run]{border-color:#4be3a459}.entry-user{background:var(--bg-3);border:1px solid var(--hairline-strong);border-radius:var(--radius) var(--radius) var(--radius-soft) var(--radius);max-width:88%;color:var(--ink-hi);white-space:pre-wrap;overflow-wrap:anywhere;align-self:flex-end;padding:.55rem .8rem}.entry-user .user-images{font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-dim);margin-top:.3rem;display:block}.entry-assistant{flex-direction:column;gap:.5rem;max-width:100%;display:flex}.entry-system{font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-dim);border:1px dashed var(--hairline);border-radius:999px;align-self:center;padding:.2rem .8rem}.entry-meta-line{font-family:var(--font-mono);color:var(--ink-dim);flex-wrap:wrap;gap:.6rem;font-size:.6875rem;display:flex}.entry-meta-line .stop-aborted{color:var(--signal-warn)}.entry-meta-line .stop-error{color:var(--signal-fail)}.thinking{border:1px solid var(--hairline);border-radius:var(--radius-soft);background:color-mix(in srgb, var(--bg-1) 80%, transparent);overflow:hidden}.thinking summary{cursor:pointer;font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-soft);-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;padding:.45rem .7rem;list-style:none;display:flex}.thinking summary::-webkit-details-marker{display:none}.thinking summary .chevron{color:var(--ink-dim);transition:transform .14s}.thinking[open] summary .chevron{transform:rotate(90deg)}.thinking-body{color:var(--ink-soft);font-size:var(--step--1);white-space:pre-wrap;overflow-wrap:anywhere;max-height:18rem;padding:.1rem .75rem .65rem;line-height:1.7;overflow-y:auto}.thinking-body+.thinking-body{border-top:1px solid var(--hairline)}.tool-card{border:1px solid var(--hairline);border-radius:var(--radius-soft);background:color-mix(in srgb, var(--bg-1) 88%, transparent);overflow:hidden}.tool-card[data-status=running]{border-color:#4be3a44d}.tool-card[data-status=error]{border-color:#f2766d66}.tool-card summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.55rem;min-height:2.75rem;padding:.5rem .7rem;list-style:none;display:flex}.tool-card summary::-webkit-details-marker{display:none}.tool-name{font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-hi);flex:none}.tool-args{min-width:0;font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tool-state{font-family:var(--font-mono);letter-spacing:.08em;flex:none;align-items:center;gap:.35rem;font-size:.6875rem;display:flex}.tool-state[data-status=running]{color:var(--signal-run)}.tool-state[data-status=done]{color:var(--ink-dim)}.tool-state[data-status=error]{color:var(--signal-fail)}.spinner{border:1.5px solid #4be3a440;border-top-color:var(--signal-run);border-radius:50%;flex:none;width:10px;height:10px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.tool-body{border-top:1px solid var(--hairline);flex-direction:column;gap:.6rem;padding:.6rem .75rem;display:flex}.tool-output{font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;max-height:20rem;margin:0;line-height:1.6;overflow-y:auto}.tool-output:empty{display:none}.diff-view{font-family:var(--font-mono);font-size:var(--step--1);border:1px solid var(--hairline);border-radius:var(--radius-soft);background:var(--bg-0);max-height:20rem;line-height:1.55;overflow:auto}.diff-row{white-space:pre;gap:.6rem;padding:0 .6rem;display:flex}.diff-row .diff-sign{-webkit-user-select:none;user-select:none;flex:none;width:.8rem}.diff-add{color:#9ff0cd;background:#4be3a417}.diff-del{color:#f6b3ac;background:#f2766d17}.diff-same{color:var(--ink-soft)}.markdown{color:var(--ink-hi);font-size:var(--step-1);overflow-wrap:anywhere;line-height:1.75}.markdown.markdown-streaming:after{content:"▍";color:var(--signal-run);font-size:.85em;animation:1s steps(2,start) infinite blink}.markdown :is(h1,h2,h3,h4){color:var(--ink-hi);margin:1.1em 0 .45em;line-height:1.3}.markdown p{margin:.45em 0}.markdown :is(ul,ol){margin:.45em 0;padding-left:1.4em}.markdown code{font-family:var(--font-mono);background:var(--bg-2);border:1px solid var(--hairline);border-radius:4px;padding:.08em .32em;font-size:.875em}.markdown pre{background:var(--bg-0);border:1px solid var(--hairline);border-radius:var(--radius-soft);font-size:var(--step--1);padding:.7rem .8rem;line-height:1.6;overflow-x:auto}.markdown pre code{background:0 0;border:none;padding:0}.markdown table{border-collapse:collapse;width:100%;font-size:var(--step--1)}.markdown :is(th,td){border:1px solid var(--hairline);text-align:left;padding:.3rem .55rem}.markdown blockquote{border-left:2px solid var(--hairline-strong);color:var(--ink-soft);margin:.5em 0;padding:.1em 0 .1em .8em}.markdown [data-streamdown=link]{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.markdown [data-streamdown=inline-code]{font-family:var(--font-mono);background:var(--bg-2);border:1px solid var(--hairline);border-radius:4px;padding:.08em .32em;font-size:.875em}.markdown [data-streamdown=code-block]{background:var(--bg-0);border:1px solid var(--hairline);border-radius:var(--radius-soft);margin:.7em 0;position:relative;overflow:hidden}.markdown [data-streamdown=code-block] pre{background:0 0;border:none;border-radius:0;margin:0}.markdown [data-streamdown=code-block-header]{border-bottom:1px solid var(--hairline);justify-content:flex-end;gap:.25rem;padding:.25rem .4rem;display:flex}.markdown [data-streamdown^=code-block-] button,.markdown [data-streamdown=code-block-copy-button],.markdown [data-streamdown=code-block-download-button]{color:var(--ink-soft);border-radius:4px;padding:.15rem .4rem}.markdown [data-streamdown^=code-block-] button:hover{color:var(--ink-hi);background:var(--bg-2)}.markdown [data-streamdown=table-wrapper]{border:1px solid var(--hairline);border-radius:var(--radius-soft);overflow-x:auto}.markdown [data-streamdown=strong]{color:var(--ink-hi);font-weight:650}.jump-bottom{z-index:5;font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-hi);background:var(--bg-3);border:1px solid var(--hairline-strong);box-shadow:var(--shadow-raise);border-radius:999px;align-items:center;gap:.4rem;padding:.4rem .85rem;display:inline-flex;position:absolute;bottom:.75rem;left:50%;transform:translate(-50%)}.jump-bottom:hover{border-color:#43dfb780}.composer-wrap{padding:0 1rem;padding-bottom:max(.75rem, env(safe-area-inset-bottom));background:linear-gradient(to top, var(--bg-0) 72%, transparent);flex:none;position:relative}.composer{border:1px solid var(--hairline);border-radius:var(--radius);background:var(--bg-2);align-items:flex-end;gap:.5rem;max-width:760px;margin:0 auto;padding:.45rem .5rem;transition:border-color .14s;display:flex}.composer[data-running=true]{border-color:#4be3a466;box-shadow:0 0 14px #4be3a414}.composer:focus-within{border-color:#43dfb780}.composer textarea{resize:none;background:0 0;border:none;flex:1;min-width:0;max-height:8.5rem;padding:.35rem .25rem;line-height:1.55}.composer textarea:focus{box-shadow:none}.composer .btn{min-height:2.75rem}.composer-hint{max-width:760px;font-family:var(--font-mono);color:var(--ink-dim);flex-wrap:wrap;justify-content:space-between;gap:.75rem;margin:.3rem auto 0;font-size:.6875rem;display:flex}.settings{width:100%;max-width:620px;padding:1.25rem 1rem calc(2rem + env(safe-area-inset-bottom));overscroll-behavior:contain;flex-direction:column;gap:1rem;height:100%;margin:0 auto;display:flex;overflow-y:auto}.settings-card{border:1px solid var(--hairline);border-radius:var(--radius);background:color-mix(in srgb, var(--bg-1) 92%, transparent);flex-direction:column;gap:.75rem;padding:1rem 1rem 1.1rem;display:flex}.settings-field{flex-direction:column;gap:.3rem;display:flex}.settings-field label{font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-soft);letter-spacing:.05em}.diagnostics{font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-soft);flex-direction:column;gap:.3rem;max-height:14rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.diagnostics li{overflow-wrap:anywhere;gap:.5rem;display:flex}.diagnostics time{color:var(--ink-dim);flex:none}.wide .shell-body{grid-template-columns:21rem minmax(0,1fr)}.wide .home-rail{border-right:1px solid var(--hairline)}.wide .home{max-width:none;height:100dvh;padding:1.1rem 1rem}.wide .detail-pane{height:100dvh;min-height:0}.detail-pane{flex-direction:column;min-height:0;display:flex;position:relative}.detail-empty{color:var(--ink-dim);font-family:var(--font-mono);font-size:var(--step--1);text-align:center;flex:1;place-items:center;padding:2rem;line-height:2;display:grid}.transcript-scroll-zone{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
