:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:#263b38;background:#fff;font-size:15px;--green:#16785e;--border:#e2e9e5;--muted:#76847f}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{outline-offset:4px}button{cursor:pointer;border:0;border-radius:9px;background:var(--green);color:#fff;padding:11px 18px;font-weight:600}button:disabled{opacity:.5;cursor:wait}button:hover{filter:brightness(.96)}a{color:inherit;text-decoration:none}textarea,input:not([type=checkbox],[type=file]){border:1px solid var(--border);border-radius:8px;padding:11px 12px;background:#fff;color:inherit;max-width:100%}textarea{resize:vertical}input[type=checkbox]{accent-color:var(--green);width:17px;height:17px;vertical-align:middle}small,.muted{color:var(--muted);font-size:13px;line-height:1.7}[hidden]{display:none!important}.chat-layout{display:flex;height:100dvh;overflow:hidden}.sidebar{width:262px;flex-shrink:0;background:#f4f7f4;border-right:1px solid #e9efea;padding:28px 18px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:24px;color:#225f4a;letter-spacing:-.5px}.brand small{display:block;font-size:10px;letter-spacing:2px;font-weight:400;margin-top:2px}.new-chat{margin-top:34px;background:#fff;border:1px solid #dbe5dc;color:#345649;text-align:left;padding:13px 15px}.side-label{font-size:11px;color:#84938a;margin:30px 10px 12px}.history{flex:1;overflow:auto}.history button{background:transparent;color:#52645b;width:100%;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:400;padding:11px}.history button.active{background:#e5ede6}.side-bottom{border-top:1px solid var(--border);padding:20px 10px 0;font-size:13px;display:grid;gap:17px}.local-note{font-size:11px;color:#668172}.link-button{padding:0;background:none;color:#829086;text-align:left;font-size:12px;font-weight:400}.chat-main{flex:1;overflow:auto;position:relative;display:flex;flex-direction:column;background:radial-gradient(ellipse at 60% 26%,#f6f9f5 0,transparent 56%)}.chat-header{position:sticky;top:0;background:#ffffffed;z-index:5;display:flex;align-items:center;gap:10px;padding:20px 30px;border-bottom:1px solid #f1f4f0;min-height:72px;font-weight:600}.badge{display:inline-block;background:#edf4ef;border:1px solid #dfe9e1;color:#4d7a60;font-size:10px;border-radius:6px;padding:4px 7px;vertical-align:middle;letter-spacing:.3px}.model-label{font-size:11px;color:#7f8c82;margin-left:auto;font-weight:400}.icon-button{display:none;padding:5px 8px;background:none;color:#52645b}.welcome{margin:auto;text-align:center;padding:50px 24px;max-width:820px;width:100%}.hero-icon{margin:auto;background:#e9f2e9;border-radius:21px;color:#3b7558;width:70px;height:70px;font-size:50px;line-height:70px}.eyebrow{font-size:10px;color:#7a9483;letter-spacing:2.6px;font-weight:600;margin-top:28px}h1{font-size:32px;letter-spacing:-1px;line-height:1.4;font-weight:600;margin:16px 0}.welcome>p:not(.eyebrow){color:#819086;font-size:14px}.suggestions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:44px;text-align:left}.suggestions button{padding:19px 16px;text-align:left;background:#fff;color:#4b6657;border:1px solid #e5ece4;font-size:13px;font-weight:500;box-shadow:0 4px 18px #2c583304}.suggestions span{display:block;color:#929e94;font-size:11px;margin-top:10px}.composer-wrap{position:sticky;bottom:0;background:linear-gradient(transparent,#fff 18%);padding:24px 28px 16px;width:100%;margin-top:auto;z-index:4}.composer{max-width:800px;margin:auto;border:1px solid #dce6dc;background:#fff;border-radius:20px;box-shadow:0 8px 30px #37503909;padding:14px 16px 12px}.composer textarea{width:100%;border:0;resize:none;outline:none;padding:6px 4px;min-height:42px;max-height:180px;background:none;font-size:15px}.composer textarea::placeholder{color:#9aa69b}.composer-tools{display:flex;align-items:center;gap:10px;margin-top:8px}.composer-tools span{font-size:10px;color:#84998a}.composer-tools button{margin-left:auto;border-radius:10px;font-size:19px;padding:4px 12px;height:34px}.composer-tools #stop{font-size:12px}.disclaimer{text-align:center;font-size:10px;color:#a0aaa2;margin-top:12px}.messages{max-width:800px;width:100%;margin:0 auto;padding:30px 15px}.messages:empty{display:none}.message{padding:20px 0 26px;line-height:1.9}.message-label{font-size:12px;color:#4c7960;font-weight:700;margin-bottom:10px}.message-content{white-space:pre-wrap;overflow-wrap:anywhere}.message.user{margin-left:auto;background:#eff4ef;border-radius:16px;padding:14px 21px;max-width:86%;width:fit-content;margin-bottom:20px}.message.user .message-label{display:none}.sources{font-size:12px;border:1px solid var(--border);border-radius:8px;margin-top:20px;padding:10px 14px;color:#61796a}.sources summary{cursor:pointer}.sources p{max-height:170px;overflow:auto;white-space:pre-wrap}.sources>div{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.error{color:#b14d46;font-size:13px}.composer-wrap .error{max-width:800px;margin:0 auto 8px}.admin-body{background:#f5f7f4}.admin-header{padding:20px 5%;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.admin-header .brand{font-size:22px}.admin-header nav{display:flex;align-items:center;gap:22px;font-size:13px}.admin-main{max-width:1120px;padding:20px 28px 70px;margin:auto}.notice{position:sticky;top:8px;z-index:10;white-space:pre-wrap;overflow-wrap:anywhere;background:#e7f3e9;color:#296343;border-radius:9px;padding:12px 16px;margin-bottom:12px}.notice:empty{display:none}.error-notice{background:#fce9e5;color:#a24035}.page-heading{display:flex;align-items:center;justify-content:space-between;padding:15px 0 25px}.page-heading h1{font-size:30px}.panel{background:#fff;border:1px solid var(--border);border-radius:15px;padding:28px;margin-bottom:25px}.panel h2{font-size:18px;margin:0 0 8px}.panel p{margin:6px 0 16px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.secondary{background:#f4f7f3;border:1px solid #dbe4da;color:#42664e;font-size:12px}.danger{background:#fff2ef;color:#b35144;border:1px solid #f0d4cd;font-size:12px}.grid-two{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:flex;flex-direction:column;gap:9px;font-size:13px;margin-bottom:18px;font-weight:500}label textarea{width:100%}label small{font-weight:400;font-size:11px}.toggles{display:flex;flex-wrap:wrap;gap:22px;margin-top:12px}.toggles label{flex-direction:row;align-items:center;font-weight:400}.upload-zone{border:1px dashed #bdd0bc;border-radius:10px;background:#f7faf5;padding:22px}.upload-zone label{margin-bottom:8px}.upload-zone small{display:block;margin-bottom:18px}.upload-zone input{margin-top:10px}.document-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;font-size:13px}.document-toolbar>div{display:flex;gap:8px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{background:#f5f8f3;color:#7a8c7d;font-weight:500}th,td{padding:13px 10px;border-bottom:1px solid var(--border)}td{overflow-wrap:anywhere}td:nth-child(2){min-width:160px;max-width:300px}.empty{text-align:center;color:#93a08f;font-size:13px;padding:28px}.login-panel{max-width:440px;margin:80px auto}.login-panel form{margin-top:28px}.login-panel button{width:100%}@media(max-width:800px){.sidebar{width:220px}.suggestions{grid-template-columns:1fr}.suggestions button{padding:12px}.suggestions span{display:none}.welcome{padding:30px 22px}.welcome h1{font-size:26px}.model-label{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-header{padding:18px}.grid-two{grid-template-columns:1fr}.panel{padding:20px}.section-heading,.document-toolbar{align-items:flex-start;flex-direction:column}.admin-main{padding:18px 14px}.admin-header{padding:18px}.admin-header .badge{display:none}}@media(max-width:600px){.sidebar{display:none;position:fixed;top:70px;bottom:0;left:0;z-index:20;box-shadow:10px 0 40px #0002}.sidebar.open{display:flex}.icon-button{display:block}.composer-wrap{padding:14px 12px 12px}.composer-tools span{font-size:9px}.disclaimer{font-size:8px}.messages{padding:20px}.welcome h1{font-size:25px}.hero-icon{width:56px;height:56px;font-size:38px;line-height:56px}.suggestions{margin-top:26px}.admin-header nav{gap:10px}.document-toolbar>div{flex-wrap:wrap}h1{font-size:25px}}
