*{box-sizing:border-box;font-family:system-ui,Arial,sans-serif}
body{margin:0;background:#0b141a;color:#e9edef}
.login{max-width:420px;margin:8vh auto;padding:24px;background:#111b21;border-radius:12px}
.login a.role,.login button{display:block;width:100%;padding:12px;margin:8px 0;border:0;border-radius:8px;background:#00a884;color:#fff;text-align:center;text-decoration:none;cursor:pointer}
.login input{width:100%;padding:10px;margin:6px 0;border-radius:8px;border:1px solid #2a3942;background:#202c33;color:#e9edef}
.hint{opacity:.7;font-size:13px}
.chat{display:flex;flex-direction:column;height:100vh;max-width:520px;margin:0 auto;background:#0b141a}
.chat header{padding:14px;background:#202c33;font-weight:600}
.log{flex:1;overflow:auto;padding:12px;display:flex;flex-direction:column;gap:8px}
.msg{max-width:80%;padding:8px 12px;border-radius:10px;white-space:pre-wrap}
.msg.me{align-self:flex-end;background:#005c4b}
.msg.bot{align-self:flex-start;background:#202c33}
.chips{display:flex;flex-wrap:wrap;gap:6px;padding:6px 12px}
.chips button{background:#2a3942;border:0;color:#e9edef;padding:6px 10px;border-radius:14px;cursor:pointer;font-size:13px}
form#f{display:flex;gap:8px;padding:12px;background:#111b21}
form#f input{flex:1;padding:10px;border-radius:18px;border:0;background:#202c33;color:#e9edef}
form#f button{padding:10px 16px;border:0;border-radius:18px;background:#00a884;color:#fff;cursor:pointer}
.owner{display:grid;grid-template-columns:1fr 1fr;height:100vh;max-width:1200px}
.panel{overflow:auto;padding:12px;border-left:1px solid #2a3942}
.panel h3{margin:12px 0 6px;font-size:13px;text-transform:uppercase;opacity:.6}
.card{background:#111b21;border:1px solid #2a3942;border-radius:8px;padding:8px;margin:6px 0;font-size:13px}
.appr button{margin-right:6px}
