:root{--ink:#22221f;--muted:#898981;--line:#eae9e3;--paper:#fff;--wash:#f7f7f4;--green:#425e51;--green2:#334b40;--sand:#d8c7a2;--red:#a54236}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','Noto Sans SC',sans-serif;font-size:14px}button,input,textarea{font:inherit}button{cursor:pointer}.login-wrap{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 0%,#f0eee6 0,transparent 42%),#f9f9f6;padding:24px}.login-card{width:min(100%,400px);background:white;border:1px solid var(--line);border-radius:18px;padding:40px;box-shadow:0 18px 55px #313b2c0d}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:var(--green);color:#fff;font-weight:700;font-size:20px;margin-bottom:25px}.brand-mark.small{width:34px;height:34px;border-radius:10px;font-size:16px;margin:0}.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:700;color:#929187;margin:0 0 9px}.login-card h1,.admin-head h1{font-size:27px;letter-spacing:-.04em;margin:0 0 8px}.muted{color:var(--muted)}.login-card .muted{margin:0 0 26px}.login-card form,.login-card label{display:flex;flex-direction:column}.login-card form{gap:16px}.login-card label,.create-user label{gap:7px;font-size:12px;font-weight:600}.login-card input,.create-user input{height:44px;border:1px solid #e1e0d9;border-radius:8px;padding:0 12px;outline:none}.login-card input:focus,.create-user input:focus{border-color:#829487;box-shadow:0 0 0 3px #425e5118}.primary,.secondary{border:0;border-radius:8px;background:var(--green);color:white;font-weight:600;height:44px;padding:0 18px}.primary:hover{background:var(--green2)}.primary.full{width:100%;display:flex;align-items:center;justify-content:space-between;margin-top:7px}.footnote,.admin-foot{color:#99988f;font-size:11px;margin:20px 0 0}.error{background:#fff0ed;color:#9d4138;padding:10px 12px;border-radius:8px;font-size:12px;margin:12px 0}.shell{display:flex;height:100vh;min-height:500px}.sidebar{width:260px;flex:none;background:#f8f8f5;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:22px 14px 14px}.side-brand{display:flex;align-items:center;gap:10px;padding:0 8px 24px}.side-brand b,.side-brand small,.user-name b,.user-name small{display:block}.side-brand b{font-size:14px}.side-brand small,.user-name small{color:var(--muted);font-size:11px;margin-top:2px}.new-chat{border:1px solid #e4e3dc;background:#fff;border-radius:8px;height:39px;text-align:left;padding:0 12px;color:var(--green);font-weight:600}.new-chat span{color:var(--ink);margin-left:6px}.side-label{font-size:10px;letter-spacing:.1em;color:#a5a49c;padding:25px 9px 9px;text-transform:uppercase}.chat-list{overflow:auto;flex:1}.chat-item{display:block;width:100%;border:0;background:transparent;text-align:left;border-radius:7px;padding:9px 10px;color:#66665e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.chat-item:hover,.chat-item.active{background:#edeee8;color:#313c34}.side-bottom{border-top:1px solid var(--line);padding-top:12px}.side-bottom>a{display:block;color:#6c6c63;text-decoration:none;font-size:12px;padding:9px 8px}.user-row{display:flex;align-items:center;gap:9px;padding:10px 4px 2px}.avatar,.message-avatar{flex:none;width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#e3e9e2;color:var(--green);font-size:11px;font-weight:700}.user-name{flex:1;min-width:0}.user-name b{font-size:12px;overflow:hidden;text-overflow:ellipsis}.icon-button{border:0;background:none;color:#777;padding:6px}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:56px;flex:none;border-bottom:1px solid #f0efe9;display:flex;align-items:center;justify-content:space-between;padding:0 30px;font-size:12px}.status-dot{display:inline-block;width:7px;height:7px;background:#6d9b7e;border-radius:50%;margin-right:8px}.top-sep{color:#bbb;margin:0 8px}.top-right{display:flex;align-items:center;gap:18px}.secure{color:#8d8e84;font-size:11px}.text-button,.back-link{border:0;background:none;color:#8c5b50;font-size:11px;text-decoration:none}.conversation{flex:1;overflow:auto;position:relative}.welcome{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center}.welcome[hidden]{display:none}.welcome-icon{width:45px;height:45px;border-radius:15px;background:#edf1eb;color:var(--green);display:grid;place-items:center;font-size:24px;margin-bottom:20px}.welcome .eyebrow{margin-bottom:7px}.welcome h1{font-size:30px;letter-spacing:-.05em;margin:0 0 9px}.welcome>p:not(.eyebrow){color:#929187;font-size:13px;margin:0}.suggestions{display:flex;gap:9px;margin-top:27px;flex-wrap:wrap;justify-content:center}.suggestions button{border:1px solid var(--line);background:white;color:#66665e;border-radius:20px;padding:9px 13px;font-size:11px}.suggestions button:hover{border-color:#a6b2a7;color:var(--green)}.messages{max-width:790px;margin:0 auto;padding:44px 30px 70px}.message{display:flex;gap:13px;margin:0 0 28px;line-height:1.75}.message-avatar{width:27px;height:27px;background:var(--green);color:white}.message.user .message-avatar{background:#e5e2d8;color:#58564d}.message-content{min-width:0;flex:1}.message-label{font-size:11px;color:#939289;font-weight:600;margin:2px 0 6px}.message-text{font-size:14px;white-space:normal;overflow-wrap:anywhere}.typing{display:block;color:#99988f;font-size:11px;margin-top:8px;animation:pulse 1.2s infinite}@keyframes pulse{50%{opacity:.45}}.composer{flex:none;padding:0 max(24px,calc((100% - 790px)/2)) 18px}.composer-box{border:1px solid #e4e3dc;border-radius:13px;background:#fff;box-shadow:0 8px 30px #30352a0b;padding:13px 14px 9px}.composer textarea{display:block;resize:none;width:100%;border:0;outline:none;line-height:1.5;max-height:180px;padding:0 1px;color:var(--ink)}.composer textarea::placeholder{color:#aaa99f}.composer-foot{display:flex;align-items:center;justify-content:space-between;color:#aaa99f;font-size:10px;margin-top:9px}.send-button{border:0;border-radius:8px;background:var(--green);color:white;width:30px;height:30px;font-size:18px;line-height:1}.send-button:disabled{opacity:.45}.disclaimer{text-align:center;color:#aaa99f;font-size:10px;margin-top:9px}.admin-wrap{max-width:760px;margin:0 auto;padding:42px 24px 70px}.back-link{display:inline-block;color:#777;margin-bottom:34px}.admin-head{margin-bottom:26px}.admin-head .muted{font-size:12px}.admin-card{border:1px solid var(--line);border-radius:12px;padding:20px 22px;margin:14px 0;background:white}.admin-card h2{margin:0 0 16px;font-size:14px}.count{display:inline-grid;place-items:center;background:#efefe9;color:#78786f;border-radius:20px;font-size:10px;width:21px;height:21px;margin-left:6px}.create-user{display:flex;align-items:end;gap:12px}.create-user label{flex:1}.create-user input{width:100%;font-size:12px}.create-user button{height:44px;white-space:nowrap}.secondary{background:#eceee9;color:var(--green)}.user-line{display:flex;align-items:center;gap:10px;padding:11px 0;border-top:1px solid #f0efe9}.user-line:first-child{border-top:0}.badge{font-size:9px;color:#526a59;background:#edf2ed;border-radius:10px;padding:3px 7px;margin-left:7px;vertical-align:1px}.small-button{border:1px solid var(--line);border-radius:6px;background:#fff;color:#73736a;padding:6px 10px;font-size:10px}@media(max-width:700px){.sidebar{width:60px;padding:15px 8px}.side-brand{padding:0 4px 18px}.side-brand>div:last-child,.new-chat span,.side-label,.chat-list,.side-bottom>a,.user-name,.icon-button{display:none}.new-chat{text-align:center;padding:0;font-size:19px}.user-row{justify-content:center;padding-top:12px}.topbar{padding:0 16px}.secure{display:none}.messages{padding:28px 18px}.composer{padding:0 14px 12px}.welcome h1{font-size:25px}.suggestions{max-width:340px}.create-user{align-items:stretch;flex-direction:column}.create-user button{align-self:flex-start}.admin-wrap{padding:25px 16px}}
