:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,sans-serif;color:#222c29;background:#f5f7f6;font-size:14px;line-height:1.5;font-synthesis:none;font-weight:400;letter-spacing:0;color-scheme:light}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #dce2df;background:#fff;color:inherit;border-radius:6px;padding:9px 14px;cursor:pointer;min-height:38px}button:hover{background:#f1f5f3}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible{outline:3px solid #72bba7;outline-offset:2px}input,textarea,select{width:100%;border:1px solid #d9e0dc;background:#fff;border-radius:6px;padding:10px 12px;outline:none;color:#202d27}input:focus,textarea:focus,select:focus{border-color:#278569;box-shadow:0 0 0 3px #e1f1eb}textarea{resize:vertical}label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:500;margin-bottom:18px}h1,h2,h3,p{margin-top:0}h1{font-size:26px;font-weight:650;line-height:1.3;margin-bottom:8px}h2{font-size:18px;font-weight:600}h3{font-size:14px}a{color:#16745b}.primary{background:#16745b;color:#fff;border-color:#16745b}.primary:hover{background:#115c48}.wide{width:100%}.icon-button{width:36px;height:36px;min-height:36px;padding:0;border:0;background:transparent;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:#68766f;cursor:pointer;margin:0}.icon-button:hover{background:#eaf0ed}.text-button{border:0;background:none;color:#16745b}.muted{color:#7b8680}.error{color:#ba453e;overflow-wrap:anywhere}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app{display:flex;height:100dvh;overflow:hidden}.sidebar{width:244px;flex-shrink:0;background:#edf1ee;border-right:1px solid #dfe5e1;display:flex;flex-direction:column;padding:25px 14px 14px}.brand{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:650;white-space:nowrap}.brand img{width:32px;height:32px;border-radius:7px}.brand-tag{font-size:11px;font-weight:500;color:#708177;padding-left:2px}.sidebar>.brand{padding:0 12px 32px}.sidebar-heading{display:flex;align-items:center;justify-content:space-between;padding:0 12px;color:#6c7c73;font-size:12px}.project-list{overflow:auto;flex:1}.project-nav{width:100%;justify-content:flex-start;border:0;background:transparent;margin:4px 0;padding:12px;gap:10px;color:#5d6e64}.project-nav span{flex:1;text-align:left;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.project-nav.active{background:#fff;color:#17654f;box-shadow:0 1px 3px #00000006}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#a8b1ac;flex-shrink:0}.dot.running{background:#249d75}.sidebar-bottom{display:flex;align-items:center;gap:10px;border-top:1px solid #dce3de;padding:18px 6px 0}.avatar{width:32px;height:32px;background:#d6e4dc;display:grid;place-items:center;border-radius:50%;color:#3d6652}.account{flex:1;min-width:0}.account strong,.account small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account strong{font-size:12px}.account small{font-size:10px;color:#77857c}.home{flex:1;min-width:0;padding:48px 44px;overflow:auto}.home-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:30px}.eyebrow{font-size:12px;color:#7a887f;margin-bottom:9px}.notice{display:flex;align-items:center;gap:10px;border:1px solid #eadfb7;background:#fffbee;color:#8a711e;padding:12px 16px;border-radius:6px;margin-bottom:24px;flex-wrap:wrap}.notice .muted{font-size:12px;color:#968548}.list-label{display:flex;justify-content:space-between;color:#809086;font-size:12px;padding-bottom:13px;border-bottom:1px solid #dfe6e1;margin-bottom:20px}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.project-card{display:block;text-align:left;padding:20px;background:#fff;min-height:192px;min-width:0;border-color:#e0e6e2}.project-card:hover{border-color:#96b7a5;background:#fff;box-shadow:0 3px 12px #173c2410}.project-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.project-icon{width:42px;height:42px;background:#e8f1ec;color:#347858;border-radius:8px;display:grid;place-items:center}.badge{font-size:11px;color:#77867c;background:#f1f4f2;padding:3px 7px;border-radius:4px;white-space:nowrap}.badge.running{color:#1d7e5e;background:#e7f4ed}.project-card h2{font-size:16px;margin-bottom:7px;overflow-wrap:anywhere}.project-card p{font-size:12px;color:#89948e;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:36px}.project-card-bottom{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#97a29b;border-top:1px solid #eff2f0;padding-top:12px}.empty{min-height:320px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;color:#8b9991}.empty h2,.empty p{margin:0;color:#63766a}.workspace{flex:1;display:flex;flex-direction:column;min-width:0;background:#fff;position:relative}.workspace-header{height:76px;flex-shrink:0;border-bottom:1px solid #edf0ee;display:flex;align-items:center;gap:12px;padding:0 26px}.project-title{flex:1;min-width:0}.project-title h1{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0 0 3px}.project-title>span{font-size:11px;color:#87988b;display:flex;align-items:center;gap:5px}.connection{font-size:11px;color:#8b9b91}.connection.offline{color:#ba7138}.tabs{display:flex;gap:24px;padding:0 32px;min-height:49px;flex-shrink:0;border-bottom:1px solid #e8eeea}.tabs button{border:0;border-radius:0;background:none;padding:12px 0;color:#809086;font-size:13px;position:relative}.tabs button.active{color:#16745b}.tabs button.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:#16745b}.messages{flex:1;overflow:auto;padding:28px max(28px,calc((100% - 800px)/2));scroll-behavior:smooth;min-height:0}.chat-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:240px;color:#8a988e}.chat-empty .project-icon{width:56px;height:56px;margin-bottom:20px}.chat-empty h2{color:#4d6456;font-size:18px}.chat-empty p{font-size:13px;text-align:center;max-width:420px;overflow-wrap:anywhere}.message{margin-bottom:22px;font-size:14px;overflow-wrap:anywhere}.message.user{background:#eff4f1;padding:13px 17px;border-radius:8px;margin-left:40px}.message-author{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;margin-bottom:10px;color:#556d5d}.message-author img{width:20px;height:20px;border-radius:4px}.message.error{background:#fff3f0;padding:12px;border-left:3px solid #d47b63}.markdown>:last-child{margin-bottom:0}.markdown pre,pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.6}.markdown pre{background:#f4f6f4;padding:14px;border:1px solid #e5ebe6;border-radius:6px;overflow:auto}.markdown code{font-size:12px}.markdown table{display:block;max-width:100%;overflow:auto;border-collapse:collapse}.markdown img{max-width:100%}.markdown h1{font-size:21px}.markdown h2{font-size:18px}.markdown h3{font-size:16px}.command{border:1px solid #e4ebe6;border-radius:6px;margin-bottom:12px;font-size:12px;color:#698071}.command summary{display:flex;align-items:center;gap:8px;padding:10px;cursor:pointer;list-style:none}.command summary span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.command pre{padding:12px;margin:0;border-top:1px solid #e4ebe6;max-height:280px;overflow:auto}.composer-wrap{padding:10px 28px max(22px,env(safe-area-inset-bottom));flex-shrink:0}.composer{border:1px solid #dce6df;border-radius:8px;max-width:800px;margin:auto;background:#fff;box-shadow:0 2px 8px #23492e05}.composer textarea{border:0;resize:none;box-shadow:none;padding:15px 16px 4px;max-height:180px;min-height:76px;background:none;font-size:14px}.composer-tools{display:flex;align-items:center;gap:10px;padding:6px 9px}.model-label{font-size:11px;color:#859289;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mode-label{font-size:10px;color:#859289;white-space:nowrap}.send-button{background:#16745b;color:#fff;border:0;width:34px;height:34px;min-height:34px;padding:0}.send-button:hover{background:#115b47}.running-indicator{display:flex;align-items:center;gap:7px;color:#58806a;font-size:12px;margin:20px 0}.running-indicator button{padding:4px;min-height:24px}.tool-panel{flex:1;overflow:auto;padding:28px 32px}.tool-panel>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.tool-panel h2{margin:0;font-size:17px}.breadcrumb{display:flex;align-items:center;border-bottom:1px solid #e6ece8;padding-bottom:14px;color:#819389}.breadcrumb button{border:0;padding:4px 0;background:none}.breadcrumb .icon-button{margin-left:auto}.file-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid #edf1ee;min-height:52px;color:#6b7f72}.file-row>button{flex:1;justify-content:flex-start;text-align:left;min-width:0;border:0;padding:4px;background:none;overflow-wrap:anywhere}.file-row>button:disabled{opacity:1;color:#3b5043}.file-row>span{font-size:11px;white-space:nowrap}.diff-status{background:#f3f7f4;padding:16px}.diff{color:#356d4e}.preview-panel{max-width:900px;width:100%;align-self:center}.preview-panel form{margin-top:28px}.preview-panel input{font-family:monospace;font-size:12px}.field-meta{display:flex;justify-content:space-between;color:#849289;font-size:12px;margin:16px 0;gap:12px}.button-row{display:flex;gap:10px;flex-wrap:wrap}.workspace-controls{margin-top:40px;border-top:1px solid #e6ece8;padding-top:24px}.thread-menu{position:absolute;top:66px;right:18px;width:min(340px,calc(100% - 36px));background:#fff;border:1px solid #dce5df;border-radius:8px;box-shadow:0 10px 35px #173e2420;z-index:5;padding:12px;max-height:70vh;overflow:auto}.thread-menu header{display:flex;align-items:center;justify-content:space-between;padding-bottom:10px}.thread-menu header button{font-size:12px;border:0}.thread-menu>button{width:100%;border:0;justify-content:flex-start;text-align:left;background:none}.thread-menu>button span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thread-menu>button.selected{background:#eaf3ed;color:#217650}.request-panel{border:1px solid #e4d5a0;background:#fffcf1;padding:18px;border-radius:6px;margin:16px 0}.request-panel h3{color:#8a7332}.request-panel select{margin:5px 0}.inline-error{background:#fff4f1;color:#b05343;display:flex;align-items:center;gap:12px;padding:8px 22px;font-size:12px}.inline-error span{flex:1;overflow-wrap:anywhere}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:10;background:#fff5f1;border:1px solid #edc1b7;color:#a64b3e;padding:10px 16px;display:flex;align-items:center;border-radius:6px;max-width:90vw}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#152d2260;display:grid;place-items:center;z-index:20;padding:20px}.modal{background:#fff;width:min(440px,100%);border-radius:8px;padding:25px;max-height:90dvh;overflow:auto}.modal header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.modal h2{margin:0}.login-page{min-height:100dvh;display:flex;justify-content:center;align-items:center;padding:32px 24px;background:#f5f7f6}.login-content{width:340px;max-width:100%}.login-content .brand{margin-bottom:44px}.login-content h1{font-size:24px;margin-bottom:30px}.login-content>.text-button{width:100%;margin-top:15px}.loading-page{display:flex;align-items:center;justify-content:center;gap:12px;min-height:100dvh;color:#68806e}@media(max-width:760px){.sidebar{display:none}.home{padding:28px 20px}.home-header{margin-bottom:24px}.home-header h1{font-size:24px}.home-header .primary{font-size:12px;padding:9px 11px}.project-grid{grid-template-columns:1fr}.project-card{min-height:170px}.workspace-header{height:64px;padding:0 12px;gap:8px}.tabs{padding:0 24px;justify-content:space-between;gap:12px}.messages{padding:22px 18px}.composer-wrap{padding:8px 12px max(12px,env(safe-area-inset-bottom))}.tool-panel{padding:24px 18px}.message.user{margin-left:20px}.connection{font-size:10px}.mode-label{display:none}.notice{font-size:12px;padding:12px}.notice .muted{width:100%;padding-left:27px}.login-content .brand{margin-bottom:35px}.inline-error{padding:8px 14px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}}:root .mobile-account{display:none}@media(max-width:760px){:root .mobile-account{display:inline-flex}}
