:root,[data-theme=light]{--cv: #f7f8fa;--sf: #ffffff;--bd: #e6e8ec;--hv: #f0f2f5;--t1: #15181d;--t2: #5b6470;--t3: #8a929e;--br: #1c5fb8;--br-h: #174f9c;--br-s: #eaf1fb;--ur: #e5484d;--ok: #30a46c;--bi: #f0f2f5;--bit: #15181d;--bo: #1c5fb8;--bot: #ffffff;--shd: 0 2px 8px rgba(15, 18, 21, .08);--shd-md: 0 10px 30px rgba(15, 18, 21, .14);--ui-zoom: 1.25}[data-theme=dark]{--cv: #0f1115;--sf: #171a21;--bd: #262a33;--hv: #1d2129;--t1: #e8eaed;--t2: #9aa3af;--t3: #6b7280;--br: #4a90e2;--br-h: #5a9fe8;--br-s: #16263d;--ur: #e5484d;--ok: #30a46c;--bi: #222630;--bit: #e8eaed;--bo: #2b6cb0;--bot: #ffffff;--shd: 0 2px 8px rgba(0, 0, 0, .3);--shd-md: 0 10px 30px rgba(0, 0, 0, .45)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--cv);color:var(--t1);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow:hidden}button{font-family:inherit}.app{display:flex;width:calc(100vw / var(--ui-zoom));height:calc(100vh / var(--ui-zoom));overflow:hidden;zoom:var(--ui-zoom)}.main{flex:1;display:flex;overflow:hidden;min-width:0}.rail{width:64px;flex-shrink:0;background:var(--sf);border-right:1px solid var(--bd);display:flex;flex-direction:column;align-items:center;padding:14px 0 12px}.rail-logo{width:32px;height:32px;border-radius:8px;background:var(--br);color:#fff;font-size:11px;font-weight:800;letter-spacing:-.02em;display:flex;align-items:center;justify-content:center;margin-bottom:16px;flex-shrink:0}.rail-nav{display:flex;flex-direction:column;align-items:center;gap:2px;flex:1}.rail-foot{display:flex;flex-direction:column;align-items:center;gap:6px;padding-top:10px;border-top:1px solid var(--bd);width:100%}.rbtn{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--t3);border:none;background:transparent;transition:background .12s,color .12s;position:relative}.rbtn:hover{background:var(--hv);color:var(--t2)}.rbtn.act{background:var(--br-s);color:var(--br)}.rbtn:focus-visible{outline:2px solid var(--br);outline-offset:1px}.rail-av{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff;cursor:default}.nav-badge{position:absolute;top:3px;right:3px;min-width:16px;height:16px;border-radius:8px;background:var(--ur);color:#fff;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 3px}.inbox-area{flex:1;overflow:hidden;display:flex;min-width:0}.conv-panel{width:340px;flex-shrink:0;background:var(--sf);border-right:1px solid var(--bd);display:flex;flex-direction:column;overflow:hidden}.conv-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;flex-shrink:0}.panel-title{font-size:15px;font-weight:600;color:var(--t1)}.panel-count{font-size:12px;color:var(--t3);font-weight:500}.srch-row{padding:0 12px 8px;flex-shrink:0}.srch-wrap{position:relative}.srch-ico{position:absolute;left:9px;top:50%;transform:translateY(-50%);color:var(--t3);pointer-events:none}.srch-in{width:100%;padding:8px 30px;background:var(--hv);border:1px solid transparent;border-radius:8px;font-size:13px;color:var(--t1);font-family:inherit;outline:none;transition:border-color .15s,background .15s}.srch-in::placeholder{color:var(--t3)}.srch-in:focus{background:var(--sf);border-color:var(--br)}.srch-clear{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:20px;height:20px;border:none;background:transparent;color:var(--t3);font-size:16px;line-height:1;cursor:pointer;border-radius:4px}.srch-clear:hover{background:var(--bd);color:var(--t1)}.chips{display:flex;gap:5px;padding:0 12px 10px;flex-shrink:0;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500;color:var(--t2);border:1px solid var(--bd);background:transparent;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .12s}.chip:hover{background:var(--hv);color:var(--t1);border-color:transparent}.chip.on{background:var(--br-s);border-color:transparent;color:var(--br);font-weight:600}.conv-scroll{flex:1;overflow-y:auto;padding:4px 8px 8px}.conv-empty{padding:32px 16px;text-align:center;color:var(--t3);font-size:13px}.conv-item{display:flex;align-items:center;gap:10px;padding:10px;border-radius:8px;cursor:pointer;transition:background .12s;margin-bottom:1px;position:relative}.conv-item:hover{background:var(--hv)}.conv-item.sel{background:var(--br-s)}.conv-item.sel:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--br)}.cav{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}.cinfo{flex:1;min-width:0}.crow1{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:3px}.cname{font-size:13.5px;font-weight:500;color:var(--t1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cname.bold{font-weight:700}.ctime{font-size:11.5px;color:var(--t3);white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0}.crow2{display:flex;align-items:center;gap:5px}.cprev{font-size:12.5px;color:var(--t2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.conv-item.unread .cprev{color:var(--t1);font-weight:500}.dir-arrow{flex-shrink:0;color:var(--t3)}.dir-arrow.out{color:var(--br)}.cbadge{min-width:18px;height:18px;border-radius:9px;background:var(--ur);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px;flex-shrink:0}.cassign{font-size:11px;color:var(--br);margin-top:3px;font-weight:500}.thread{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--cv);min-width:0}.thread-head{display:flex;align-items:center;justify-content:space-between;padding:11px 18px;border-bottom:1px solid var(--bd);background:var(--sf);flex-shrink:0;gap:12px}.thead-l{display:flex;align-items:center;gap:10px;min-width:0}.tav{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0}.tname{font-size:14px;font-weight:600;color:var(--t1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tnum{font-size:12px;color:var(--t3);margin-top:1px;font-variant-numeric:tabular-nums}.thead-r{display:flex;align-items:center;gap:8px;flex-shrink:0}.asgn-lbl{font-size:12px;color:var(--t3)}.asgn-sel{padding:5px 8px;background:var(--hv);border:1px solid var(--bd);border-radius:6px;font-size:12.5px;font-weight:500;color:var(--t1);font-family:inherit;outline:none;cursor:pointer;transition:border-color .15s}.asgn-sel:focus{border-color:var(--br)}.msg-area{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:8px}.thread-empty{padding:24px;color:var(--t3);text-align:center}.date-sep{align-self:center;font-size:11.5px;color:var(--t3);padding:6px 0;margin:2px 0;text-align:center}.msg-wrap{display:flex;flex-direction:column;gap:4px;max-width:64%}.msg-wrap.in{align-self:flex-start;align-items:flex-start}.msg-wrap.out{align-self:flex-end;align-items:flex-end}.bubble{padding:8px 12px;font-size:14px;line-height:1.55;white-space:pre-wrap;word-break:break-word}.bubble.in{background:var(--bi);color:var(--bit);border-radius:2px 10px 10px}.bubble.out{background:var(--bo);color:var(--bot);border-radius:10px 2px 10px 10px}.msg-meta{font-size:11.5px;color:var(--t3);display:flex;align-items:center;gap:5px}.chk-ok{color:var(--ok)}.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--t3)}.empty-ico{color:var(--bd);margin-bottom:6px}.empty-ttl{font-size:14px;font-weight:500;color:var(--t2)}.empty-sub{font-size:13px}.reply-bar{padding:10px 14px 14px;background:var(--sf);border-top:1px solid var(--bd);flex-shrink:0}.reply-inner{display:flex;gap:10px;align-items:flex-end;background:var(--cv);border:1px solid var(--bd);border-radius:8px;padding:8px 10px;transition:border-color .15s}.reply-inner:focus-within{border-color:var(--br)}.reply-ta{flex:1;background:transparent;border:none;outline:none;resize:none;font-size:13.5px;color:var(--t1);font-family:inherit;line-height:1.5;min-height:22px;max-height:120px}.reply-ta::placeholder{color:var(--t3)}.send-btn{padding:7px 16px;background:var(--br);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .12s;flex-shrink:0}.send-btn:hover{background:var(--br-h)}.send-btn:disabled{opacity:.5;cursor:not-allowed}.send-btn:focus-visible{outline:2px solid var(--br);outline-offset:2px}.thread-err{padding:8px 20px;color:var(--ur);font-size:13px;background:var(--sf)}.team-area{flex:1;overflow:hidden;display:flex;min-width:0}.team-main{flex:1;overflow-y:auto;padding:24px 28px}.pg-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.pg-title{font-size:16px;font-weight:700;color:var(--t1)}.pg-sub{font-size:13px;color:var(--t3);margin-top:2px}.cnt-pill{padding:4px 10px;border-radius:6px;background:var(--hv);border:1px solid var(--bd);font-size:12px;font-weight:600;color:var(--t2);white-space:nowrap}.mem-row{display:flex;align-items:center;gap:14px;padding:13px 16px;background:var(--sf);border:1px solid var(--bd);border-radius:10px;margin-bottom:6px;transition:box-shadow .15s}.mem-row:hover{box-shadow:var(--shd)}.mav{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}.minfo{flex:1;min-width:0}.mname{font-size:13.5px;font-weight:600;color:var(--t1)}.memail{font-size:12px;color:var(--t3);margin-top:1px;font-family:SFMono-Regular,Consolas,monospace}.rpill{padding:3px 9px;border-radius:6px;font-size:11.5px;font-weight:600}.rpill.admin{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.rpill.agent{background:#dbeafe;color:#1e40af;border:1px solid #bfdbfe}[data-theme=dark] .rpill.admin{background:#fbbf241f;color:#fbbf24;border-color:#fbbf2447}[data-theme=dark] .rpill.agent{background:#4a90e21f;color:#4a90e2;border-color:#4a90e247}.mstatus{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500}.mstatus.active{color:var(--ok)}.mstatus.inactive{color:var(--t3)}.sdot{width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}.add-panel{width:300px;flex-shrink:0;padding:24px 20px;border-left:1px solid var(--bd);background:var(--sf);overflow-y:auto}.add-title{font-size:14px;font-weight:700;color:var(--t1);margin-bottom:18px}.fg{margin-bottom:13px}.fl{display:block;font-size:11.5px;font-weight:600;color:var(--t2);margin-bottom:5px}.fi,.fsel{width:100%;padding:9px 10px;background:var(--cv);border:1px solid var(--bd);border-radius:8px;font-size:13px;color:var(--t1);font-family:inherit;outline:none;transition:border-color .15s}.fi::placeholder{color:var(--t3)}.fi:focus,.fsel:focus{border-color:var(--br)}.fsel{cursor:pointer}.fdiv{height:1px;background:var(--bd);margin:18px 0}.create-btn{width:100%;padding:10px;background:var(--br);color:#fff;border:none;border-radius:8px;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .12s}.create-btn:hover{background:var(--br-h)}.create-btn:disabled{opacity:.55;cursor:not-allowed}.form-err{color:var(--ur);font-size:12.5px;margin-bottom:10px}.form-ok{color:var(--ok);font-size:12.5px;margin-bottom:10px}.auth-shell{width:calc(100vw / var(--ui-zoom));height:calc(100vh / var(--ui-zoom));zoom:var(--ui-zoom);display:flex;align-items:center;justify-content:center;background:var(--cv);padding:24px}.auth-card{width:360px;background:var(--sf);border:1px solid var(--bd);border-radius:16px;padding:32px;box-shadow:var(--shd-md)}.auth-logo{width:44px;height:44px;border-radius:12px;background:var(--br);color:#fff;font-size:15px;font-weight:800;display:flex;align-items:center;justify-content:center;margin-bottom:18px}.auth-card h1{font-size:22px;font-weight:700;color:var(--t1)}.auth-sub{font-size:13px;color:var(--t3);margin:4px 0 22px}.auth-card .fg{margin-bottom:14px}.auth-card .create-btn{margin-top:6px}.toast-stack{position:fixed;top:16px;right:16px;z-index:50;display:flex;flex-direction:column;gap:10px;width:320px}.toast{display:flex;align-items:flex-start;gap:10px;background:var(--sf);border:1px solid var(--bd);border-left:3px solid var(--br);border-radius:10px;padding:12px;box-shadow:var(--shd-md);cursor:pointer;animation:toast-in .22s ease-out}@keyframes toast-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.toast-icon{color:var(--br);flex-shrink:0;margin-top:1px}.toast-body{flex:1;min-width:0}.toast-title{font-weight:600;font-size:13.5px;color:var(--t1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toast-preview{color:var(--t2);font-size:13px;margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.toast-close{border:none;background:transparent;font-size:18px;line-height:1;cursor:pointer;color:var(--t3);padding:0 2px}.toast-close:hover{color:var(--t1)}.conv-scroll::-webkit-scrollbar,.msg-area::-webkit-scrollbar,.team-main::-webkit-scrollbar,.add-panel::-webkit-scrollbar{width:4px}.conv-scroll::-webkit-scrollbar-thumb,.msg-area::-webkit-scrollbar-thumb,.team-main::-webkit-scrollbar-thumb,.add-panel::-webkit-scrollbar-thumb{background:var(--bd);border-radius:4px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0c1080;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.modal-card{zoom:var(--ui-zoom);width:380px;max-width:100%;background:var(--sf);border:1px solid var(--bd);border-radius:14px;box-shadow:var(--shd-md);overflow:hidden}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:15px 18px 12px;border-bottom:1px solid var(--bd)}.modal-title{font-size:15px;font-weight:700;color:var(--t1)}.modal-close{border:none;background:transparent;font-size:20px;line-height:1;color:var(--t3);cursor:pointer;width:28px;height:28px;border-radius:6px}.modal-close:hover{background:var(--hv);color:var(--t1)}.modal-body{padding:16px 18px 18px}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:6px}.btn-secondary{padding:9px 14px;background:var(--hv);color:var(--t1);border:1px solid var(--bd);border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}.btn-secondary:hover{background:var(--bd)}.btn-secondary:disabled{opacity:.55;cursor:not-allowed}.btn-secondary.full{width:100%}.modal-or{text-align:center;font-size:12px;color:var(--t3);margin:14px 0;position:relative}.modal-or:before,.modal-or:after{content:"";position:absolute;top:50%;width:42%;height:1px;background:var(--bd)}.modal-or:before{left:0}.modal-or:after{right:0}.temp-box{display:flex;align-items:center;gap:8px;background:var(--cv);border:1px solid var(--bd);border-radius:8px;padding:10px 12px;margin:10px 0 14px}.temp-box code{flex:1;font-size:15px;font-weight:600;letter-spacing:1px;color:var(--t1);font-family:SFMono-Regular,Consolas,monospace;word-break:break-all}.copy-btn{padding:6px 12px;background:var(--br);color:#fff;border:none;border-radius:6px;font-size:12.5px;font-weight:600;cursor:pointer;flex-shrink:0}.copy-btn:hover{background:var(--br-h)}.hint{font-size:12.5px;color:var(--t2);margin-bottom:4px;line-height:1.45}.row-action{padding:6px 11px;background:transparent;border:1px solid var(--bd);border-radius:7px;font-size:12.5px;font-weight:600;color:var(--t2);cursor:pointer;white-space:nowrap;flex-shrink:0}.row-action:hover{background:var(--hv);color:var(--t1)}.thread-back{display:none;width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--t2);cursor:pointer;align-items:center;justify-content:center;flex-shrink:0;margin-right:2px}.thread-back:hover{background:var(--hv)}@media (max-width: 820px){:root{--ui-zoom: 1}.app,.auth-shell{width:100vw;height:100vh}.inbox-area{position:relative}.conv-panel{width:100%;border-right:none}.thread{width:100%}.inbox-area.has-selection .conv-panel{display:none}.inbox-area:not(.has-selection) .thread{display:none}.thread-back{display:inline-flex}.thread-head{flex-wrap:wrap;gap:8px}.team-area{flex-direction:column;overflow-y:auto}.team-main{overflow:visible;padding:18px 16px}.add-panel{width:100%;border-left:none;border-top:1px solid var(--bd)}}@media (max-width: 420px){.rail{width:54px}.msg-wrap{max-width:82%}}
