/* chat.css — the chat screen. */
/* an operations message in a crew thread announces itself */
.cmsg.ops{background:color-mix(in srgb,var(--flt) 13%,var(--raise));
 border-left:2px solid var(--flt);align-self:flex-start}
.cmsg.ops .ch b{color:var(--flt)}
/* ── Crew talk ────────────────────────────────────────────────────────────
   Inside the flight modal. Own messages are aligned right and tinted with the
   accent; everyone else sits left on the raised surface — the same convention
   every messaging app uses, so nobody has to learn it. */
.chat{margin-top:22px;border-top:1px solid var(--line);padding-top:16px}
.chatnote{color:var(--faint);font-size:11px;line-height:1.55;margin:-6px 0 12px}
.chatlist{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto;
 padding:2px 2px 6px;scroll-behavior:smooth}
.cmsg{max-width:82%;background:var(--raise);border-radius:12px;padding:8px 11px;align-self:flex-start}
.cmsg.mine{align-self:flex-end;background:color-mix(in srgb,var(--acc) 14%,var(--raise))}
.cmsg .ch{display:flex;gap:8px;align-items:baseline;margin-bottom:3px;flex-wrap:wrap}
.cmsg .ch b{font-size:12px}
.cmsg .ch span{font-family:var(--mono);font-size:10px;color:var(--faint)}
.cmsg .cb{font-size:13px;line-height:1.5;white-space:pre-wrap;word-break:break-word}
.chatbox{display:flex;gap:8px;align-items:flex-end;margin-top:12px}
.chatbox textarea{flex:1;min-width:0;background:var(--surface);border:1px solid var(--line);
 border-radius:12px;padding:10px 12px;color:var(--txt);font-family:inherit;font-size:14px;
 line-height:1.5;resize:none;outline:none}
.chatbox textarea:focus{border-color:var(--acc)}
.chatbox button{flex:none;background:var(--acc);color:var(--on-acc);border:0;border-radius:12px;
 padding:11px 18px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit}
.chatbox button:disabled{opacity:.5;cursor:default}
.chatmsg{min-height:16px;margin-top:7px;font-size:11px;color:var(--faint)}
/* ── operations messages and their receipts ─────────────────────────────── */
.cmsg.unacked{border-left:3px solid var(--acc);
 background:color-mix(in srgb,var(--acc) 9%,transparent)}
.cack{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;
 margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}
.cackn{font-size:11px;color:var(--dim);line-height:1.45;flex:1 1 160px}
.cack.done .cackn{color:var(--air)}
.cackb{padding:7px 14px;border-radius:8px;border:0;background:var(--acc);color:var(--on-acc);
 font-family:var(--sans);font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}
.cackb.ghost{background:transparent;border:1px solid var(--acc);color:var(--acc)}
.cackb:disabled{opacity:.6;cursor:default}
.cackb:hover:not(:disabled){filter:brightness(1.1)}
