:root{font-family:Inter,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:#183b3c;background:#e9f2f1}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}.shell{display:flex;height:100dvh;max-width:1600px;margin:auto;background:white;box-shadow:0 5px 50px #14524d12}.sidebar{width:350px;min-width:280px;border-right:1px solid #e3eeec;display:flex;flex-direction:column;background:#fbfdfd}.brand{background:#087e79;color:white;padding:23px 22px;display:flex;justify-content:space-between;align-items:center}.brand strong{font-size:23px;letter-spacing:.4px}.brand small{display:block;font-size:12px;opacity:.85;margin-top:3px}.brand button{background:#ffffff20;color:white;border:1px solid #ffffff55;border-radius:8px;padding:8px}.tools{padding:15px;display:flex;gap:8px;flex-wrap:wrap}.primary{background:#087e79;color:white;border:0;border-radius:10px;padding:11px 15px;font-weight:650}.secondary{background:#e8f4f2;color:#087e79;border:0;border-radius:10px;padding:10px 12px}.search{margin:0 15px 12px;padding:12px;border:1px solid #dce8e6;border-radius:12px;width:calc(100% - 30px)}.rooms{overflow:auto;flex:1}.room{display:flex;align-items:center;gap:12px;padding:15px;border-bottom:1px solid #f1f4f3;cursor:pointer}.room:hover,.room.active{background:#e9f6f3}.avatar{width:43px;height:43px;border-radius:50%;background:#ccece6;color:#087e79;display:grid;place-items:center;font-weight:750;flex-shrink:0}.room .detail{min-width:0}.room .detail b{display:block}.room .detail small{color:#688480}.main{flex:1;display:flex;flex-direction:column;min-width:0;background:#f7faf9}.chathead{background:white;padding:15px 22px;display:flex;gap:12px;align-items:center;border-bottom:1px solid #e3eeec;min-height:75px}.chathead .spacer{flex:1}.chathead button{border:0;background:#eaf4f2;padding:9px;border-radius:9px}.messages{flex:1;overflow:auto;padding:25px;display:flex;flex-direction:column;gap:12px}.bubble{background:white;border:1px solid #e2edeb;padding:12px 15px;border-radius:15px;max-width:min(78%,540px);align-self:flex-start;overflow-wrap:anywhere}.bubble.mine{align-self:flex-end;background:#d8f3e9;border-color:#c5e9dd}.bubble .author{font-size:12px;font-weight:700;color:#087e79;margin-bottom:5px}.bubble .meta{font-size:10px;color:#718b88;text-align:right;margin-top:7px}.bubble img{max-width:100%;max-height:300px;border-radius:8px;display:block}.bubble a{color:#087e79}.composer{padding:14px;background:white;border-top:1px solid #e3eeec;display:flex;align-items:end;gap:10px}.composer textarea{flex:1;min-height:44px;max-height:130px;resize:vertical;padding:12px;border:1px solid #d7e6e3;border-radius:12px}.empty{margin:auto;text-align:center;color:#6c8985;padding:25px}.empty h2{color:#087e79}.auth{min-height:100dvh;display:grid;place-items:center;padding:20px;background:linear-gradient(145deg,#e1f4ef,#f7fbfb)}.authcard{background:white;border-radius:20px;box-shadow:0 18px 65px #12594b1a;width:min(440px,100%);padding:34px}.authcard h1{color:#087e79;margin:0}.authcard p{color:#6c8985}.field{display:block;margin:14px 0}.field span{display:block;margin-bottom:6px;font-size:13px;font-weight:600}.field input{width:100%;padding:13px;border:1px solid #d7e6e3;border-radius:10px}.full{width:100%}.notice{padding:12px;border-radius:10px;background:#fff4d9;color:#805e10;margin:10px 0;font-size:13px}.error{background:#ffeded;color:#a22}.modalback{position:fixed;inset:0;background:#0a282b85;display:grid;place-items:center;padding:16px;z-index:10}.modal{width:min(480px,100%);background:white;border-radius:16px;padding:24px;max-height:90vh;overflow:auto}.modal h2{margin-top:0}.modal input{width:100%;padding:12px;border:1px solid #d7e6e3;border-radius:10px;margin:9px 0}.member{padding:9px;border-bottom:1px solid #eee}.muted{color:#67817c;font-size:13px}.mobileback{display:none}@media(max-width:720px){.sidebar{width:100%;min-width:0}.main{display:none}.shell.inchat .sidebar{display:none}.shell.inchat .main{display:flex}.mobileback{display:inline-block}.chathead{padding:10px}.messages{padding:13px}.bubble{max-width:88%}.brand{padding:17px}.authcard{padding:24px}}
