:root{color-scheme:light;--bg: #efe7dc;--panel: #f7f3ed;--ink: #1c1916;--muted: #6f675e;--line: #e3d8cb;--accent: #0c6b63;--accent-deep: #14332f;--bubble-in: #fffdfb;--bubble-out: #d5efe4;--danger: #9d342c;--warn: #8a5a12;--shadow: 0 10px 30px rgba(40, 28, 16, .08);--nav: 4.6rem;--safe-bottom: env(safe-area-inset-bottom, 0px);font-family:Segoe UI,system-ui,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--accent)}.login-screen{min-height:100%;display:grid;place-items:center;padding:1.5rem;background:radial-gradient(900px 400px at 10% -10%,rgba(12,107,99,.18),transparent 60%),var(--bg)}.login-card{width:min(420px,100%);background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:1.6rem;box-shadow:var(--shadow)}.brand{display:flex;gap:.8rem;align-items:center;margin-bottom:1.2rem}.brand-mark{width:2.6rem;height:2.6rem;border-radius:10px;background:var(--accent);color:#fff;display:grid;place-items:center;font-weight:700}.brand h1{font-size:1.25rem;margin:0}.brand p,.muted{color:var(--muted);margin:.15rem 0 0}label{display:block;font-size:.85rem;margin:.8rem 0 .3rem}input,textarea,select{width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:.7rem .8rem}textarea{resize:vertical;min-height:4.5rem}.primary,.ghost,.danger{border-radius:10px;border:1px solid transparent;padding:.65rem .9rem}.primary{background:var(--accent);color:#fff}.ghost{background:transparent;border-color:var(--line)}.danger{background:transparent;color:var(--danger);border-color:#efc8c4}.stack{display:flex;gap:.5rem;flex-wrap:wrap}.error{background:#fdeceb;color:var(--danger);border-radius:10px;padding:.6rem .75rem;margin:.6rem 0}.shell{height:100dvh;display:grid;grid-template-columns:var(--nav) 1fr;overflow:hidden}.nav{background:var(--accent-deep);color:#f3efe8;display:flex;flex-direction:column;align-items:center;padding:.7rem .35rem calc(.7rem + var(--safe-bottom));gap:.35rem}.nav button{width:100%;background:transparent;color:inherit;border:0;border-radius:12px;padding:.45rem .2rem;font-size:.68rem}.nav button.active,.nav button:hover{background:#ffffff1a}.nav .spacer{flex:1}.workspace{min-width:0;min-height:0;display:flex;flex-direction:column}.main{min-width:0;min-height:0;display:flex;flex:1}.idle-banner{background:#fff4dc;color:var(--warn);padding:.45rem .8rem;text-align:center;font-size:.9rem}.page{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.page-head{display:flex;justify-content:space-between;gap:1rem;align-items:center;flex-wrap:wrap;padding:.9rem 1rem;border-bottom:1px solid var(--line);background:var(--panel)}.page-head h2{margin:0;font-size:1.15rem}.page-body{padding:1rem;overflow:auto}.inbox{flex:1;min-height:0;display:grid;grid-template-columns:340px 1fr}.chats,.thread{min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--panel)}.thread{background:#f3ecdf;border-left:1px solid var(--line)}.accounts-strip,.queue-bar,.filter-bar{display:flex;gap:.4rem;overflow-x:auto;padding:.7rem .7rem .2rem}.queue-bar,.filter-bar{flex-wrap:wrap;overflow-x:visible}.filter-bar{padding-top:.35rem}.filter-bar select{width:auto;flex:1;min-width:8rem}.status-select{width:auto;max-width:14rem;margin-left:auto;flex:0 0 auto}.crm-note{padding:.4rem .9rem;background:#fff8ee;color:var(--warn);font-size:.82rem;border-bottom:1px solid var(--line)}.account-chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:.35rem .7rem;display:flex;align-items:center;gap:.4rem;white-space:nowrap;flex:0 0 auto}.account-chip.active{border-color:var(--accent);background:#e7f5f2}.badge{min-width:1.2rem;height:1.2rem;border-radius:999px;background:var(--accent);color:#fff;font-size:.72rem;display:inline-grid;place-items:center;padding:0 .3rem}.search{padding:.6rem .7rem}.chat-list,.hits,.log-list,.user-list{overflow:auto;flex:1}.chat-row,.hit,.user-row,.log-row{width:100%;text-align:left;border:0;background:transparent;display:flex;gap:.7rem;padding:.7rem .8rem;border-bottom:1px solid var(--line)}.chat-row.active{background:#e7f3ef}.chat-row .meta,.hit .meta{margin-left:auto;color:var(--muted);font-size:.75rem;display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;flex:0 0 auto;max-width:8.5rem}.chat-row .meta .pill{white-space:normal;text-align:right;line-height:1.2}.chat-row strong,.hit strong{display:block}.preview{color:var(--muted);font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:14rem}.avatar,.avatar-lg{width:2.5rem;height:2.5rem;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:650;flex:0 0 auto;background:var(--accent);overflow:hidden}.avatar img,.avatar-lg img{width:100%;height:100%;object-fit:cover}.avatar.sm{width:1.8rem;height:1.8rem;font-size:.72rem}.thread-head,.thread-search{display:flex;align-items:center;gap:.7rem;padding:.7rem .9rem;background:var(--panel);border-bottom:1px solid var(--line)}.thread-head h3{margin:0;font-size:1rem}.back{display:none}.messages{flex:1;overflow:auto;padding:.8rem .9rem .4rem;display:flex;flex-direction:column;gap:.35rem}.day{align-self:center;background:#fffc;border-radius:999px;padding:.2rem .7rem;color:var(--muted);font-size:.78rem;margin:.4rem auto;width:fit-content}.bubble{max-width:min(34rem,86%);background:var(--bubble-in);border-radius:16px 16px 16px 6px;padding:.45rem .65rem .3rem;box-shadow:0 1px #281c100a}.bubble.out{align-self:flex-end;background:var(--bubble-out);border-radius:16px 16px 6px}.bubble.deleted{opacity:.7}.bubble .who{font-size:.78rem;font-weight:650;color:var(--accent-deep)}.reply,.forward{border-left:3px solid var(--accent);padding-left:.45rem;margin-bottom:.3rem;color:var(--muted);font-size:.82rem}.bubble p{margin:0;white-space:pre-wrap;word-break:break-word}.caption{color:var(--ink);margin-top:.3rem}.stamp{display:flex;justify-content:flex-end;gap:.3rem;color:var(--muted);font-size:.72rem;margin-top:.15rem}.reactions{display:flex;gap:.25rem;flex-wrap:wrap;margin-top:.25rem}.reactions span{background:#ffffffb3;border-radius:999px;padding:.05rem .4rem;font-size:.8rem}.media{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.25rem}.media img,.media video{max-width:280px;border-radius:12px;display:block}.media video.note{width:220px;height:220px;object-fit:cover;border-radius:50%}.media audio{width:min(260px,100%)}.file{display:flex;flex-direction:column;gap:.1rem;background:#ffffff8c;border-radius:10px;padding:.45rem .6rem}.composer{display:flex;gap:.5rem;padding:.6rem .8rem calc(.6rem + var(--safe-bottom));background:var(--panel);border-top:1px solid var(--line)}.composer textarea{min-height:2.6rem;background:#f3f0ea}.cards{display:grid;gap:.8rem}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:.9rem 1rem}.card h3{margin:0 0 .2rem}.pill{display:inline-flex;align-items:center;border-radius:999px;padding:.1rem .5rem;font-size:.75rem;background:#eee7de;color:var(--muted)}.pill.ok{background:#e3f5ec;color:#146b45}.pill.bad{background:#fdeceb;color:var(--danger)}.pill.warn{background:#fff4dc;color:var(--warn)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.person-list{display:grid;gap:.8rem}.channel{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;padding:.55rem 0;border-top:1px solid var(--line)}.channel .grow{flex:1;min-width:10rem}.checks{display:flex;flex-wrap:wrap;gap:.35rem .9rem;margin-top:.35rem}.checks label,label.check{display:flex;align-items:center;gap:.35rem;margin:.7rem 0 0;font-size:.9rem}.checks input,label.check input{width:auto}.pill.status-new{background:#e7f1fb;color:#1d4e89}.pill.status-need_reply{background:#fff4dc;color:var(--warn)}.pill.status-manager_action{background:#fdeceb;color:var(--danger)}.pill.status-waiting{background:#eee7de;color:var(--muted)}.pill.status-closed{background:#e3f5ec;color:#146b45}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c191673;display:grid;place-items:center;padding:1rem;z-index:20;animation:fade-in .16s ease}.modal{width:min(480px,100%);background:var(--panel);border-radius:18px;padding:1rem;max-height:min(90dvh,720px);overflow:auto;animation:modal-in .2s ease}.modal.wide{width:min(680px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:.6rem}.modal-head h3{margin:0}.people-search{position:sticky;top:0;z-index:2;background:var(--bg);padding:.15rem 0 .7rem}.people-search label{margin-top:0}.staff-list{display:flex;flex-direction:column}.staff-row{display:grid;grid-template-columns:minmax(210px,280px) 1fr;gap:.75rem;align-items:start;padding:.7rem 0;border-bottom:1px solid var(--line)}.staff-id{display:flex;flex-direction:column;gap:.2rem;align-items:flex-start}.staff-name{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.staff-name strong{font-size:.98rem}.staff-meta{display:flex;flex-wrap:wrap;gap:.15rem .75rem;color:var(--muted);font-size:.84rem}.channel-row{display:flex;flex-wrap:wrap;gap:.45rem;align-items:flex-start}.channel-card{width:min(240px,100%);border:1px solid var(--line);border-radius:12px;background:#fff;padding:.4rem .5rem;display:flex;flex-direction:column;gap:.1rem;font-size:.86rem}.channel-card-top{display:flex;justify-content:space-between;gap:.3rem;align-items:center}.icon-row{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.35rem}.icon-btn{width:2rem;height:2rem;padding:0;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}.icon-btn:hover{border-color:var(--accent);color:var(--accent)}.icon-btn.danger{color:var(--danger)}.ghost.tiny{padding:.35rem .6rem;display:inline-flex;align-items:center;gap:.3rem;width:auto}.linkish{background:none;border:0;padding:0;color:var(--accent);text-decoration:underline;width:auto}.unassigned{margin-top:1.4rem}.unassigned h3{margin:0 0 .2rem}.unassigned-row{display:flex;gap:.8rem;align-items:center;padding:.7rem 0;border-top:1px solid var(--line)}.unassigned-row .grow{flex:1 1 auto;min-width:12rem}.unassigned-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto;flex:0 0 auto}.unassigned-actions .icon-row{margin-top:0;flex-wrap:nowrap}.owner-select{width:14rem;flex:0 0 auto}.checks.rights{flex-direction:column;align-items:flex-start}.toast-stack{position:fixed;top:.8rem;left:50%;transform:translate(-50%);z-index:40;display:flex;flex-direction:column;gap:.4rem;width:min(440px,calc(100% - 1.5rem));pointer-events:none}.toast{pointer-events:auto;text-align:left;border:0;border-radius:12px;padding:.7rem .9rem;background:#fff;color:var(--ink);box-shadow:var(--shadow);animation:toast-in .2s ease}.toast.ok{background:#e3f5ec;color:#146b45}.toast.bad{background:#fdeceb;color:var(--danger)}.toast.leaving{animation:toast-out .22s ease forwards}.veil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#1c191647;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:1rem;animation:fade-in .16s ease}.veil-card{background:#fff;border-radius:14px;padding:.9rem 1.1rem;box-shadow:var(--shadow);font-weight:650}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:none}}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes toast-out{to{opacity:0;transform:translateY(-8px)}}@media (prefers-reduced-motion: reduce){.modal,.modal-back,.toast,.toast.leaving{animation:none}}.qr{width:min(280px,100%);background:#fff;border-radius:12px;display:block;margin:.6rem auto}.pair-code{font-size:1.6rem;letter-spacing:.12em;text-align:center;margin:.8rem 0}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d1;display:grid;place-items:center;z-index:6;padding:1rem}.lightbox img{max-width:100%;max-height:100%}@media (max-width: 800px){.shell{grid-template-columns:1fr;grid-template-rows:1fr auto}.nav{flex-direction:row;justify-content:space-around;order:2;width:100%;padding-bottom:calc(.35rem + var(--safe-bottom))}.nav .spacer,.nav .who{display:none}.nav button{font-size:.72rem}.inbox{grid-template-columns:1fr}.inbox.thread-open .chats,.inbox.list-open .thread{display:none}.back{display:inline-flex}.grid-2{grid-template-columns:1fr}.preview{max-width:11rem}.thread-head{flex-wrap:wrap}.status-select{width:100%;margin-left:0}.filter-bar select{min-width:0}.staff-row{grid-template-columns:1fr}.unassigned-row{flex-wrap:wrap}.unassigned-actions{margin-left:0;flex-wrap:wrap}.owner-select{width:100%}}
