:root{font-family:"Segoe UI","Microsoft YaHei",system-ui,sans-serif;color:#2d342f;background:#fdfdfb;font-size:14px;--green:#386450;--muted:#7c827b;--line:#e8eae3}*{box-sizing:border-box}body{margin:0;display:flex;height:100dvh;overflow:hidden}button,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #6b9277;outline-offset:3px}button{border:0;background:transparent;color:inherit}.sidebar{width:238px;flex:none;padding:31px 18px 18px;background:#f1f3ed;border-right:1px solid #e5e9df;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;margin:0 13px 36px;font-size:23px;font-weight:650;letter-spacing:2px}.brand-mark{width:39px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--green);color:#fff;font-family:serif;font-size:24px;letter-spacing:0}.brand small{display:block;font-size:10px;letter-spacing:1px;color:#838a7d;font-weight:400;margin-top:2px}.new-chat{padding:12px 14px;display:flex;gap:11px;align-items:center;background:#fff;border:1px solid #d9e1d5;border-radius:9px;text-align:left;color:#3e624b;font-weight:550}.new-chat>span:first-child{font-size:22px;font-weight:400;line-height:16px}.new-arrow{margin-left:auto;font-weight:400;color:#939e8a}.new-chat:hover{background:#eaf0e6}.history-label{color:#8a9385;font-size:11px;margin:30px 11px 12px}.sidebar nav{overflow:auto;flex:1}.history-item{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;padding:11px 12px;border-radius:7px;width:100%;text-align:left;font-size:12px;margin:2px 0;color:#737e6e}.history-item.active{background:#e3e9dc;color:#314c36}.history-item:hover{background:#e9eee3}.history-empty{font-size:12px;color:#a0a796;padding:8px 12px}.sidebar-bottom{margin-top:20px}.sidebar-bottom details{padding:12px 10px;font-size:12px;color:#798474}.sidebar-bottom summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between}.sidebar-bottom details a{display:block;padding-top:13px;color:#52684f}.local-profile{border-top:1px solid #dfe4d9;padding:18px 7px 0;display:flex;align-items:center;gap:10px;font-size:12px}.local-profile>span{width:31px;height:31px;border-radius:50%;background:#dbe5d3;display:grid;place-items:center;color:#5a7150}.local-profile small{display:block;font-size:10px;color:#8b9484;margin-top:4px}.chat-shell{flex:1;min-width:0;display:flex;flex-direction:column}header{height:77px;flex:none;padding:0 36px;display:flex;justify-content:space-between;align-items:center;font-size:13px}.header-title{display:flex;align-items:center;gap:12px;color:#697363}.header-title button{display:none}.connection{display:flex;align-items:center;gap:7px;font-size:11px;color:#8b9387}.connection i{width:5px;height:5px;border-radius:50%;background:#a4ad9c}.connection i.ready{background:#6b9666}main{flex:1;overflow:auto;scroll-behavior:smooth}.welcome{max-width:800px;margin:0 auto;padding:9vh 28px 30px;text-align:center}.welcome-mark{width:57px;height:57px;border:1px solid #ced9c6;background:#edf2e8;color:#446840;border-radius:18px;display:inline-grid;place-items:center;font-size:29px;font-family:serif;box-shadow:0 6px 30px #415c3710}.eyebrow{font-size:11px;letter-spacing:1.5px;color:#7d8975}.welcome .eyebrow{margin:25px 0 12px}h1{font-weight:550;font-size:30px;letter-spacing:1px;margin:0;line-height:1.55}.subtitle{color:#91998a;font-size:13px;margin:11px 0 30px}.suggestions{display:grid;grid-template-columns:1fr 1fr;gap:11px;text-align:left;margin-top:34px}.suggestion{background:#fff;border:1px solid #e3e8dd;border-radius:10px;padding:18px 20px;min-height:98px;text-align:left;transition:background .15s,transform .15s}.suggestion:hover{background:#f3f6ee;border-color:#c5d3bb;transform:translateY(-1px)}.suggestion strong{font-size:13px;font-weight:550;display:flex;justify-content:space-between;color:#4a6243}.suggestion strong span{color:#94a189}.suggestion p{font-size:12px;color:#949c8b;line-height:1.7;margin:9px 0 0}.welcome-note{font-size:11px;color:#a2aa9b;margin-top:23px}.composer-area{flex:none;padding:15px 30px 16px;background:linear-gradient(0deg,#fdfdfb 80%,#fdfdfbf0)}.composer-wrap{max-width:800px;margin:auto}#composer{border:1px solid #dce3d6;border-radius:16px;padding:15px 18px 10px;background:#fff;box-shadow:0 5px 25px #2c48240a}#composer:focus-within{border-color:#abbf9e}textarea{border:0;outline:0;resize:none;max-height:160px;min-height:50px;width:100%;line-height:1.65;background:transparent;color:#374032;font-size:14px}textarea::placeholder{color:#a0a797}.composer-bottom{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#8b9583}.tiny-dot{color:#a8b39c;font-size:6px;padding-left:5px}#send{height:31px;width:31px;border-radius:9px;background:#345e44;color:white;font-size:23px;line-height:1}#send:hover:enabled{background:#264731}.footnote{text-align:center;font-size:10px;color:#a1a89a;margin:11px 0 0}.footnote button{padding:0;font-size:inherit;color:#7c8d6f}.status{font-size:12px;color:#78866d;min-height:15px;margin:0 10px 8px}.status.error{color:#a45138}.messages{max-width:800px;margin:auto;padding:8px 22px 20px}.message{margin:24px 0 36px}.message.user{display:flex;justify-content:flex-end}.user-bubble{background:#edf1e6;max-width:88%;padding:13px 20px;border-radius:16px 16px 3px 16px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.assistant-label{display:flex;align-items:center;gap:9px;font-size:12px;color:#6e8162;margin-bottom:14px}.mini-mark{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#e7eddf;font:17px serif;color:#49623d}.answer{font-size:14px;line-height:1.95;color:#394032;overflow-wrap:anywhere;padding-left:34px}.answer p{margin:0 0 14px}.answer h3{font-size:15px;margin:19px 0 9px;font-weight:600}.answer ul,.answer ol{padding-left:22px;margin:10px 0 18px}.answer li{margin:6px 0}.answer strong{font-weight:600}.citation-button{display:inline-block;background:#e9efdf;color:#587644;border-radius:4px;padding:1px 4px;font-size:10px;line-height:1.4;vertical-align:super;margin:0 2px}.citation-button:hover{background:#d8e6c8}.answer-footer{padding-left:34px;display:flex;align-items:center;gap:14px;margin-top:13px;font-size:11px;color:#99a08f}.sources-button{color:#6a805a;border:1px solid #e0e7d6;border-radius:6px;padding:6px 10px;background:#fafcf6}.copy-answer{font-size:11px;color:#939d89;padding:5px}.role-audit{margin:16px 0 0 34px;border-top:1px solid #e7ebdf;padding-top:10px;font-size:11px;color:#7b866f}.role-audit>summary,.role-row>summary{cursor:pointer;color:#70875f}.role-row{margin:8px 0;padding:7px 10px;border:1px solid #e9ede5;border-radius:6px;background:#fbfcf8}.role-row p{margin:6px 0;color:#77816f}.role-meta{font-size:10px;color:#99a28f!important}.role-missing{color:#a06d4c!important}
.followups{padding-left:34px;display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.followups button{font-size:11px;text-align:left;color:#7b876f;border:1px solid #e5eadf;border-radius:7px;padding:8px 11px}.followups button:hover{background:#f2f6ea}.pending{color:#929e84;font-size:13px;display:flex;align-items:center;gap:10px;padding-left:34px}.spinner{width:13px;height:13px;border:2px solid #dce5d2;border-top-color:#75995e;border-radius:50%;animation:spin 1.2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.message-error{color:#a15f42;padding-left:34px;font-size:13px;line-height:1.7}.retry{color:#587941;text-decoration:underline;font-size:12px;padding:8px 0}dialog{border:1px solid #e0e6d9;background:#fdfefb;color:#374030;box-shadow:0 20px 100px #28392125}dialog::backdrop{background:#26302135}#sourcesDialog{margin:0 0 0 auto;height:100dvh;max-height:100dvh;width:min(550px,95vw);padding:27px;border-radius:14px 0 0 14px;overflow:auto}.drawer-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e2e8da;padding-bottom:18px;margin-bottom:20px}.drawer-head h2{font-size:20px;font-weight:550;margin:7px 0 0}.drawer-head button,#closeScope{font-size:26px;color:#859579}.source-card{padding:17px;border:1px solid #dfe6d7;border-radius:10px;margin-bottom:14px;background:white}.source-card.highlight{border-color:#849d70;background:#f7faef}.source-card h3{font-size:14px;line-height:1.7;font-weight:550;margin:8px 0}.source-meta{font-size:11px;color:#8a967e;line-height:1.6;overflow-wrap:anywhere}.source-card a{font-size:12px;color:#5c8044;display:inline-block;margin:12px 14px 5px 0}.source-card details{margin-top:12px}.source-card summary{font-size:12px;color:#70895a;cursor:pointer}.quote{font-size:12px;line-height:1.7;color:#6f7e65;background:#f4f7ee;padding:10px;border-radius:5px;white-space:pre-wrap;overflow-wrap:anywhere}.locator{font-size:10px;color:#969f8b;overflow-wrap:anywhere}.ref-tag{font-size:11px;background:#eaf0df;border-radius:4px;color:#668149;padding:3px 6px}#scopeDialog{max-width:490px;width:90%;border-radius:13px;padding:30px;font-size:13px;line-height:1.9}#closeScope{float:right}#scopeDialog h2{font-size:20px;margin:2px 0 20px}.scope-hint{font-size:11px;color:#929d86}[hidden]{display:none!important}@media(min-height:1000px){.welcome{padding-top:15vh}}@media(max-width:1000px){.sidebar{width:210px;padding-left:12px;padding-right:12px}.welcome{padding-top:7vh}h1{font-size:26px}header{padding:0 25px}}@media(max-width:720px){.sidebar{display:none;position:fixed;inset:0 auto 0 0;z-index:10;box-shadow:5px 0 30px #20301018}.sidebar.open{display:flex}.header-title button{display:block}header{height:60px;padding:0 19px}.welcome{padding:4vh 20px 20px}.welcome .eyebrow{margin-top:20px}h1{font-size:23px}.suggestion{padding:13px;min-height:105px}.suggestion p{font-size:11px}.composer-area{padding:10px 14px 14px}.footnote{font-size:9px}.messages{padding:0 16px}.answer{padding-left:0}.answer-footer,.followups{padding-left:0}.subtitle{font-size:12px}.welcome-note{display:none}.connection{font-size:10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Keep the first screen usable on typical 720–850px laptop displays. */
@media (max-height:850px){.welcome{padding-top:22px;padding-bottom:15px}.welcome-mark{width:42px;height:42px;border-radius:13px;font-size:25px}.welcome .eyebrow{margin:14px 0 8px}.subtitle{margin:8px 0 16px}.suggestions{margin-top:20px}.suggestion{min-height:84px;padding:14px 17px}.welcome-note{margin-top:14px}}
.subtitle,.suggestion p{color:#77816e}.history-empty{color:#89927f}.footnote{color:#838e79}.source-meta{color:#77836c}
.stage-strip{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 18px}.stage{font-size:11px;border:1px solid #ddd9ce;border-radius:20px;padding:5px 9px;color:#68685f;background:#faf9f6}.stage.completed{background:#edf5ee;color:#326342}.stage.running{background:#fcf1d6;color:#855e0d}.stage.failed,.stage.revise{background:#faeae5;color:#9d4131}.stage.insufficient{background:#f7f0da;color:#71591d}.experiment-plan{border:1px solid #e2dfd6;border-radius:12px;padding:14px;margin:16px 0;background:#fff}.experiment-plan>summary{font-weight:600;cursor:pointer}.table-scroll{overflow:auto;margin:14px 0}.experiment-plan table{border-collapse:collapse;width:100%;font-size:13px;min-width:490px}.experiment-plan th,.experiment-plan td{text-align:left;padding:10px;border-bottom:1px solid #ece9e1;vertical-align:top}.experiment-plan th{background:#f8f7f2;font-weight:500}.experiment-plan details p{font-size:13px;line-height:1.7}.role-json{font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:420px;overflow:auto;background:#f8f7f3;padding:12px;border-radius:6px}.role-audit{margin-top:20px}
