*{box-sizing:border-box}body{margin:0;font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif;background:#f9faf8;color:#23332e;font-size:14px}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}button,a,input,textarea{outline-offset:4px}button:focus-visible,a:focus-visible{outline:2px solid #207c62}[hidden]{display:none!important}.login-wrap{min-height:100dvh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at 20% 20%,#e3eee5 0,transparent 55%),radial-gradient(ellipse at 90% 90%,#e6e9df 0,transparent 55%),#f8faf6}.login-card{width:100%;max-width:420px;background:#ffffffdb;border:1px solid #dde5dc;border-radius:24px;padding:42px;box-shadow:0 24px 80px #2644310a}.logo{display:flex;align-items:center;justify-content:center;background:#1e5946;color:#fff;width:38px;height:38px;border-radius:12px;font-family:Georgia,serif;font-size:27px;font-weight:bold}.logo span{color:#b5dba2}.logo.large{width:52px;height:52px;font-size:36px;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:2px;color:#6d8c77;font-weight:600;margin:0 0 15px}h1{font-size:25px;font-weight:600;letter-spacing:-1px;margin:0 0 16px}.muted{color:#7d8780;line-height:1.9}.login-card label{display:block;font-size:12px;margin:30px 0 10px}.login-card input{width:100%;border:1px solid #d6dfd5;background:#fcfdfb;border-radius:10px;padding:13px;color:#213e31}.primary{width:100%;display:flex;justify-content:space-between;background:#285f4c;color:white;border:0;border-radius:10px;padding:14px 16px}.primary:hover{background:#174832}.login-note{text-align:center;color:#98a095;font-size:11px;margin-top:25px}.error{color:#a64635;font-size:12px;min-height:8px;line-height:1.6}.app{display:flex;height:100dvh}.sidebar{width:248px;flex-shrink:0;padding:30px 20px 20px;background:#f0f3ed;border-right:1px solid #e2e7de;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;color:#263c30;text-decoration:none;font-size:19px;font-weight:650;letter-spacing:-.5px}.brand small{display:block;font-weight:400;font-size:10px;letter-spacing:3px;margin-top:3px;color:#8c978b}.new-chat{margin-top:34px;background:#fff9;border:1px solid #cfdacc;padding:11px 14px;border-radius:9px;text-align:left;color:#3c5646;display:flex;align-items:center;gap:10px}.new-chat:hover{background:#fff}.new-chat span{font-size:20px;line-height:1}.side-label{margin:33px 12px 13px;color:#95a08f;font-size:11px}.current-chat{display:flex;gap:10px;background:#e2e9dc;padding:12px;border-radius:8px;color:#4b654b;font-size:12px}.current-chat span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-bottom{margin-top:auto}.model-card{display:flex;gap:10px;align-items:center;padding:15px 10px;border-top:1px solid #dce3d6;font-size:12px}.model-card small{display:block;margin-top:5px;font-size:10px;color:#8d9887}.dot{display:inline-block;width:6px;height:6px;background:#4c8f62;border-radius:50%;flex-shrink:0}.text-button{border:0;background:none;color:#939b8d;font-size:11px;padding:9px 10px}.text-button:hover{color:#285f4c}main{min-width:0;flex:1;display:flex;flex-direction:column;background:#fbfcfa}header{height:80px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;border-bottom:1px solid #eff1eb;flex-shrink:0}.header-title{font-weight:600;font-size:14px;color:#3e5143}.header-title>span{font-size:10px;font-weight:400;margin-left:7px;padding:4px 7px;border:1px solid #dfe6da;border-radius:5px;color:#7a8b72}.connection{display:flex;align-items:center;gap:7px;font-size:11px;color:#85927f}.connection.offline .dot{background:#be885d}.messages{overflow-y:auto;flex:1;min-height:0;padding:24px max(28px,calc((100% - 780px)/2));scroll-behavior:smooth}.welcome{max-width:730px;margin:clamp(35px,10vh,110px) auto 0;text-align:center}.welcome-mark{font-size:60px;line-height:1;color:#2f6551;margin-bottom:24px}.welcome .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:20px}.welcome h2{font-family:Georgia,"Microsoft YaHei",serif;font-size:33px;font-weight:500;letter-spacing:1px;margin:0 0 18px}.welcome>p:not(.eyebrow){font-size:12px;color:#96a08f}.suggestions{display:flex;gap:10px;margin-top:38px;justify-content:center}.suggestions button{background:#fff;border:1px solid #e3e8dd;border-radius:10px;padding:17px 15px;color:#6b7c63;font-size:11px;display:flex;justify-content:space-between;gap:20px;text-align:left;flex:1;max-width:225px}.suggestions button:hover{background:#f2f6ed;border-color:#c5d5be}.suggestions span{color:#a0af95}.composer-wrap{width:100%;max-width:850px;margin:auto auto 0;padding:0 30px 17px;flex-shrink:0}.composer{border:1px solid #d9e2d2;background:white;border-radius:16px;padding:18px 19px 12px;box-shadow:0 5px 22px #29492c06}.composer:focus-within{border-color:#9cb698}.composer textarea{display:block;resize:none;width:100%;max-height:160px;border:0;outline:0;color:#364831;font-size:14px;line-height:1.7;background:transparent}.composer textarea::placeholder{color:#a8b09f}.composer-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.composer-bottom>span{font-size:10px;color:#a5ad9b}.send{width:34px;height:34px;border:0;border-radius:10px;background:#2a614b;color:white;font-size:23px;line-height:1}.send:hover{background:#1b4834}.stop{background:#f3f5ef;border:1px solid #dbe3d2;color:#607451;padding:7px 11px;border-radius:8px;font-size:11px}.footnote{font-size:10px;color:#a5ad9b;text-align:center;margin:12px 0 0;line-height:1.6}.message{margin:12px 0 28px;max-width:100%;line-height:1.9;font-size:14px}.message-label{font-size:10px;color:#94a28a;margin:0 0 10px;letter-spacing:1px}.message.user{display:flex;flex-direction:column;align-items:flex-end}.message.user .message-label{display:none}.message-body{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}.user .message-body{background:#eaf0e3;padding:12px 18px;border-radius:16px 16px 4px 16px;max-width:85%;color:#405735}.assistant .message-body{padding:0 2px}.message.pending .message-body{color:#90a080}.message-copy{background:none;border:0;font-size:10px;color:#9baa90;margin-top:8px;padding:3px 0}.message-copy:hover{color:#345c35}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:900px){.sidebar{width:206px;padding:25px 15px}.suggestions{flex-direction:column;align-items:center}.suggestions button{width:100%;max-width:400px;padding:13px 16px}.welcome{margin-top:35px}.welcome h2{font-size:28px}.welcome-mark{font-size:45px;margin-bottom:20px}.welcome .eyebrow{display:none}}@media(max-width:600px){.sidebar{width:66px;padding:20px 10px;align-items:center}.brand>div:last-child,.side-label,.current-chat,.model-card,.text-button{display:none}.brand .logo{width:36px;height:36px;font-size:26px}.new-chat{font-size:0;margin-top:26px;padding:10px}.new-chat span{font-size:20px}.sidebar-bottom{display:none}header{height:64px;padding:0 17px}.header-title{font-size:12px}.connection{font-size:10px}.messages{padding:18px}.welcome{margin-top:35px}.welcome h2{font-size:24px}.welcome>p:not(.eyebrow){font-size:11px;line-height:1.8}.suggestions{margin-top:24px}.composer-wrap{padding:0 12px 12px}.composer{padding:13px 12px 9px}.composer-bottom>span{font-size:9px}.footnote{font-size:9px}.login-card{padding:32px}.message{font-size:13px}.welcome-mark{margin-bottom:25px}}
