*{box-sizing:border-box}
:root{color-scheme:dark;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#e8ebe4;background:#131613;font-synthesis:none;--accent:#d9f487;--muted:#8e9888;--border:#30372c}
body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}button,input,textarea{outline:none}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}svg{height:20px;width:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}.svg-library{display:none}[hidden]{display:none!important}
.brand{display:flex;align-items:center;gap:11px;font-size:11px;letter-spacing:2px;font-weight:750;white-space:nowrap}.mark{display:grid;place-items:center;background:var(--accent);color:#1d2914;font-size:29px;font-weight:450;width:34px;height:34px;border-radius:10px}.dot{display:inline-block;width:6px;height:6px;flex:none;border-radius:50%;background:var(--accent)}.dot.offline{background:#888b83}.eyebrow{font-size:10px;letter-spacing:2.2px;color:#b5c19f}.primary{display:flex;align-items:center;justify-content:space-between;width:100%;padding:15px 18px;background:var(--accent);border:0;border-radius:8px;color:#1d2813;font-weight:650;font-size:14px}.primary:hover{background:#e3ffa1}.icon-button{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:7px;background:transparent;color:#8f9a86;flex:none}.icon-button:hover{background:#ffffff09;color:#eef2e8}.icon-button svg{width:17px;height:17px}input{color:#eef2e8;background:#1a2018;border:1px solid #353e2e;border-radius:7px;padding:13px 14px;width:100%}input::placeholder,textarea::placeholder{color:#727d6c}label{display:block;font-size:12px;color:#bdc7b4;margin:0 0 9px}
.login-view{max-width:1160px;padding:46px 40px 25px;margin:auto;min-height:100svh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 85% 25%,#6d852310,transparent 65%)}.login-card{width:min(100%,430px);margin:auto;padding:55px 0}.login-card h1{font-size:52px;font-weight:500;letter-spacing:-2.8px;line-height:1.06;margin:23px 0}.login-card h1 span,.welcome h2 span{color:var(--accent)}.intro{font-size:15px;line-height:1.65;color:var(--muted);max-width:360px;margin-bottom:33px}.login-card input{margin-bottom:23px;padding:14px}.error{font-size:13px;color:#ffb5a4;margin:0 0 15px}.error:empty{display:none}.secure{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:25px;font-size:11px;color:#7f8b75}.login-view footer{font-size:11px;text-align:center;color:#687460}
.app-shell{height:100dvh;display:grid;grid-template-columns:272px minmax(0,1fr);overflow:hidden}.sidebar{display:flex;flex-direction:column;padding:28px 17px 16px;background:#101310;border-right:1px solid #293125;min-height:0}.sidebar-brand{padding:0 8px 28px;display:flex;align-items:center;justify-content:space-between}.new-chat{display:flex;align-items:center;gap:9px;padding:12px 13px;border:1px solid #a0b86654;border-radius:8px;background:#d9f4870b;color:#d9ecb8;font-size:12px;font-weight:550;width:100%;transition:background .15s}.new-chat:hover{background:#d9f48718}.new-chat svg{height:16px;width:16px}.new-chat>span{margin-left:auto;color:#8ba364}.search-wrap{display:flex;align-items:center;gap:7px;margin-top:23px;padding:0 9px;color:#69765f}.search-wrap svg{width:15px;height:15px}.search-wrap input{font-size:11px;border:0;background:transparent;padding:7px 0}.search-wrap input:focus-visible{outline-offset:5px}.sidebar-label{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:1.6px;color:#75826b;padding:27px 10px 13px}.sidebar-label span{font-size:10px;color:#8a9b79;letter-spacing:0}.chat-list{overflow-y:auto;flex:1;min-height:0;scrollbar-width:thin}.chat-item{width:100%;border:1px solid transparent;background:transparent;color:#b1bba7;padding:11px;border-radius:8px;text-align:left;display:flex;align-items:flex-start;gap:10px;margin:0 0 4px}.chat-item:hover{background:#ffffff04}.chat-item.active{background:#252d20;border-color:#829a5322;color:#edf4e4}.chat-item svg{width:14px;height:14px;margin-top:2px;color:#778967}.chat-item.active svg{color:#d9f487}.chat-item-text{display:block;min-width:0;flex:1}.chat-item strong{display:block;font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.5}.chat-item small{display:block;margin-top:3px;font-size:10px;color:#6f7d64;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.chat-item.active small{color:#99a98b}.chat-state{width:5px;height:5px;border-radius:50%;background:var(--accent);margin-top:7px;flex:none}.chat-state.approval{background:#f2c375}.list-empty{font-size:11px;color:#738068;line-height:1.7;margin:10px}.sidebar-bottom{display:flex;align-items:center;gap:10px;padding:17px 7px 0;margin-top:17px;border-top:1px solid #283021}.account-avatar{display:grid;place-items:center;width:31px;height:31px;border:1px solid #536541;border-radius:50%;background:#283320;color:#d5e6c1;font-size:12px}.account-info{flex:1;min-width:0}.account-info strong{display:block;font-size:11px;font-weight:550}.account-info>span{display:flex;align-items:center;gap:5px;font-size:9px;color:#849575;margin-top:5px}.account-info .dot{width:4px;height:4px}
.chat-main{min-width:0;min-height:0;display:flex;flex-direction:column;background:radial-gradient(ellipse at 70% 0,#576c1510,transparent 50%)}.chat-header{height:81px;flex:none;display:flex;align-items:center;gap:9px;padding:0 36px;border-bottom:1px solid #293125}.header-title{min-width:0}.header-title h1{font-size:13px;line-height:1.5;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(42vw,600px);margin:0}.header-title>span{display:block;font-size:10px;color:#77876a;margin-top:4px}.connection-pill{margin-left:auto;display:flex;align-items:center;gap:7px;border:1px solid #35432b;border-radius:50px;padding:7px 10px;font-size:10px;color:#b8c9a7;white-space:nowrap}.connection-pill .dot{width:5px;height:5px}.chat-scroll{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;scroll-behavior:smooth;padding:0 32px}.welcome{max-width:790px;margin:auto;padding:clamp(40px,9vh,110px) 12px 45px}.welcome-badge{display:flex;align-items:center;gap:11px;font-size:8px;letter-spacing:1.5px;color:#9fb28c}.welcome-badge .mark{width:27px;height:27px;border-radius:8px;font-size:24px}.welcome h2{font-size:clamp(38px,4.6vw,66px);font-weight:450;line-height:1.04;letter-spacing:-3px;margin:29px 0 19px}.welcome>p{font-size:14px;line-height:1.8;color:#8e9d80;margin-bottom:35px}.suggestions{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.suggestions button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:19px 16px 18px;background:#1a2017;border:1px solid #313d27;border-radius:10px;transition:background .15s,transform .15s;color:#c0d1b0;min-width:0}.suggestions button:hover{background:#242e1c;transform:translateY(-2px)}.suggestions svg{width:19px;height:19px;margin-bottom:18px;color:#b8d58b}.suggestions strong{font-size:12px;font-weight:550;margin-bottom:8px}.suggestions span{font-size:11px;line-height:1.6;color:#7e8d70}
.messages{max-width:830px;margin:auto;padding:30px 10px 25px}.messages:empty{padding:0}.message{margin-bottom:29px}.message.user{display:flex;justify-content:flex-end}.user-bubble{max-width:83%;background:#283021;border:1px solid #3a4730;border-radius:15px 15px 4px 15px;padding:13px 17px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.65;color:#e1e9d8}.assistant-row{display:flex;gap:14px;align-items:flex-start}.assistant-avatar{width:26px;height:26px;display:grid;place-items:center;border:1px solid #708a4455;background:#d9f4870a;border-radius:8px;color:var(--accent);font-size:23px;margin-top:2px;flex:none}.assistant-body{min-width:0;flex:1}.message-label{font-size:10px;color:#99ae84;font-weight:600;letter-spacing:.35px;margin:0 0 10px}.markdown{font-size:14px;line-height:1.8;color:#d6e0cd;overflow-wrap:anywhere}.markdown>*:first-child{margin-top:0}.markdown>*:last-child{margin-bottom:0}.markdown h1,.markdown h2,.markdown h3{line-height:1.35;color:#edf2e7;margin:1.3em 0 .6em;letter-spacing:-.3px}.markdown h1{font-size:23px}.markdown h2{font-size:20px}.markdown h3{font-size:17px}.markdown p{margin:.6em 0 1em}.markdown ul,.markdown ol{padding-left:1.6em;margin:.7em 0 1em}.markdown li{margin:.3em 0}.markdown li>p{margin:.3em 0}.markdown a{color:var(--accent);text-underline-offset:3px}.markdown blockquote{border-left:2px solid #9bb575;padding-left:16px;margin:17px 0;color:#a0b08f}.markdown code{font-family:Menlo,Consolas,monospace;font-size:.86em;background:#b9d48f12;color:#d3e8b7;padding:3px 5px;border-radius:4px}.markdown pre{position:relative;background:#0e120d;border:1px solid #303d26;border-radius:10px;padding:43px 17px 17px;margin:18px 0;overflow:auto;line-height:1.65}.markdown pre code{background:none;padding:0;font-size:12px;color:#cee0bc;white-space:pre}.copy-code{position:absolute;right:10px;top:9px;padding:5px 8px;font-size:10px;color:#8fa778;border:1px solid #35452b;background:#1a2414;border-radius:5px}.code-label{position:absolute;left:15px;top:12px;color:#7d9666;font-size:10px;font-family:inherit}.markdown table{border-collapse:collapse;display:block;max-width:100%;overflow:auto;font-size:12px;margin:15px 0}.markdown th,.markdown td{border:1px solid #39482e;padding:7px 10px;text-align:left}.markdown th{background:#202b1a}.markdown hr{border:0;border-top:1px solid #34432a;margin:20px 0}
.tool-message{margin:-7px 0 23px 40px;border:1px solid #303e26;border-radius:8px;overflow:hidden;background:#18201466}.tool-message summary{display:flex;align-items:center;gap:9px;cursor:pointer;padding:11px 13px;font-size:11px;color:#92a77e;list-style:none}.tool-message summary::-webkit-details-marker{display:none}.tool-message summary::before{content:'›';font-size:16px;transition:transform .15s}.tool-message[open] summary::before{transform:rotate(90deg)}.tool-title{min-width:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;flex:1}.tool-status{font-size:9px;white-space:nowrap;color:#a7c485}.tool-status.failed{color:#ffb39b}.tool-details{border-top:1px solid #303e26;padding:12px;font-size:11px;color:#9eb28a}.tool-details pre{max-height:280px;overflow:auto;margin:0 0 12px;white-space:pre-wrap;overflow-wrap:anywhere;font-family:Menlo,Consolas,monospace;line-height:1.65}.tool-details pre:last-child{margin-bottom:0}.error-message{font-size:13px;line-height:1.7;color:#efb49d;background:#3c291f44;border:1px solid #74543b55;padding:13px;border-radius:8px;margin:18px 0}
.compose-area{width:100%;max-width:910px;align-self:center;flex:none;padding:0 40px 22px}.composer{background:#20271c;border:1px solid #48573b;border-radius:13px;padding:15px 16px 10px;box-shadow:0 4px 20px #0000000d}.composer:focus-within{border-color:#9ab76b88;box-shadow:0 0 0 3px #d9f48704}textarea{width:100%;resize:none;border:0;outline:none!important;background:transparent;color:#eaf1e1;line-height:1.6;font-size:14px;min-height:35px;max-height:190px;padding:1px 2px 8px;overflow-y:auto}textarea::placeholder{color:#849377}.composer-toolbar{display:flex;align-items:center;justify-content:space-between}.composer-toolbar>span{display:flex;align-items:center;gap:7px;font-size:10px;color:#a7ba94}.mini-mark{font-size:21px;font-weight:300;color:#d9f487}.send-button,.stop-button{display:grid;place-items:center;width:31px;height:31px;border:0;border-radius:8px;background:var(--accent);color:#1c2910}.send-button svg{height:18px;width:18px;stroke-width:2}.stop-button>span{width:10px;height:10px;border-radius:2px;background:#263b15}.composer-caption{display:flex;justify-content:space-between;font-size:9px;color:#708163;margin:10px 2px 0}.activity{display:flex;align-items:center;gap:8px;color:#9bb484;font-size:11px;margin:0 4px 12px;min-height:16px}.spinner{width:10px;height:10px;border:1.5px solid #b6d48f33;border-top-color:#b6d48f;border-radius:50%;display:inline-block;animation:spin 1s linear infinite;flex:none}@keyframes spin{to{transform:rotate(360deg)}}
.permissions{display:flex;flex-direction:column;gap:10px}.permission-card{background:#2d2b1c;border:1px solid #7f754555;border-radius:10px;padding:14px 15px;margin-bottom:12px}.permission-card strong{font-size:12px;color:#e9d89a;display:block;margin-bottom:7px}.permission-card p{font-size:11px;line-height:1.6;color:#b6b08b;margin:0 0 8px}.permission-card pre{font:11px/1.6 Menlo,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;background:#181b13;padding:10px;border-radius:6px;max-height:160px;overflow:auto;color:#dbddbc;margin:9px 0}.permission-actions{display:flex;gap:8px;margin-top:10px}.permission-actions button{font-size:11px;padding:8px 12px;border:1px solid #626744;border-radius:6px;background:#323c24;color:#dfedc6}.permission-actions button:last-child{background:transparent;color:#b2b69e;border-color:#575638}.app-error{display:flex;align-items:center;gap:15px;justify-content:space-between;flex:none;margin:12px 30px 0;padding:10px 14px;border:1px solid #8b624355;background:#593c2b33;color:#eac0a7;border-radius:7px;font-size:12px}.app-error button{background:none;border:0;font-size:20px;color:inherit}dialog{background:#1b2417;border:1px solid #4f663b;border-radius:13px;color:#e3eed9;padding:23px;width:min(90vw,420px)}dialog::backdrop{background:#0009;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.dialog-heading h2{font-size:17px;margin:0;font-weight:550}dialog input{margin:0 0 20px}dialog .primary{justify-content:center}.mobile-only,.sidebar-shade{display:none}
@media(min-width:1500px){.welcome{padding-top:12vh}}
@media(max-width:950px){.app-shell{grid-template-columns:238px minmax(0,1fr)}.sidebar{padding-left:12px;padding-right:12px}.chat-header{padding:0 23px}.chat-scroll{padding:0 17px}.compose-area{padding:0 25px 18px}.welcome{padding-top:60px}.welcome h2{font-size:48px}.suggestions{grid-template-columns:1fr}.suggestions button{display:grid;grid-template-columns:20px 1fr;gap:4px 12px;padding:13px}.suggestions svg{margin:1px 0 0;grid-row:1/3;width:16px;height:16px}.suggestions strong{margin:0}.suggestions span{font-size:10px}.welcome>p{margin-bottom:25px}}
@media(max-width:700px){.app-shell{display:block}.chat-main{height:100dvh}.sidebar{position:fixed;inset:0 auto 0 0;width:285px;max-width:88vw;z-index:30;transform:translateX(-100%);transition:transform .2s;padding-top:24px}.sidebar.open{transform:translateX(0)}.mobile-only{display:grid}.sidebar-shade{display:block;position:fixed;inset:0;background:#0009;z-index:25;border:0;backdrop-filter:blur(2px)}.chat-header{height:70px;padding:0 15px;gap:8px}.header-title h1{max-width:47vw;font-size:12px}.header-title>span{font-size:9px}.connection-pill{padding:6px;font-size:0;gap:0}.connection-pill .dot{width:6px;height:6px}.chat-header>.icon-button{width:27px}.chat-scroll{padding:0 15px}.welcome{padding:46px 6px 30px}.welcome h2{font-size:48px;letter-spacing:-2.3px;margin-top:25px}.welcome-badge{font-size:7px;letter-spacing:1.2px}.welcome>p{font-size:12px}.suggestions{gap:9px}.suggestions button{padding:13px}.compose-area{padding:0 14px max(13px,env(safe-area-inset-bottom))}.composer{padding:12px 13px 9px}.composer-caption{font-size:8px;justify-content:center}.composer-caption>span:first-child{display:none}.messages{padding:24px 0 15px}.markdown{font-size:13px;line-height:1.8}.user-bubble{font-size:13px;max-width:90%;padding:11px 13px}.assistant-row{gap:10px}.assistant-avatar{width:23px;height:23px;font-size:21px}.tool-message{margin-left:33px}.permission-actions button{flex:1}.login-view{padding:27px}.login-card h1{font-size:45px}.app-error{margin:10px 15px 0}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.permissions{max-height:45dvh;overflow:auto}
