.msg{position:relative;max-width:min(78vw,520px);background:var(--other);border-radius:14px;padding:8px 12px 6px;align-self:flex-end;word-break:break-word;white-space:pre-wrap;line-height:1.7;font-size:18px;touch-action:pan-y;font-family:"Koodak","Vazirmatn",Tahoma,sans-serif}
.msg.me{align-self:flex-start;background:var(--mine)}
.msg.st{padding:4px}
.msg:not(.me){margin-left:50px}
.msg:not(.gl){margin-bottom:-6px}
.msg:not(.me).gl{border-bottom-left-radius:0}
.msg.me.gl{border-bottom-right-radius:0}
.msg.gl:not(.st)::after{content:"";position:absolute;bottom:0;width:9px;height:12px;background:inherit}
.msg:not(.me).gl:not(.st)::after{left:-8px;clip-path:polygon(100% 0,100% 100%,0 100%)}
.msg.me.gl:not(.st)::after{right:-8px;clip-path:polygon(0 0,0 100%,100% 100%)}
.msg>.av{position:absolute;left:-48px;bottom:0;width:40px;height:40px;font-size:18px;cursor:pointer}
.msg:not(.me):not(.gl)>.av{display:none}
.msg:not(.me):not(.gf)>.nm{display:none}
html.pf .msg,html.pf #mes{font-family:"Vazirmatn","Segoe UI",Tahoma,"Noto Sans Arabic",sans-serif;font-weight:400}

.nm{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;color:var(--name);font-weight:600;line-height:1.3;margin-bottom:2px}
.time{font-family:Tahoma,Arial,sans-serif;display:block;text-align:right;direction:ltr;font-size:12px;line-height:1.2;color:var(--muted);margin-top:2px;white-space:nowrap}
.time .edt{margin-inline-end:5px;font-size:11px}
.tick{display:inline-block;vertical-align:-1px;margin-inline-start:4px;line-height:0;color:inherit}
.media{position:relative}
.media .time{position:absolute;right:6px;bottom:6px;margin:0;background:#000a;color:#fff;border-radius:99px;padding:1px 8px}
.msg img,.msg video{display:block;max-width:100%;height:auto;border-radius:10px}
.msg video.stk,.msg img.stk{width:260px}
.msg video.stk:not([src]){height:150px;background:#8882}
.msg img.pic{max-height:380px;cursor:zoom-in}
.msg .cap{margin-top:4px}
.msg.sel{outline:2px solid var(--accent);outline-offset:2px}
.msg.flash{animation:fl 1.8s}
@keyframes fl{0%,55%{box-shadow:0 0 0 4px var(--accent)}100%{box-shadow:0 0 0 0 #0000}}

.lnk{color:var(--send);text-decoration:underline;text-underline-offset:2px;word-break:break-all;unicode-bidi:isolate}
.msg.me .lnk{color:#9fd3ff}
.mention{color:var(--send);cursor:pointer;unicode-bidi:isolate;direction:ltr}
.msg.me .mention{color:#9fd3ff}
.quote{cursor:pointer;background:#8882;border-inline-start:3px solid var(--accent);border-radius:4px 8px 8px 4px;padding:2px 8px;margin:4px 0;font-size:14px;line-height:1.5}
.quote b{display:block;color:var(--name)}
.quote span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fcard{display:flex;gap:10px;align-items:center;color:inherit;text-decoration:none;background:#0001;border-radius:10px;padding:8px 10px;min-width:210px}
.fcard i{font-style:normal;font-size:28px}
.fcard span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:230px;font-size:16px}
.fcard small{direction:ltr;display:block;color:var(--muted);text-align:right}

.sysm{align-self:center;max-width:min(90vw,520px);background:#0007;color:#fff;border-radius:14px;padding:5px 14px;font-size:14px;line-height:1.6;text-align:center;white-space:pre-wrap;word-break:break-word}

.av{width:22px;height:22px;border-radius:50%;flex:none;display:inline-grid;place-items:center;overflow:hidden;color:#fff;font:600 12px Tahoma,sans-serif;background:#889}
.av img{width:100%;height:100%;object-fit:cover;display:block;border-radius:0}

.rxs{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px;white-space:normal;direction:rtl}
.rxs:empty{display:none}
.rx{display:inline-flex;align-items:center;gap:4px;height:30px;border:0;border-radius:99px;padding:0 4px 0 9px;background:var(--chip);color:inherit;cursor:pointer;direction:ltr;transition:transform .12s}
.rx:active{transform:scale(.92)}
.rx.mine{background:var(--send);color:#fff}
.rx .re{font-size:17px;line-height:1}
.rx .ravs{display:inline-flex;align-items:center}
.rx .ravs .av{width:24px;height:24px;font-size:11px;border:2px solid var(--other)}
.msg.me .rx .ravs .av{border-color:var(--mine)}
.rx.mine .ravs .av{border-color:var(--send)}
.rx .ravs .av+.av{margin-left:-9px}
.rx .rn{font:13px Tahoma,sans-serif;padding-right:4px}

body.selmode .msg,body.selmode .sysm{cursor:pointer}
body.selmode .sysm{position:relative}
body.selmode .msg::before,body.selmode .sysm::before{content:"";position:absolute;z-index:1;top:-7px;inset-inline-end:-7px;width:22px;height:22px;border-radius:50%;border:2px solid #fffa;background:#0005;box-sizing:border-box}
.msg.picked,.sysm.picked{box-shadow:0 0 0 2px var(--send)}
body.selmode .msg.picked::before,body.selmode .sysm.picked::before{border-color:var(--send);background:var(--send) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/13px no-repeat}

.aud,.vp{direction:ltr}
.aud{display:flex;align-items:center;gap:10px;min-width:240px}
.pb{flex:none;width:44px;height:44px;border:0;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;cursor:pointer;padding:0}
.ai{flex:1;min-width:0}
.at{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.am{display:flex;justify-content:space-between;align-items:center;font:12px Tahoma,sans-serif;color:var(--muted)}
.am button{border:0;background:#8883;border-radius:99px;padding:0 8px;cursor:pointer;color:inherit;font:inherit}
.seek{position:relative;flex:1;height:18px;cursor:pointer;touch-action:none}
.seek::before{content:"";position:absolute;inset:7px 0 auto;height:4px;border-radius:9px;background:#8885}
.sf{position:absolute;left:0;top:7px;height:4px;border-radius:9px;background:var(--accent)}
.sk{position:absolute;top:9px;left:0;width:12px;height:12px;border-radius:50%;background:var(--accent);transform:translate(-50%,-50%)}
.vp{position:relative;width:340px;max-width:100%;border-radius:12px;overflow:hidden;background:#000}
.vp video{width:100%;max-height:380px;display:block;border-radius:0}
.vbig{position:absolute;inset:0;margin:auto;width:56px;height:56px;border:0;border-radius:50%;background:#000a;color:#fff;display:none;place-items:center;cursor:pointer;padding:0}
.vp.paused .vbig{display:grid}
.vb{position:absolute;inset:auto 0 0;display:flex;align-items:center;gap:6px;padding:16px 8px 6px;background:linear-gradient(#0000,#000b);color:#fff;font:12px Tahoma,sans-serif;transition:opacity .25s}
.vp.hide .vb{opacity:0}
.vb button{border:0;background:none;color:#fff;cursor:pointer;display:grid;place-items:center;padding:2px}
.vb .sf,.vb .sk{background:#fff}
.vp:fullscreen{width:100%;border-radius:0;display:flex;align-items:center}
.vp:fullscreen video{max-height:100vh;height:100%;object-fit:contain}

#swi{position:fixed;right:14px;width:32px;height:32px;border-radius:50%;background:#0007;color:#fff;display:grid;place-items:center;opacity:0;pointer-events:none;z-index:4}
#swi.ok{background:var(--accent)}

#chat.pv .msg>.av,#chat.pv .msg>.nm{display:none}
#chat.pv .msg:not(.me){margin-left:0}
