*{box-sizing:border-box}
body{margin:0;background:#f5f6f2;color:#18352d;font-family:Tahoma,Arial,sans-serif;font-size:15px}
main{max-width:880px;margin:auto;padding:28px 24px}
header{display:flex;justify-content:space-between;align-items:center;padding-bottom:24px;border-bottom:1px solid #dce2d9}
.brand{font-size:30px;font-weight:bold;text-decoration:none;color:#18352d;display:flex;align-items:center}.brand span{font-weight:normal}.brand i{font-style:normal;background:#d5ef84;border-radius:50%;width:34px;height:34px;font-size:25px;text-align:center;margin-right:10px}
.tag,small,.footnote{color:#6b7a71;font-size:12px}.login{max-width:440px;margin:75px auto 90px}.eyebrow{font-size:11px;letter-spacing:1px;color:#778a67}
h1{font-size:43px;line-height:1.5;margin:14px 0}p{color:#718076;line-height:1.9}label{display:block;margin:28px 0 10px;font-size:13px}
input,textarea{font:inherit;width:100%;border:1px solid #d8dfd5;border-radius:12px;padding:16px;background:white;color:#18352d;outline:none}input:focus,textarea:focus{border-color:#688a43;box-shadow:0 0 0 3px #d5ef8444}
button{font:inherit;border:0;border-radius:10px;padding:13px 20px;background:#1d4939;color:#fff;cursor:pointer}button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:wait}#loginForm button{width:100%;margin:14px 0 20px}
.workspace-head{display:flex;align-items:center;justify-content:space-between;margin-top:34px}.workspace-head h1{font-size:28px}.secondary{background:#e7ebe2;color:#35583b;font-size:12px}
.status{display:flex;align-items:center;gap:8px;font-size:12px;color:#6a7b6e;padding-bottom:18px;border-bottom:1px solid #e0e5dc}#dot{width:7px;height:7px;border-radius:50%;background:#82a953}#dot.busy{background:#c89b30;animation:pulse 1s infinite}.text-button{margin-right:auto;background:none;color:#6a7b6e;padding:5px;font-size:12px}
#empty{text-align:center;padding:45px 25px}.spark{font-size:48px;color:#739750}h2{font-size:19px}#empty p{max-width:430px;margin:15px auto}
#messages{padding:15px 0;min-height:180px;max-height:52dvh;overflow:auto;scroll-behavior:smooth}.message{padding:18px 20px;margin:12px 0;border-radius:14px;background:white;border:1px solid #e4e8e0}.message.user{background:#e7eddf;margin-left:35px}.message.assistant{margin-right:35px}.message.assistant.final{border-color:#cbd9a7;box-shadow:0 3px 16px #203b2910}.message strong{display:block;font-size:11px;color:#7a876f;margin-bottom:10px}.message pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.9;margin:0;unicode-bidi:plaintext}
#composer{background:white;border:1px solid #d8dfd5;border-radius:16px;padding:10px;position:sticky;bottom:12px;box-shadow:0 8px 30px #203b2910}textarea{border:none;resize:vertical;min-height:70px;max-height:250px;padding:12px}.composer-bottom{display:flex;align-items:center;gap:8px;padding:5px}.composer-bottom span{font-size:10px;color:#7c8973;margin-left:auto}.footnote{text-align:center;font-size:10px}#confirmation{min-height:24px;text-align:center;color:#688a43;font-size:11px;padding-top:8px}
#error{position:fixed;bottom:20px;left:20px;right:20px;max-width:600px;margin:auto;padding:16px;background:#743d2d;color:white;border-radius:12px;z-index:3}footer{border-top:1px solid #dce2d9;margin-top:30px;padding-top:20px;font-size:13px;color:#7c8973;display:flex;justify-content:space-between}footer span{font-size:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}
@keyframes pulse{50%{opacity:.35}}
@media(max-width:540px){main{padding:20px 16px}.login{margin:50px auto}.tag{font-size:10px}h1{font-size:36px}.workspace-head h1{font-size:24px}.workspace-head{margin-top:24px}.composer-bottom span{max-width:125px;line-height:1.7}.message{padding:15px}.message.user{margin-left:15px}.message.assistant{margin-right:15px}#messages{max-height:52dvh}#empty{padding:30px 8px}}
