:root{color-scheme:dark;--bg:#202020;--side:#171717;--panel:#2c2c2c;--hover:#353535;--text:#ededed;--muted:#a4a4a4;--line:#373737;--accent:#b8dcf5;font-family:Inter,"Segoe UI",system-ui,-apple-system,sans-serif;font-size:15px}*{box-sizing:border-box}body{margin:0;color:var(--text);background:var(--bg);height:100dvh;display:flex;overflow:hidden}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none;touch-action:manipulation}button:disabled{opacity:.4;cursor:default}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:hover:not(:disabled){background:var(--hover)}button[hidden],[hidden]{display:none!important}.icon{min-width:42px;min-height:42px;border-radius:9px;font-size:22px;display:inline-grid;place-items:center;flex-shrink:0}aside{width:260px;flex-shrink:0;background:var(--side);padding:20px 14px 12px;display:flex;flex-direction:column;border-right:1px solid #252525}.brand{display:flex;align-items:center;gap:11px;padding:0 10px 24px;font-size:19px;letter-spacing:-.5px}.mark{font-size:30px}.new{padding:11px 13px;min-height:46px;text-align:left;border:1px solid #3d3d3d;border-radius:9px;display:flex;gap:11px;align-items:center}.new span{font-size:23px;line-height:1}.search{display:flex;gap:8px;align-items:center;padding:13px 10px;color:var(--muted);margin:9px 0}.search input{width:100%;background:none;border:0;outline:none;font-size:14px;min-width:0}.search span{font-size:23px}.nav-label{color:#898989;font-size:12px;padding:9px 12px}nav{overflow:auto;flex:1;min-height:80px}.thread{display:block;width:100%;text-align:left;padding:12px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border-radius:8px;font-size:14px;margin-bottom:3px;min-height:44px}.thread.selected{background:#303030}.thread.running:before{content:'●';color:var(--accent);font-size:8px;margin-right:8px}.sidebar-bottom{padding:14px 7px 0;display:flex;gap:9px;align-items:center;border-top:1px solid #303030;font-size:13px}.sidebar-bottom small{display:block;color:var(--muted);font-size:10px;line-height:1.45;max-width:145px;margin-top:4px}.sidebar-bottom .icon{margin-left:auto}.server-dot{width:7px;height:7px;flex-shrink:0;background:#99c7af;border-radius:50%}main{flex:1;min-width:0;display:flex;flex-direction:column;height:100%;position:relative}header{height:72px;min-height:72px;padding:12px 28px;display:flex;gap:8px;align-items:center}.header-title{flex:1;min-width:0}.header-title strong{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:500;font-size:15px}.header-title span{display:block;font-size:11px;color:var(--muted);margin-top:4px}#notice{margin:0 24px 4px;border:1px solid #605642;background:#342f26;border-radius:10px;padding:8px 10px 8px 15px;font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:10px}#scroll{flex:1;overflow:auto;overscroll-behavior:contain;padding:15px max(28px,calc((100% - 790px)/2));scroll-behavior:smooth;scrollbar-width:thin}#empty{padding:clamp(25px,10vh,120px) 0 36px;text-align:center}h1{font-size:32px;font-weight:500;letter-spacing:-1.1px;margin:20px 0 12px}#empty p,.login-box p{color:var(--muted);font-size:15px;line-height:1.6}.welcome-mark{font-size:52px;line-height:1;color:#d2d2d2;display:inline-block}.suggestions{display:flex;gap:10px;margin:32px auto 0;max-width:660px}.suggestions button{font-size:13px;border:1px solid #414141;padding:14px 12px;border-radius:10px;flex:1;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:52px}.suggestions span{color:var(--muted)}.message{margin:0 0 25px;animation:appear .15s ease-out;line-height:1.7;font-size:15px;overflow-wrap:anywhere}.message.user{margin-left:auto;max-width:85%;background:#303030;border-radius:20px;padding:12px 18px;width:fit-content;white-space:pre-wrap}.message.assistant{padding:1px 4px}.message .by{font-size:12px;color:var(--muted);margin-bottom:7px;font-weight:600;letter-spacing:.2px}.message p{margin:0 0 12px}.message p:last-child{margin-bottom:0}.message pre,.approval pre{position:relative;max-width:100%;white-space:pre;overflow:auto;background:#151515;padding:17px;border:1px solid #3c3c3c;border-radius:10px;font:12px/1.65 ui-monospace,Consolas,monospace}.message code{background:#343434;border-radius:4px;padding:2px 5px;font:13px ui-monospace,Consolas,monospace}.message pre code{padding:0;background:none;font:inherit}.message a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.message h2,.message h3{font-size:19px;margin:22px 0 12px;font-weight:600}.message ul,.message ol{padding-left:25px}.message li{margin:5px 0}.message blockquote{margin:12px 0;border-left:3px solid #555;padding:0 16px;color:var(--muted)}.message .copy{font-size:12px;color:var(--muted);margin-top:7px;border-radius:6px;padding:6px 9px;min-height:32px}.tool{margin:0 0 18px;color:var(--muted);font-size:12px}.tool summary{cursor:pointer;min-height:35px;display:flex;align-items:center;gap:8px}.tool pre{white-space:pre-wrap;max-height:260px;overflow:auto;background:#191919;padding:12px;border-radius:8px;font:12px/1.5 ui-monospace,monospace}.approval{border:1px solid #5e6c78;border-radius:12px;padding:17px;margin:16px 0;background:#262d33}.approval h3{margin:0 0 10px;font-size:15px}.approval p{font-size:14px;line-height:1.6}.approval pre{max-height:220px}.approval-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:13px}.primary,.secondary{padding:12px 17px;border-radius:9px;min-height:44px;font-size:14px}.primary{background:var(--text);color:#171717}.primary:hover:not(:disabled){background:#cfcfcf}.secondary{border:1px solid #5a5a5a;background:#303030}.approval label{display:block;margin:10px 0;font-size:14px}.approval input[type=text],dialog input{width:100%;padding:12px;border-radius:8px;background:#202020;border:1px solid #555}.approval select{width:100%;padding:12px;background:#202020;border:1px solid #555;border-radius:8px}#working{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:13px;margin:6px 0 24px}.pulse{width:8px;height:8px;border-radius:50%;background:#c7c7c7;animation:pulse 1.4s ease-in-out infinite}footer{flex-shrink:0;width:100%;padding:6px max(28px,calc((100% - 790px)/2)) max(12px,env(safe-area-inset-bottom))}#composer{padding:12px 12px 9px;border:1px solid #4a4a4a;border-radius:20px;background:var(--panel);box-shadow:0 4px 30px #00000012}textarea{display:block;width:100%;max-height:190px;min-height:36px;background:none;border:0;resize:none;padding:4px 7px;outline:none!important;line-height:1.55;font-size:16px}textarea::placeholder{color:#a3a3a3}.composer-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:5px}.composer-tools{display:flex;align-items:center;gap:5px;min-width:0;flex:1}.composer-tools .icon{font-size:26px}.composer-tools select{background:transparent;border:0;color:var(--muted);max-width:220px;font-size:12px;padding:10px 4px;min-width:0}select option{background:#252525;color:var(--text)}.send{width:40px;height:40px;border-radius:50%;background:#ededed;color:#161616;font-size:27px;line-height:1;flex-shrink:0}.send:hover:not(:disabled){background:#ccc}.send:disabled{background:#575757;color:#aaa;opacity:1}#stop{font-size:13px;border:1px solid #696969;border-radius:9px;min-height:40px;padding:8px 12px}.footer-note{font-size:10px;text-align:center;color:#898989;margin:9px 0 0}.quiet{color:var(--muted);font-size:12px;border:1px solid #444;border-radius:7px;padding:9px 13px;margin:8px auto 18px;display:block;min-height:40px}#attachments{display:flex;gap:7px;flex-wrap:wrap}.attachment{display:flex;align-items:center;gap:9px;font-size:12px;background:#333;border-radius:8px;padding:3px 5px 3px 10px;margin-bottom:8px;max-width:100%}.attachment span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:210px}.attachment button{min-width:32px;min-height:32px;font-size:20px}.mobile{display:none}dialog{background:#292929;color:var(--text);border:1px solid #525252;border-radius:17px;padding:24px;max-width:440px;width:calc(100% - 32px);box-shadow:0 20px 80px #0006}dialog::backdrop{background:#0008;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}h2{font-size:20px;font-weight:500;margin:0}dialog p{font-size:14px;line-height:1.65}.muted{color:var(--muted)}dialog .primary{margin-top:16px;width:100%}.login-page{align-items:center;justify-content:center;overflow:auto;padding:24px}.login-box{width:360px;max-width:100%;text-align:center}.login-box h1{margin-top:22px}.login-box form{text-align:left;margin-top:32px}.login-box label{display:block;font-size:13px;color:#bbb;margin:18px 0}.login-box input{display:block;width:100%;padding:14px;background:#292929;border:1px solid #555;border-radius:9px;margin-top:8px;font-size:16px}.login-box button{width:100%;margin:12px 0 28px}.login-box small{color:#888;font-size:12px}#loginError{font-size:13px;color:#ffc5b8}#shade{position:fixed;inset:0;background:#0009;z-index:19}
html{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body{position:fixed;top:0;left:0;width:100%;overscroll-behavior:none}main,#scroll{min-height:0}#scroll{overflow-anchor:none}textarea{scroll-margin:0}
.voice-bar{display:flex;align-items:center;gap:8px;padding:10px 12px;margin-bottom:8px;border:1px solid #565656;border-radius:12px;background:#2d2d2d;font-size:13px}.voice-bar>span{flex:1}.voice-bar button{margin:0;min-height:40px;padding:8px 11px;font-size:12px}.mic.recording{color:#ffc3bd;background:#54302e}.mic svg{display:block}.composer-tools .mic{font-size:18px}.composer-tools select{max-width:180px}
@keyframes appear{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes pulse{50%{opacity:.3}}
@media(max-width:760px){body{height:100dvh}.mobile{display:inline-grid}aside{position:fixed;left:0;top:0;bottom:0;z-index:20;width:min(300px,85vw);transform:translateX(-100%);transition:transform .18s ease;padding-top:max(20px,env(safe-area-inset-top))}body.nav-open aside{transform:translateX(0)}.brand .mobile{margin-left:auto}.brand{padding-bottom:18px}header{height:64px;min-height:64px;padding:8px 12px}.header-title strong{font-size:14px}#scroll{padding:14px 18px}footer{padding:6px 12px max(9px,env(safe-area-inset-bottom))}#empty{padding:13vh 5px 20px}h1{font-size:28px}.suggestions{flex-direction:column;max-width:330px;gap:8px;margin-top:26px}.suggestions button{min-height:48px;padding:12px 15px}.message{font-size:15px;margin-bottom:22px}.message.user{max-width:93%;padding:11px 15px}.message pre{font-size:11px;padding:12px}.composer-tools select{max-width:180px}#notice{margin:0 12px 6px;font-size:12px}#composer{border-radius:18px;padding:11px 9px 8px}#stop span{display:none}.footer-note{font-size:9px;margin-top:7px}dialog{padding:20px}.approval{padding:13px}.approval-actions button{flex:1}#empty p{font-size:14px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(max-width:760px){body{height:var(--app-height,100dvh);top:var(--app-top,0px)}aside{top:var(--app-top,0px);height:var(--app-height,100dvh);bottom:auto}.keyboard-open footer{padding-bottom:8px}.keyboard-open .footer-note{display:none}.keyboard-open textarea{max-height:110px}.keyboard-open #empty{padding-top:25px}.keyboard-open header{height:52px;min-height:52px}.keyboard-open .header-title span{display:none}}

@media(max-width:760px){main{padding-top:env(safe-area-inset-top,0px)}header{flex-shrink:0}.keyboard-open main{padding-top:env(safe-area-inset-top,0px)}}

@media(max-width:760px){.keyboard-open header{height:64px;min-height:64px}.keyboard-open .header-title span{display:block}.keyboard-open .footer-note{display:block}}
