:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#202523;background:#fff;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid #e1e5e2;border-radius:8px;background:white;padding:9px 12px;color:inherit}button:hover{background:#edf1ee}input,select{border:1px solid #dfe4e0;border-radius:7px;padding:9px;background:#fff;color:inherit}button:disabled{opacity:.45;cursor:wait}a{color:inherit}.hidden{display:none!important}#app{display:flex;height:100dvh}aside{width:280px;flex-shrink:0;background:#f5f6f4;border-right:1px solid #e6e8e3;display:flex;flex-direction:column;padding:25px 16px 12px}.brand{display:flex;align-items:center;gap:12px;font-size:25px;text-decoration:none;margin:0 10px 30px}.brand span{font-size:18px;font-weight:650;letter-spacing:-.6px}.brand b{font-size:11px;border:1px solid #d3d9d3;padding:3px 5px;border-radius:5px;margin-left:5px;font-weight:500}.new-chat{text-align:left;padding:12px;background:#fff;border-color:#dce1da;box-shadow:0 2px 3px #17201904;font-weight:550}.search{margin:17px 0 12px;background:transparent;font-size:12px;width:100%}.tabs{display:flex;border-bottom:1px solid #dfe4de;margin-bottom:10px;gap:14px}.tabs button{background:none;border:0;border-radius:0;padding:10px 3px;font-size:12px;color:#737a74}.tabs .selected{border-bottom:2px solid #264c36;color:#253d2d}.filters{display:flex;gap:5px;margin-bottom:13px}.filters select{min-width:0;width:50%;font-size:10px;background:transparent;padding:6px 3px;border-color:#e2e5df}#chat-list{overflow:auto;flex:1}.chat-row{display:block;text-align:left;width:100%;border:0;background:transparent;padding:12px 10px;margin:2px 0}.chat-row.active{background:#e6ebe4}.row-title{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;font-weight:550}.row-meta{display:flex;gap:5px;margin-top:7px;color:#7b837c;font-size:10px}.dot{width:6px;height:6px;border-radius:50%;background:#9da69d;display:inline-block;margin-top:3px}.dot.running{background:#2f8658}footer{display:flex;align-items:center;gap:7px;color:#747d74;font-size:11px;padding-top:15px;border-top:1px solid #e3e7e1}footer button{margin-left:auto;background:transparent;border:0;font-size:17px}.online-dot{height:6px;width:6px;background:#31875b;border-radius:50%}main{flex:1;min-width:0;display:flex;flex-direction:column}header{display:flex;align-items:center;gap:15px;padding:23px 32px;border-bottom:1px solid #edf0ed;min-height:87px}header h1{font-size:15px;margin:0 0 6px;font-weight:600}#chat-meta{color:#858c86;font-size:11px}#chat-actions{display:flex;margin-left:auto;gap:7px}#chat-actions button{font-size:11px;border:0;background:#f5f6f4}.icon{display:none}#conversation{flex:1;overflow:auto;padding:20px 35px}#welcome{max-width:620px;margin:9vh auto 0;text-align:center}.welcome-mark{font-size:42px;color:#345941;margin-bottom:24px}.eyebrow{font-size:10px;letter-spacing:2px;color:#8c938c}h2{font-size:30px;font-weight:550;letter-spacing:-1px;margin:13px 0}#welcome p{font-size:14px;color:#858b85;line-height:1.8}.welcome-cards{display:flex;gap:14px;margin-top:38px;text-align:left}.welcome-cards button{width:50%;padding:20px;text-align:left;border-color:#e5e8e2;background:#fafbf9}.welcome-cards span{display:block;font-size:20px;color:#52715b;margin-bottom:18px}.welcome-cards strong{display:block;font-size:12px;font-weight:550}.welcome-cards small{display:block;font-size:10px;color:#8c948b;margin-top:7px}#composer-wrap{max-width:850px;width:calc(100% - 70px);margin:0 auto 15px}.options{display:flex;gap:15px;align-items:center;padding:10px 1px;font-size:10px;color:#7e887e}.options label{display:flex;align-items:center;gap:5px}.options select{font-size:11px;padding:5px;border:0;background:#f4f6f2;max-width:250px}#composer{border:1px solid #dde3da;border-radius:17px;padding:17px;background:#fafbf9;box-shadow:0 3px 12px #1a2c1804}textarea{resize:none;width:100%;border:0;outline:none;background:transparent;line-height:1.7;max-height:220px;min-height:54px}.composer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:7px}.composer-bottom span{font-size:10px;color:#939b91}.send{background:#294d37;color:#fff;border:0;width:33px;height:33px;padding:0;font-size:21px;border-radius:10px}.send:hover{background:#386747}.stop{margin-left:auto;margin-right:8px;font-size:10px}.hint{text-align:center;color:#a0a69e;font-size:9px;margin-bottom:0}.message{max-width:790px;margin:22px auto;line-height:1.75;font-size:14px}.message.user{background:#f0f3ed;border-radius:14px;padding:13px 19px;max-width:650px;margin-left:auto;margin-right:max(0px,calc((100% - 790px)/2));width:fit-content}.message-label{font-size:10px;color:#899287;margin-bottom:8px;display:flex;gap:12px}.message-content{white-space:pre-wrap;overflow-wrap:anywhere}.message pre{background:#f3f5f1;overflow:auto;padding:16px;border-radius:10px;font:12px/1.7 ui-monospace,SFMono-Regular,monospace;white-space:pre}.message code{font-family:ui-monospace,monospace}.message details{border:1px solid #e5e8e1;border-radius:8px;padding:10px;font-size:11px;color:#707970}.message summary{cursor:pointer}.notice{padding:11px 30px;background:#fbf4e8;color:#806026;font-size:12px}.login{min-height:100dvh;display:grid;place-items:center;background:#f6f7f3}.login form{width:360px;padding:25px}.brandmark{font-size:40px;color:#32583e;margin-bottom:25px}.login h1{font-size:26px;letter-spacing:-.7px}.login p{color:#7b8378;line-height:1.7;font-size:13px}.login label,dialog label{display:block;font-size:12px;margin:20px 0}.login input,dialog input{display:block;width:100%;margin-top:8px;padding:12px}.primary{background:#294d37;color:#fff;width:100%;border:0;padding:13px}.primary span{float:right}.primary:hover{background:#365e43}.login small{font-size:11px;color:#91988d}.error{color:#a23838!important}dialog{border:1px solid #dde3d8;border-radius:16px;width:min(420px,90vw);padding:25px}dialog::backdrop{background:#18241955}dialog h2{font-size:23px}.dialog-actions{display:flex;justify-content:space-between;margin-top:22px}#inventory{overflow:auto;flex:1;padding:30px}.inventory-section{max-width:1000px;margin:0 auto 30px}.inventory-section h2{font-size:22px}.inventory-section p{color:#858d83;font-size:12px;line-height:1.7}.inventory-card{padding:17px;border:1px solid #e4e9e0;border-radius:10px;margin:12px 0;background:#fafbf9}.inventory-card strong{font-size:13px}.inventory-card pre{white-space:pre-wrap;overflow-wrap:anywhere;font:11px/1.7 ui-monospace,monospace;color:#75816f}.empty{padding:30px 10px;color:#8b9386;font-size:12px;text-align:center}@media(max-width:800px){aside{width:240px;position:fixed;top:0;bottom:0;z-index:5;transform:translateX(-100%);box-shadow:20px 0 50px #15201022}aside.open{transform:translateX(0)}.icon{display:block;border:0;padding:5px}header{padding:16px;min-height:80px}header h1{font-size:13px;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#chat-actions{gap:2px}#chat-actions button{font-size:9px;padding:6px}#conversation{padding:12px 18px}#welcome{margin-top:7vh}#welcome h2{font-size:25px}.welcome-cards{gap:8px;margin-top:25px}.welcome-cards button{padding:14px}.welcome-cards small{line-height:1.6}#composer-wrap{width:calc(100% - 28px);margin-bottom:10px}.options{gap:6px;flex-wrap:wrap}.options select{max-width:140px}.options label{font-size:9px}#composer{padding:13px}.composer-bottom span{max-width:210px;line-height:1.5}.hint{font-size:8px}.message{font-size:13px}.message.user{max-width:92%}#inventory{padding:18px}}
.schedule-form{background:#fafbf8;border:1px solid #e2e7de;border-radius:12px;padding:20px;max-width:600px}.schedule-form h3{font-size:14px;margin:0 0 20px}.schedule-form label{display:block;font-size:11px;color:#75816f;margin:13px 0}.schedule-form input,.schedule-form select,.schedule-form textarea{display:block;width:100%;margin-top:7px}.schedule-form textarea{border:1px solid #dfe4e0;border-radius:7px;background:#fff;padding:12px;min-height:95px}
.message-content p{margin:8px 0}.message-content h1,.message-content h2,.message-content h3{font-size:18px;letter-spacing:0;margin:20px 0 8px}.message-content ul,.message-content ol{white-space:normal;padding-left:24px}.message-content a{color:#356f4b;text-decoration:underline}.message-content table{border-collapse:collapse;white-space:normal;font-size:12px;display:block;overflow:auto}.message-content th,.message-content td{border:1px solid #dce3d7;padding:8px}.message-content blockquote{border-left:3px solid #bcccb7;padding-left:15px;color:#6c7867;margin-left:0}
.inventory-card label{display:block;font-size:12px;margin:15px 0}.inventory-card input{display:block;width:100%;margin-top:8px}
#project-filter{width:100%;background:transparent;font-size:10px;padding:6px;margin-bottom:12px;color:#747f6f}
.attachment-button{font-size:10px;padding:5px;color:#74826c;cursor:pointer;margin-right:10px;white-space:nowrap}.composer-bottom #composer-status{margin-right:auto}#attachments-list button{font-size:10px;padding:5px 8px;margin:5px 5px 3px 0}
header>div:first-of-type{flex:1;min-width:0}header h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#chat-meta{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#chat-actions{flex-shrink:0}
.close-sidebar{display:none}@media(max-width:800px){.close-sidebar{display:block;position:absolute;right:10px;top:16px;border:0;background:transparent;padding:5px;font-size:23px}}
.chat-count{font-size:9px;color:#8a9482;padding:0 7px 9px}
.history-notice,.conversation-status{max-width:790px;margin:18px auto;color:#748078;font-size:12px;line-height:1.7}.history-notice{text-align:center}.message-content{white-space:normal}.message-content img{display:block;max-width:100%;max-height:480px;width:auto;height:auto;object-fit:contain;border-radius:12px;margin:12px 0}.chat-image{margin:14px 0;max-width:100%}.chat-image a{display:block;width:fit-content;max-width:100%}.image-unavailable{display:block;color:#748078;font-size:12px;margin:10px 0}.approval-card p{font-size:13px;margin:10px 0}.approval-card button{margin-top:8px}#attachments-list{display:flex;flex-wrap:wrap;gap:10px}.attachment-preview{position:relative;width:90px;margin-top:8px}.attachment-preview img{width:90px;height:70px;object-fit:cover;border-radius:8px}.attachment-preview span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:#748078}.attachment-preview button{position:absolute;top:2px;right:2px;background:#fff;border-radius:50%;width:23px;height:23px;line-height:1;padding:0!important;margin:0!important;font-size:17px!important}
