.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#team-chat{--chat-blue:#315ed5;--chat-ink:#183352;--chat-muted:#6e8199;color:var(--chat-ink)}
#chat-launcher{position:fixed;bottom:22px;right:24px;z-index:40;display:flex;align-items:center;gap:10px;padding:13px 19px;border:1px solid #254bb5;border-radius:30px;background:var(--chat-blue);color:white;box-shadow:0 5px 20px #24499230;font-weight:650}
#chat-launcher svg,.chat-empty svg{width:23px;height:23px}#chat-unread,.team-count{border-radius:20px;background:#fff;color:#315ed5;padding:2px 7px;font-size:11px}
#chat-panel{position:fixed;right:24px;bottom:86px;width:380px;height:min(570px,calc(100dvh - 110px));z-index:41;display:flex;flex-direction:column;background:white;border:1px solid #dce5f1;border-radius:20px;box-shadow:0 16px 65px #18335229;overflow:hidden;animation:chat-enter .18s ease-out}
#chat-panel[hidden],#online-notice[hidden],#team-chat[hidden],#chat-unread[hidden],#chat-older[hidden]{display:none}
#chat-panel header{display:flex;align-items:center;gap:12px;padding:18px;background:#f5f8fd;border-bottom:1px solid #e5edf7}#chat-panel header>div{flex:1;min-width:0}#chat-peer{border:0;background:transparent;color:var(--chat-ink);padding:0 20px 0 0;margin:0;min-height:24px;font-weight:700;max-width:100%;width:auto}#chat-status{display:block;color:var(--chat-muted);font-size:11px;margin-top:4px}#chat-status.is-online{color:#11836d}.chat-avatar{background:#e5eaff;color:#315ed5;border-radius:15px;width:43px;height:43px;display:grid;place-items:center;font-weight:700}
#chat-close,#notice-close{border:0;background:transparent;color:#6e8199;font-size:25px;padding:2px 7px;line-height:1.2}#chat-close:hover,#notice-close:hover{background:#e8eef7;border-radius:8px}.chat-private{text-align:center;color:#8a99ad;font-size:10px;padding:9px;border-bottom:1px solid #f0f3f8}
#chat-messages{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:16px;scrollbar-width:thin}#chat-lines{display:flex;flex-direction:column;gap:9px}.chat-day{text-align:center;font-size:10px;color:#7a8ba2;margin:10px 0}.chat-message{max-width:87%;padding:10px 13px;border-radius:14px;background:#f0f4fa;align-self:flex-start;min-width:68px}.chat-message.mine{align-self:flex-end;background:#315ed5;color:#fff;border-bottom-right-radius:4px}.chat-message.theirs{border-bottom-left-radius:4px}.chat-message p{font-size:13px;line-height:1.55;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.chat-message time{display:block;text-align:right;font-size:9px;opacity:.65;margin-top:5px}.chat-empty{padding:38px 12px;text-align:center;color:#7a8ba2}.chat-empty svg{width:36px;height:36px;margin-bottom:12px}.chat-empty strong{display:block;color:#34506f;font-size:15px}.chat-empty p{font-size:12px;line-height:1.6}
#chat-older{display:block;margin:0 auto 12px;border:0;background:#f0f4fa;border-radius:16px;padding:7px 12px;font-size:11px;color:#315ed5}#chat-form{padding:12px 15px 10px;border-top:1px solid #e5edf7;display:grid;grid-template-columns:1fr 38px;gap:7px;background:#fff}#chat-input{min-height:44px;max-height:100px;resize:vertical;border:1px solid #dce5f1;border-radius:12px;padding:10px;font:inherit;font-size:13px;margin:0;width:100%}#chat-send{align-self:end;height:38px;border:0;border-radius:12px;background:var(--chat-blue);color:white;font-size:23px}#chat-form small{grid-column:1/-1;color:#8a99ad;font-size:9px}#chat-error{color:#b83c48;font-size:11px;padding:0 16px}#chat-error:not(:empty){padding:8px 16px}#chat-send:disabled{opacity:.5}
#online-notice{position:fixed;top:80px;right:24px;z-index:50;display:flex;align-items:center;gap:10px;padding:13px 14px;background:white;border:1px solid #dce5f1;border-radius:14px;box-shadow:0 8px 30px #18335220;font-size:13px;animation:chat-enter .2s ease-out}.chat-online-dot{width:9px;height:9px;border-radius:50%;background:#18ac87;box-shadow:0 0 0 4px #e2f6ee}#notice-chat{border:0;background:#edf2ff;color:#315ed5;padding:6px 9px;border-radius:7px;font-size:11px}.team-contact{display:flex;align-items:center;gap:10px;width:100%;border:0;border-radius:10px;background:transparent;text-align:left;padding:10px 6px;color:inherit;font:inherit;font-size:12px}.team-contact:hover:not(:disabled){background:#e7edf8}.team-contact:disabled{opacity:1;cursor:default}.team-contact>span:nth-child(2){flex:1}.team-contact small{display:block;color:#7a8ba2;font-size:10px;margin-top:3px}.team-contact .presence{position:static;flex-shrink:0}.team-count{background:#315ed5;color:white}
@keyframes chat-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){#chat-launcher{right:14px;bottom:14px;padding:12px 15px}#chat-panel{right:10px;left:10px;width:auto;bottom:74px;height:min(560px,calc(100dvh - 90px))}#online-notice{top:12px;right:10px;left:10px;font-size:12px}#online-notice-text{flex:1}}
@media(prefers-reduced-motion:reduce){#chat-panel,#online-notice{animation:none}}
