*{box-sizing:border-box}html,body{margin:0;height:100%;color:#252722;background:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px}button,input,textarea,select{font:inherit}button,select{cursor:pointer}button{color:inherit}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible{outline:2px solid #41876d;outline-offset:3px}input,textarea{outline:none}input:focus,textarea:focus{border-color:#41876d}button{border:0;background:none}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.shell{display:flex;height:100dvh;overflow:hidden}aside{width:280px;flex-shrink:0;background:#f7f7f5;border-right:1px solid #e9e9e5;display:flex;flex-direction:column;padding:26px 18px 0}.brand{display:flex;align-items:center;gap:12px;font-size:18px;letter-spacing:-.5px;margin:0 8px 31px}.brand b{font-weight:500;color:#777b73}.brandmark{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:16px;background:#244f40;color:#fff;font-size:28px;font-weight:600}.brandmark span{color:#a4ce9f;margin-left:2px}.brandmark.small{width:34px;height:34px;font-size:20px;border-radius:10px}.new-chat{display:flex;align-items:center;gap:10px;text-align:left;background:white;border:1px solid #dfdfd9;border-radius:9px;padding:10px 12px;box-shadow:0 2px 2px #00000003;font-weight:500}.new-chat span{font-size:22px;font-weight:300}.new-chat kbd{margin-left:auto;background:#f5f5f2;color:#999b94;font-size:11px;padding:3px;border-radius:4px}.search{display:flex;align-items:center;gap:8px;margin:17px 7px 32px;color:#95988e}.search span{font-size:24px}.search input{background:transparent;border:0;min-width:0;width:100%;font-size:13px}.section-label{font-size:10px;letter-spacing:1.5px;color:#8d9187;margin:0 11px 14px}nav{flex:1;min-height:0;overflow:auto}.project-group{margin-bottom:23px}.project-group h2{font-size:12px;font-weight:500;margin:0 10px 7px;color:#6b7165;display:flex;gap:9px}.session-button{width:100%;border-radius:7px;text-align:left;padding:10px 11px;display:flex;gap:9px;align-items:center;font-size:13px}.session-button:hover{background:#ededE8}.session-button.selected{background:#e8ece5}.session-button .session-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.session-dot{width:6px;height:6px;flex-shrink:0;border:1px solid #b7bcb2;border-radius:50%}.session-button.running .session-dot{background:#58826b;border-color:#58826b;animation:pulse 1.5s infinite}.session-button.waiting .session-dot{background:#b48738;border-color:#b48738}.provider-badge{font-size:9px;color:#8b9185}.no-sessions{font-size:12px;color:#91968b;padding:4px 10px}.sidebar-bottom{display:flex;gap:10px;align-items:center;border-top:1px solid #e4e6df;padding:18px 3px;font-size:12px}.sidebar-bottom small{display:block;color:#8e9487;font-size:11px;margin-top:4px}.avatar{background:#e5e8dd;width:31px;height:31px;border-radius:50%;display:grid;place-items:center;color:#646d56}.sidebar-bottom button{margin-left:auto}main{min-width:0;flex:1;display:flex;flex-direction:column;height:100%;position:relative}header{height:76px;min-height:64px;padding:0 33px;display:flex;align-items:center;border-bottom:1px solid #f1f1ed;gap:14px;flex-shrink:0}.breadcrumb{display:flex;align-items:center;gap:13px;font-size:13px;min-width:0}.breadcrumb #project-label{color:#969b90;white-space:nowrap}.divider{color:#c9cdc2}#chat-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:5px 0;max-width:380px;text-align:left}#connection{margin-left:auto;white-space:nowrap;font-size:11px;color:#8a9280;display:flex;align-items:center;gap:6px}#connection i{width:6px;height:6px;background:#6c9277;border-radius:50%}#connection.offline{color:#ad8247}#connection.offline i{background:#ad8247}#menu{display:none}.quiet{font-size:12px;color:#47735d}.banner{text-align:center;font-size:11px;padding:8px;background:#f8f2e5;color:#8d7445}.messages{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:30px max(28px,calc((100% - 790px)/2));scroll-behavior:smooth}.welcome{padding-top:clamp(40px,14vh,150px);max-width:710px;margin:auto}.eyebrow{font-size:10px;letter-spacing:2px;color:#7f9773;margin-bottom:18px}.welcome h1{font-size:42px;letter-spacing:-1.8px;font-weight:450;margin:0 0 17px}.welcome p{font-size:15px;line-height:1.8;color:#8c9285;margin-bottom:33px}.suggestions{display:flex;gap:12px}.suggestions button{flex:1;border:1px solid #e8ebe3;border-radius:10px;padding:17px 14px;display:flex;gap:10px;align-items:center;color:#7c9373;text-align:left}.suggestions button>span{font-size:12px;color:#4b5546;flex:1}.suggestions small{display:block;margin-top:7px;color:#a0a695;font-size:10px}.suggestions button:hover{background:#f6f8f3}.message{margin:0 0 27px;line-height:1.7;overflow-wrap:anywhere}.message .byline{font-size:11px;font-weight:600;color:#7b8f72;display:flex;align-items:center;gap:9px;margin-bottom:8px}.message .byline time{font-size:10px;font-weight:400;color:#a1a698}.message.user{background:#f4f5f1;padding:15px 18px;border-radius:12px;margin-left:50px}.message.user .byline{color:#919786}.message-body{white-space:pre-wrap;font-size:14px}.message-body code{font-family:ui-monospace,SFMono-Regular,monospace;background:#f4f5f2;border-radius:4px;padding:2px 5px}.message-body pre{white-space:pre-wrap;background:#f4f5f2;border:1px solid #e5e8df;border-radius:9px;padding:14px;overflow:auto;font-size:12px}.message-body pre code{padding:0}.file-note{font-size:11px;color:#8b9280;margin-top:8px}.composer-area{width:100%;max-width:870px;margin:0 auto;padding:0 28px 19px;flex-shrink:0;max-height:65%;overflow-y:auto}.composer{border:1px solid #ddE2d7;border-radius:16px;box-shadow:0 3px 14px #1f3b2005;background:#fff;padding:15px 13px 10px}.composer:focus-within{border-color:#9aac91;box-shadow:0 0 0 3px #90a77c0c}textarea{width:100%;border:0;resize:none;background:transparent;padding:1px 6px 17px;font-size:14px;line-height:1.6;max-height:160px;min-height:53px}textarea::placeholder{color:#a4aa9c}.composer-toolbar{display:flex;align-items:center;gap:7px}.composer-left{display:flex;align-items:center;gap:4px;min-width:0;flex:1}.icon-button{border-radius:7px;min-width:32px;height:32px;font-size:20px;color:#818e75;display:grid;place-items:center}.icon-button:hover{background:#f1f4ed}.toolbar-divider{height:14px;width:1px;background:#e7ebe1;margin:0 6px}select{background:#f7f9f4;border:0;border-radius:6px;padding:7px 5px;color:#56684a;font-size:12px;max-width:160px}select:disabled{appearance:none;background:transparent;color:#87927d;cursor:default}.send{background:#2d533f;color:white;border-radius:9px;width:34px;height:34px;font-size:22px}.send:hover{background:#1f422f}.stop{font-size:11px;color:#976449;background:#f7f0e9;padding:9px;border-radius:7px}.composer-foot{display:flex;justify-content:space-between;margin:11px 5px 0;color:#a9b09f;font-size:10px}.activity{font-size:11px;color:#8a967d;margin:9px 5px;min-height:16px}.attachments{display:flex;gap:7px;flex-wrap:wrap}.attachment{font-size:11px;padding:5px 8px;border-radius:6px;background:#eef2e7;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:10px}.attachment button{padding-left:8px}.approval{border:1px solid #e3d7b4;background:#fffbef;border-radius:10px;padding:15px;margin-bottom:12px}.approval h3{font-size:13px;margin:0 0 9px}.approval pre{max-height:160px;overflow:auto;white-space:pre-wrap;font-size:11px}.approval button{padding:8px 14px;border-radius:6px;margin-right:6px;border:1px solid #d4c79f}.approval button.accept{background:#315640;color:#fff;border-color:#315640}.approval input{display:block;padding:9px;border:1px solid #d4c79f;border-radius:5px;width:100%;margin:6px 0 12px}.approval label{display:block;margin:8px 0;font-size:12px}#error{color:#a33d34;background:#fff2ef;padding:10px 13px;border-radius:8px;margin-bottom:10px;font-size:12px}.outbox{font-size:12px;padding:10px;background:#fff9e9;margin-bottom:10px;display:flex;justify-content:space-between;gap:10px}.outbox button{color:#88681e;text-decoration:underline}.login{height:100dvh;display:grid;place-items:center;background:#f7f7f5;padding:24px}.login form{background:#fff;border:1px solid #e2e6db;border-radius:20px;padding:38px;max-width:430px;width:100%}.login h1{font-size:25px;letter-spacing:-.7px}.login p{color:#8a947f;line-height:1.7}.login label{display:block;font-size:12px;margin-top:27px}.login input{width:100%;padding:13px;border:1px solid #dce2d5;border-radius:8px;margin:8px 0 15px}.primary{background:#2d533f;color:white;border-radius:8px;padding:12px;width:100%}#login-error{color:#a33d34}.recording{background:#fff0e9!important;color:#b4503d!important;animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.5}}@media(max-width:1000px){aside{width:235px;padding-left:12px;padding-right:12px}header{padding:0 22px}.suggestions{flex-direction:column}.suggestions button{max-width:400px}.welcome{padding-top:8vh}#chat-title{max-width:240px}}@media(max-width:700px){aside{position:fixed;inset:0 auto 0 0;z-index:5;width:285px;transform:translateX(-100%);transition:transform .2s}.shell.menu-open aside{transform:translateX(0)}#backdrop{position:fixed;inset:0;background:#0005;z-index:4;width:100%;height:100%;border-radius:0}#menu{display:grid}header{height:62px;min-height:62px;padding:0 13px;gap:8px}.breadcrumb{gap:8px;flex:1}#project-label,.divider{display:none}#chat-title{max-width:175px}#connection{font-size:0;gap:0}#connection i{width:7px;height:7px}#install{font-size:10px}.messages{padding:25px 21px}.welcome{padding-top:8vh}.welcome h1{font-size:35px}.welcome p{font-size:14px}.eyebrow{font-size:9px}.suggestions{gap:10px}.suggestions button{padding:15px 12px}.composer-area{padding:0 12px max(13px,env(safe-area-inset-bottom))}.composer{border-radius:14px;padding:13px 9px 9px}.composer-foot{font-size:9px}.composer-foot #hint{max-width:240px}textarea{font-size:16px;min-height:49px}select{font-size:11px;max-width:115px;padding:7px 2px}.toolbar-divider{margin:0 2px}.message.user{margin-left:15px}.banner{font-size:10px}.brand{margin-top:6px}.stop{font-size:10px;padding:7px}.composer-left{gap:0}.icon-button{min-width:29px}.outbox{flex-direction:column}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
