:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft Yahei",sans-serif;color:#18332d;background:#f5f7f5;font-size:14px;line-height:1.6;--accent:#12745c;--border:#e0e8e2;--muted:#71827a}*{box-sizing:border-box}body{margin:0}a{color:var(--accent);text-decoration:none}button,input,select,textarea{font:inherit}button,.button{border:1px solid var(--border);border-radius:8px;padding:9px 16px;background:white;color:#25463a;cursor:pointer;display:inline-block}button:hover,.button:hover{filter:brightness(.96)}button:disabled{opacity:.5;cursor:wait}.primary{background:var(--accent);color:white;border-color:var(--accent)}.quiet{border:0;background:transparent;padding:4px 6px}.danger{color:#a53737}.top{height:80px;background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 4vw;gap:20px}.brand{font-size:19px;font-weight:750;color:#163f32;display:flex;align-items:center;gap:10px;white-space:nowrap}.brand small{font-size:12px;color:var(--muted);font-weight:400;margin-left:10px}.logo{background:var(--accent);color:white;display:grid;place-items:center;width:36px;height:36px;border-radius:11px;font-size:18px}.top nav{display:flex;gap:20px;align-items:center;font-size:13px}.top form{margin:0}.page{max-width:1360px;margin:auto;padding:36px 4vw 60px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-.5px;line-height:1.3;margin-bottom:12px}h2{font-size:19px;margin-bottom:14px}h3{font-size:12px;color:var(--muted);letter-spacing:1px;margin:20px 0 8px}p{margin-bottom:18px}.muted{color:var(--muted)}.small{font-size:12px}.eyebrow{color:var(--accent);font-size:12px;font-weight:700;margin-bottom:16px;letter-spacing:2px}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.heading h2{margin:0}.heading p{margin:0}.card{background:white;border:1px solid var(--border);border-radius:13px;padding:25px;box-shadow:0 3px 12px #233c2603}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.stats strong{display:block;font-size:34px;line-height:1.4;font-weight:650;margin-top:8px}.tabs{display:flex;gap:30px;padding:25px 4px 15px;position:sticky;top:0;background:#f5f7f5ee;backdrop-filter:blur(8px);z-index:1}.section{margin:18px 0;scroll-margin-top:70px}.inline{display:flex;align-items:end;gap:10px}.inline input{margin:0}.inline label{margin:0}label{display:block;font-size:13px;font-weight:550;margin-bottom:17px}input,select,textarea{display:block;width:100%;padding:10px 12px;border:1px solid #cfdbd2;border-radius:7px;background:#fff;color:#18332d;margin-top:6px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #12745c12}textarea{resize:vertical;min-height:75px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-top:20px}.form-grid label{margin-bottom:0}.form-grid>form label{margin-bottom:12px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:12px;color:var(--muted);font-weight:500;background:#f8faf8}td,th{padding:15px 12px;border-bottom:1px solid #eef2ee;vertical-align:top}.badge,.pill{border-radius:30px;background:#e9f3ed;color:var(--accent);display:inline-block;padding:4px 11px;font-size:12px}.pager{display:flex;gap:18px;justify-content:center;padding-top:20px;font-size:12px;color:var(--muted)}details summary{cursor:pointer;color:var(--accent)}.editor{background:#f7faf7;padding:14px 18px;border-radius:8px;margin:18px 0}.compact{min-width:230px;padding:12px 0}.group{border:1px solid var(--border);border-radius:9px;padding:18px;margin-top:14px}.group>summary{display:flex;justify-content:space-between}.members{padding:0;list-style:none}.members li{padding:8px 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.notice,.error{padding:13px 18px;border-radius:8px;margin-bottom:20px}.notice{background:#e5f3e9;color:#24613b}.error{background:#fff0ec;color:#a23f29}.narrow{max-width:480px;margin:50px auto}.auth-wrap{display:grid;grid-template-columns:1.2fr 1fr;max-width:1050px;margin:9vh auto;gap:80px;align-items:center}.intro h1{font-size:44px;line-height:1.45;letter-spacing:-1px}.intro p{font-size:17px;color:var(--muted);line-height:2}.auth-card{padding:38px}.auth-card h2{font-size:25px}.wide{width:100%}.auth-card .small{margin:20px 0 0}.chat-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.chat-heading h1{margin:0}.chat-shell{display:grid;grid-template-columns:285px 1fr;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:white;height:calc(100vh - 220px);min-height:480px}.chat-shell aside{background:#fafcfa;border-right:1px solid var(--border);padding:0 16px 20px;overflow:auto}.conversation{display:flex;flex-direction:column;min-width:0;min-height:0}.conversation-top{padding:20px 25px;border-bottom:1px solid var(--border)}.conversation-top h2{margin-bottom:3px}.conversation-top p{margin:0}.contact,.room{display:block;width:100%;text-align:left;border:0;background:transparent;padding:11px 10px;margin:3px 0}.room.selected{background:#e6f2ea;color:#0c624b}.invite{padding:10px;background:#edf5ee;border-radius:8px;margin:5px 0}.invite button{padding:4px 9px;margin:8px 5px 0 0;font-size:12px}.empty{padding:30px;text-align:center;color:var(--muted)}#messages{padding:22px;overflow:auto;flex:1;background:#fcfdfb}.message{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:18px}.message.mine{align-items:flex-end}.message .meta{font-size:11px;color:var(--muted);margin-bottom:5px}.bubble{background:#f0f3ef;border-radius:3px 12px 12px;padding:11px 15px;max-width:80%;white-space:pre-wrap;overflow-wrap:anywhere}.mine .bubble{background:#e4f1e7;border-radius:12px 3px 12px 12px}.bubble a{display:block;font-size:13px;margin-top:4px;text-decoration:underline}.composer{padding:15px 20px;border-top:1px solid var(--border)}.composer textarea{border:0;box-shadow:none;min-height:55px;max-height:150px;padding:0;margin:0}.composer-actions{display:flex;gap:12px;align-items:center;margin-top:10px}.composer-actions button{margin-left:auto}.attachment{font-size:12px;margin:0;cursor:pointer;color:var(--accent);max-width:220px}.attachment input{font-size:11px;padding:3px;margin:0;border:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}@media(max-width:800px){.top{height:auto;min-height:72px;flex-wrap:wrap;padding:15px 5vw}.brand small{display:none}.top nav{gap:10px;flex-wrap:wrap}.top nav span{display:none}.page{padding:24px 4vw}.auth-wrap{grid-template-columns:1fr;gap:24px;margin:12px auto}.intro h1{font-size:30px}.intro p,.intro .pill{display:none}.auth-card{padding:25px}.stats{grid-template-columns:repeat(2,1fr);gap:10px}.heading{align-items:flex-start;flex-direction:column}.tabs{gap:15px;font-size:12px}.form-grid{grid-template-columns:1fr}.chat-shell{grid-template-columns:155px 1fr;height:calc(100dvh - 220px)}.chat-shell aside{padding:0 8px 15px}.conversation-top{padding:14px}.conversation-top h2{font-size:16px}#messages{padding:12px}.composer{padding:10px}.composer-actions{flex-wrap:wrap}.composer-actions .small{display:none}.bubble{max-width:95%}.card.section{padding:16px}.inline{flex-wrap:wrap}}

button,.button{white-space:nowrap}
