:root{color:#252722;font-synthesis:none;background:#f7f6f3;font-family:SF Pro Display,Helvetica Neue,Apple SD Gothic Neo,Malgun Gothic,sans-serif;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{height:100vh}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:2px;outline:2px solid #7b8d78}input,textarea{color:#252722;background:#fff;border:1px solid #dddeda;border-radius:6px;min-width:0;padding:10px 12px}input::placeholder,textarea::placeholder{color:#a2a49f}textarea{resize:vertical}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em;line-height:1.2}h1{font-size:clamp(28px,3vw,38px)}h2{font-size:29px}h3{font-size:18px}small{color:#898c86;font-size:12px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:#8b8f88;letter-spacing:.13em;font-size:10px;font-weight:700;display:block}.primary,.secondary{white-space:nowrap;border:1px solid #0000;border-radius:5px;min-height:37px;padding:9px 15px;font-weight:650;transition:background .15s,transform .15s}.primary{color:#fff;background:#2b302b}.primary:hover:not(:disabled){background:#414941}.secondary{color:#393f39;background:#fff;border-color:#dadcd7}.secondary:hover:not(:disabled){background:#f3f4f1}.primary:active:not(:disabled),.secondary:active:not(:disabled){transform:scale(.98)}.text-button{color:#535e53;text-align:left;text-underline-offset:3px;background:0 0;border:0;padding:8px 0;text-decoration:underline}.gateway{place-items:center;min-height:100vh;padding:24px;display:grid}.gateway-card{background:#fff;border:1px solid #eaeaea;border-radius:10px;width:min(100%,420px);padding:36px}.gateway-card h1{margin:12px 0}.gateway-card p{color:#737970}.gateway-card label{margin:28px 0 8px;font-size:13px;font-weight:650;display:block}.gateway-card input,.gateway-card .primary{width:100%}.gateway-card .primary{margin-top:12px}.gateway-card .notice{margin:18px 0 0}.app-shell{grid-template-columns:214px minmax(0,1fr);height:100vh;min-height:500px;display:grid}.sidebar{background:#fbfbfa;border-right:1px solid #e6e7e2;flex-direction:column;min-width:0;padding:26px 13px 19px;display:flex}.brand{align-items:center;gap:10px;padding:0 10px 32px;display:flex}.brand-mark{color:#fff;background:#303630;border-radius:7px;place-items:center;width:32px;height:32px;font-family:Georgia,serif;font-size:19px;display:grid}.brand strong,.brand small{display:block}.brand strong{letter-spacing:-.02em;font-size:14px}.brand small{margin-top:1px}.main-nav{gap:3px;display:grid}.main-nav button{text-align:left;color:#626960;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;padding:10px 12px;font-size:13px;font-weight:600;display:flex}.main-nav button:hover{background:#f0f1ed}.main-nav button.active{color:#263126;background:#e9ece6}.nav-count{color:#426042;background:#dbe7d7;border-radius:9px;place-items:center;min-width:18px;height:18px;font-size:11px;display:grid}.sidebar-bottom{overflow-wrap:anywhere;border-top:1px solid #eaeaea;gap:3px;margin-top:auto;padding:17px 11px 0;display:grid}.sidebar-bottom strong{font-size:13px}.sidebar-bottom>span:not(.eyebrow){color:#858a82;font-size:11px}.main{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.topbar{color:#747a71;background:#fbfbfa;border-bottom:1px solid #e6e7e2;justify-content:space-between;align-items:center;gap:24px;min-height:54px;padding:0 30px;font-size:11px;display:flex}.location-line{align-items:center;gap:9px;min-width:0;display:flex}.location-line span:last-child,.root-line{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.status-dot{background:#729673;border-radius:50%;flex:none;width:7px;height:7px}.separator{color:#c5c9c2}.root-line{max-width:50%;font-family:SF Mono,JetBrains Mono,monospace;font-size:10px}.notice-bar{border-bottom:1px solid #eaeaea;justify-content:space-between;align-items:center;gap:16px;padding:10px 30px;font-size:12px;display:flex}.notice-bar.error,.notice.error{color:#8f3835;background:#fdebec}.notice-bar.success,.notice.success{color:#346538;background:#edf3ec}.notice-bar.info,.notice.info{color:#806424;background:#fbf3db}.notice-bar button{color:inherit;background:0 0;border:0;text-decoration:underline}.view{flex:1;min-height:0;padding:32px clamp(22px,4vw,56px) 42px;overflow:auto}.section-title{justify-content:space-between;align-items:end;gap:20px;margin:0 0 26px;display:flex}.section-title h2{margin:6px 0 0}.empty{text-align:center;color:#8d928a;place-items:center;min-height:120px;padding:24px;font-size:13px;display:grid}.workspace-setup{width:min(600px,100%);margin:auto;padding:35px}.workspace-setup h1{margin:9px 0 14px}.workspace-setup p{color:#737970;line-height:1.7}.workspace-setup form{margin-top:25px}.workspace-setup label,.terminal-form label,.address-form label,.setting-card label,.element-actions label{color:#626960;margin-bottom:8px;font-size:12px;font-weight:700;display:block}.workspace-setup small{margin-top:8px;display:block}.host-root-help{background:#fff;border:1px solid #eaeaea;border-radius:8px;margin-top:24px;padding:20px;font-size:13px}.host-root-help p{margin:8px 0 16px}.host-root-help code{background:#f1f2ee;border-radius:3px;padding:2px 4px;font-family:SF Mono,JetBrains Mono,monospace;font-size:11px}.inline-form{gap:8px;display:flex}.inline-form input{flex:1}.chat-view{flex-direction:column;display:flex}.chat-layout{background:#fff;border:1px solid #eaeaea;border-radius:9px;flex:1;grid-template-columns:220px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.conversation-list{background:#fbfbfa;border-right:1px solid #eaeaea;overflow:auto}.conversation-list>button{text-align:left;background:0 0;border:0;border-bottom:1px solid #eaeaea;gap:5px;width:100%;padding:15px;display:grid}.conversation-list>button:hover,.conversation-list>button.selected{background:#f0f2ed}.conversation-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.conversation-panel{flex-direction:column;min-width:0;min-height:0;display:flex}.conversation-heading{border-bottom:1px solid #eaeaea;justify-content:space-between;gap:16px;padding:14px 20px;font-size:13px;display:flex}.conversation-heading span{color:#889087;font-size:11px}.messages{flex:1;min-height:120px;padding:24px clamp(20px,4vw,55px);overflow:auto}.message{white-space:pre-wrap;overflow-wrap:anywhere;max-width:760px;margin:0 0 24px;font-size:13px;line-height:1.7}.message.user{background:#f1f2ee;border:1px solid #eaeaea;border-radius:8px;max-width:650px;margin-left:auto;padding:13px 16px}.message.tool{color:#5e685f;border-left:2px solid #d6dfd3;padding-left:12px}.message-role{color:#889087;letter-spacing:.04em;margin-bottom:5px;font-size:10px;font-weight:750;display:block}.approval-card{background:#fbf8ef;border:1px solid #e2d7b6;border-radius:7px;margin:0 20px 16px;padding:16px}.approval-card strong{margin:5px 0;font-size:13px;display:block}.approval-card pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;border:1px solid #ece7db;max-height:120px;margin:8px 0;padding:10px;font-size:11px;overflow:auto}.approval-card p{color:#6f7169;font-size:12px}.action-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.composer{border-top:1px solid #eaeaea;padding:13px 20px 15px}.composer textarea{border:0;outline:none;width:100%;min-height:75px;padding:7px 0}.composer-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.files-view{flex-direction:column;display:flex}.create-file{background:#fff;border:1px solid #eaeaea;border-radius:9px;gap:14px;margin-bottom:16px;padding:18px 20px;display:grid}.create-file-heading{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.create-file-heading strong{font-size:13px}.create-file-fields{grid-template-columns:minmax(200px,1fr) minmax(260px,1.4fr);gap:16px;display:grid}.create-file-fields label{color:#626960;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.create-file-fields input,.create-file-fields textarea{width:100%}.create-file-fields textarea{min-height:82px;font-family:SF Mono,JetBrains Mono,monospace;font-size:12px}.field-error,.field-hint{margin-top:5px;font-size:11px;display:block}.field-error{color:#9f2f2d}.field-hint{color:#787e76;line-height:1.5}.files-layout{background:#fff;border:1px solid #eaeaea;border-radius:9px;flex:1;grid-template-columns:minmax(220px,30%) minmax(0,1fr);height:auto;min-height:380px;display:grid;overflow:hidden}.file-browser{border-right:1px solid #eaeaea;flex-direction:column;min-height:0;display:flex}.file-path{color:#7b8179;border-bottom:1px solid #eaeaea;align-items:center;gap:6px;min-height:48px;padding:0 14px;font-size:11px;display:flex;overflow:hidden}.file-path button{color:#435644;background:0 0;border:0;flex:none;padding:0;font-size:11px;font-weight:700}.file-path span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.file-list{overflow:auto}.file-row{text-align:left;background:#fff;border:0;border-bottom:1px solid #f0f0ed;align-items:center;gap:8px;width:100%;min-height:41px;padding:8px 14px;font-size:12px;display:flex}.file-row:hover,.file-row.selected{background:#f2f4f0}.file-row>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.file-symbol{color:#788d76;width:17px;font-size:15px}.file-editor{flex-direction:column;min-width:0;min-height:0;display:flex}.editor-header{border-bottom:1px solid #eaeaea;justify-content:space-between;align-items:center;gap:12px;padding:10px 15px;display:flex}.editor-header>div{gap:2px;min-width:0;display:grid}.editor-header strong{text-overflow:ellipsis;white-space:nowrap;font-family:SF Mono,JetBrains Mono,monospace;font-size:12px;overflow:hidden}.editor-header span{color:#8b8f88;font-size:10px}.code-editor{resize:none;tab-size:2;border:0;border-radius:0;outline:none;flex:1;padding:20px;font-family:SF Mono,JetBrains Mono,monospace;font-size:12px;line-height:1.7}.conflict{color:#913d39;background:#fdebec;border:1px solid #e8c7c4;border-radius:6px;margin:12px 15px;padding:13px 15px;font-size:12px}.conflict p{margin:6px 0 10px}.terminal-form,.address-form{background:#fff;border:1px solid #eaeaea;border-radius:9px;margin-bottom:18px;padding:20px}.job-list{gap:12px;display:grid}.job{background:#fff;border:1px solid #eaeaea;border-radius:8px;overflow:hidden}.job-header{justify-content:space-between;align-items:center;gap:15px;padding:14px 18px;display:flex}.job-header>div{align-items:center;gap:12px;min-width:0;display:flex}.job-header strong{overflow-wrap:anywhere;font-family:SF Mono,JetBrains Mono,monospace;font-size:12px}.job-status{color:#727a70;flex:none;font-size:10px}.job-status.running{color:#486e46}.job-status.failed{color:#a34b48}.job pre{color:#e7eae5;white-space:pre-wrap;overflow-wrap:anywhere;background:#292d2b;max-height:340px;margin:0;padding:18px;font-family:SF Mono,JetBrains Mono,monospace;font-size:11px;line-height:1.6;overflow:auto}.job>small{padding:8px 18px;display:block}.browser-layout{grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:16px;display:grid}.browser-preview,.elements-panel,.setting-card{background:#fff;border:1px solid #eaeaea;border-radius:9px;min-width:0}.browser-meta{border-bottom:1px solid #eaeaea;gap:4px;padding:15px 18px;display:grid}.browser-meta strong{font-size:13px}.browser-meta span{text-overflow:ellipsis;white-space:nowrap;color:#899087;font-size:11px;overflow:hidden}.browser-preview img{object-fit:contain;background:#f2f2ef;width:100%;max-height:440px;display:block}.browser-preview details{border-top:1px solid #eaeaea;padding:14px 18px;font-size:12px}.browser-preview summary{cursor:pointer;font-weight:650}.browser-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:230px;font-size:11px;overflow:auto}.elements-panel h3{border-bottom:1px solid #eaeaea;justify-content:space-between;margin:0;padding:15px 18px;font-size:14px;display:flex}.elements-panel h3 span{color:#a1a5a0}.element-list{max-height:370px;overflow:auto}.element-list button{text-align:left;background:#fff;border:0;border-bottom:1px solid #f0f0ed;gap:3px;width:100%;padding:10px 18px;display:grid}.element-list button:hover,.element-list button.selected{background:#f2f4f0}.element-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.element-actions{border-top:1px solid #eaeaea;gap:9px;padding:16px 18px;display:grid}.element-actions>strong{font-size:12px}.element-actions form{gap:8px;display:grid}.element-actions label{margin:8px 0 0}.settings-grid{grid-template-columns:minmax(0,1.3fr) minmax(250px,1fr);gap:16px;max-width:1050px;display:grid}.setting-card{padding:24px}.setting-card h3{margin-bottom:7px}.setting-card p{color:#7b8178;font-size:12px;line-height:1.6}.setting-card form{gap:8px;margin-top:24px;display:grid}.setting-card form label{margin:12px 0 0}.setting-card .action-row{margin-top:14px}.setting-card dl{grid-template-columns:100px minmax(0,1fr);gap:12px;margin:22px 0;font-size:12px;display:grid}.setting-card dt{color:#8b9189}.setting-card dd{overflow-wrap:anywhere;margin:0}.test-result{margin:8px 0 0}@media (width<=900px){.create-file-fields{grid-template-columns:1fr}.app-shell{grid-template-columns:160px minmax(0,1fr)}.sidebar{padding-left:8px;padding-right:8px}.view{padding:25px 20px}.browser-layout,.settings-grid{grid-template-columns:1fr}.chat-layout{grid-template-columns:170px minmax(0,1fr)}}@media (width<=650px){body{height:auto}.app-shell{flex-direction:column;height:auto;min-height:100vh;display:flex}.sidebar{border-bottom:1px solid #eaeaea;border-right:0;padding:10px}.brand{padding:4px 5px 10px}.main-nav{display:flex;overflow:auto}.main-nav button{white-space:nowrap}.sidebar-bottom{display:none}.main{min-height:calc(100vh - 120px)}.topbar{padding:0 15px}.root-line{display:none}.view{min-height:calc(100vh - 150px);padding:20px 14px}.chat-layout{grid-template-columns:1fr;min-height:620px}.conversation-list{border-bottom:1px solid #eaeaea;border-right:0;max-height:80px;display:flex;overflow:auto}.conversation-list>button{width:150px;min-width:150px}.files-layout{grid-template-columns:1fr;height:auto;min-height:620px}.file-browser{border-bottom:1px solid #eaeaea;border-right:0;max-height:230px}.file-editor{min-height:400px}.inline-form{flex-wrap:wrap}.inline-form input{flex-basis:100%}}.location-line>span:nth-child(2),.location-line .separator,.location-line .status-dot{white-space:nowrap;flex-shrink:0}.provider-settings fieldset{border:0;min-width:0;margin:0;padding:0}.provider-picker,.provider-actions{flex-wrap:wrap;gap:8px;margin:10px 0 18px;display:flex}.provider-picker select{flex:1;min-width:140px;max-width:100%}.provider-checkbox{align-items:center;gap:8px;display:flex!important}.provider-checkbox input{margin:0;width:auto!important}.provider-delete{border:1px solid #d9c8c3;border-radius:8px;padding:12px}.provider-delete button{margin-right:8px}.conversation-heading{flex-wrap:wrap;gap:12px}.conversation-provider{flex-direction:column;gap:4px;min-width:0;max-width:100%;display:flex}.conversation-provider label{color:#626960;font-size:11px}.conversation-provider select{min-width:180px;max-width:100%;font-size:12px}.conversation-provider small{color:#787e76;max-width:340px;font-size:10px;line-height:1.4}.provider-settings select,.conversation-provider select{color:#283127;background:#fff;border:1px solid #d8dcd5;border-radius:6px;padding:9px 10px}
