:root{color-scheme:light;--tg-blue: #2aabee;--tg-blue-deep: #1e96d1;--tg-blue-soft: #e7f4fc;--tg-green: #0ac630;--page: #0e1621;--bg: #f0f2f5;--sidebar: #ffffff;--sidebar-hover: #f4f4f5;--sidebar-active: #c2e1f7;--chat-top: #6b9bc3;--chat-bottom: #8eb0c9;--text: #0f1419;--muted: #707579;--line: #e4e7eb;--bubble-in: #ffffff;--bubble-out: #effdde;--danger: #e53935;--shadow-sm: 0 1px 2px rgba(16, 35, 47, .06);--shadow-md: 0 8px 28px rgba(14, 22, 33, .18);--radius: 16px;--font: "PingFang SC", "Hiragino Sans GB", "Segoe UI", "Microsoft YaHei", system-ui, sans-serif;font-family:var(--font);line-height:1.45;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;height:100dvh;max-height:100dvh;width:100%;max-width:100%;background:var(--page);color:var(--text);overflow:hidden;overflow-x:hidden;overscroll-behavior-x:none}#root>.welcome{height:100%;max-width:100%;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}body{background:radial-gradient(1200px 600px at 10% -10%,#1a3a55 0%,transparent 55%),radial-gradient(900px 500px at 100% 0%,#122433 0%,transparent 50%),var(--page);-webkit-tap-highlight-color:transparent;touch-action:manipulation;overscroll-behavior-x:none}button,input,select{font:inherit}button{transition:background .15s ease,color .15s ease,transform .1s ease,box-shadow .15s ease}a{color:inherit}.muted{color:var(--muted)}.tiny{font-size:12px}.center-text{text-align:center}.err{color:var(--danger);margin:.75rem 0 0;font-size:.9rem}.btn{border:0;border-radius:12px;padding:.72rem 1.05rem;cursor:pointer;font-weight:600}.btn.primary{background:linear-gradient(180deg,#3bb4f0 0%,var(--tg-blue) 100%);color:#fff;box-shadow:0 4px 14px #2aabee59}.btn.primary:hover:not(:disabled){background:linear-gradient(180deg,#2aabee 0%,var(--tg-blue-deep) 100%)}.btn.primary:active:not(:disabled){transform:translateY(1px)}.btn.ghost{background:#eef1f4;color:var(--text)}.btn.ghost:hover:not(:disabled){background:#e4e8ed}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn.wide{width:100%}.btn.send{width:48px;height:48px;border-radius:50%;padding:0;display:grid;place-items:center}.btn.send svg{margin-left:1px}.desktop-frame{height:100%;height:100dvh;width:100%;max-width:100%;display:grid;place-items:center;padding:18px;overflow:hidden;overflow-x:hidden}.app-shell{width:min(1180px,100%);height:min(860px,100%);max-width:100%;display:flex;flex-direction:column;min-height:0;min-width:0;background:var(--bg);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid rgba(255,255,255,.06)}.app-body{flex:1;min-height:0;min-width:0;overflow:hidden;display:flex;flex-direction:column}.app-body>*{flex:1;min-height:0;min-width:0;width:100%;max-width:100%}.sc-motion-host{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;width:100%;height:100%;overflow:hidden}.sc-motion-host>.module-pane,.sc-motion-host>.sc-motion,.sc-motion-host>.tg-group-form{flex:1;min-height:0}.sc-motion{height:100%;width:100%;min-height:0;min-width:0;display:flex;flex-direction:column;will-change:opacity,transform}.sc-motion--fade{animation:sc-enter-fade .22s cubic-bezier(.22,1,.36,1) both}.sc-motion--forward,.sc-motion--from-right{animation:sc-enter-from-right .26s cubic-bezier(.22,1,.36,1) both}.sc-motion--back,.sc-motion--from-left{animation:sc-enter-from-left .26s cubic-bezier(.22,1,.36,1) both}@keyframes sc-enter-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes sc-enter-from-right{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes sc-enter-from-left{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes sc-tab-pop{0%{transform:scale(1)}45%{transform:scale(1.12)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.sc-motion--fade,.sc-motion--forward,.sc-motion--back,.sc-motion--from-left,.sc-motion--from-right,.chats-pane.has-active .main,.tab-bar button.active .sc-nav-icon,.msg-ctx-card,.msg-actions-backdrop,.msg-react-btn,.msg-reaction-chip,.msg-reaction-chip.mine .msg-reaction-emoji,.day-chip,.unread-sep,.jump-latest-fab,.timeline-history-hint{animation:none!important}.msg-react-btn,.msg-reaction-chip,.jump-latest-fab,.main-head-text.as-button,.sc-group-info-leave{transition:none!important;transform:none!important}}.desktop-frame.is-desktop .app-shell{width:min(1440px,calc(100vw - 48px));height:min(920px,calc(100dvh - 48px))}.desktop-frame.is-tablet{padding:10px}.desktop-frame.is-tablet .app-shell{width:100%;height:100%;border-radius:14px}.desktop-frame.is-mobile{padding:0;place-items:stretch;width:100%;max-width:100%;overflow:hidden}.desktop-frame.is-mobile .app-shell{width:100%;height:100%;max-width:100%;max-height:100dvh;border-radius:0;border:0;box-shadow:none;padding-top:env(safe-area-inset-top,0);background:var(--bg)}.desktop-frame.immersive-chat .tab-bar,.desktop-frame.immersive-contacts .tab-bar,.tab-bar.hidden{display:none}@media(max-width:860px){.desktop-frame{padding:0}.app-shell{width:100%;height:100%;border-radius:0;border:0}}.welcome{min-height:100%;min-height:100dvh;width:100%;max-width:100%;display:grid;place-items:center;padding:max(1.5rem,env(safe-area-inset-top,0)) 1.5rem max(1.5rem,env(safe-area-inset-bottom,0));background:radial-gradient(900px 480px at 15% 0%,rgba(42,171,238,.28),transparent 60%),radial-gradient(700px 420px at 95% 100%,rgba(10,198,48,.1),transparent 50%),linear-gradient(160deg,#0f1c2a,#173149 45%,#1a3d5c);overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.welcome-card{width:min(400px,100%);background:#fffffffa;border-radius:24px;padding:2rem 1.6rem 1.5rem;box-shadow:0 24px 60px #00000059;text-align:center;animation:rise .45s ease}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.login-logo{width:84px;height:84px;margin:0 auto 1rem;border-radius:28px;background:linear-gradient(145deg,#5ec4f5,#2aabee 55%,#1e96d1);color:#fff;display:grid;place-items:center;font-weight:700;font-size:1.5rem;letter-spacing:.02em;box-shadow:0 14px 30px #2aabee73}.welcome-card h1{margin:0 0 .35rem;font-size:1.7rem;letter-spacing:-.03em;font-weight:700}.welcome-tagline{margin:0;font-size:.95rem}.login-card{text-align:left}.login-card>h1,.login-card>.muted,.login-card>.login-logo{text-align:center}.login-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.25rem;margin-top:1.1rem;padding:.22rem;border-radius:12px;background:#eef2f6}.login-mode-tabs button{border:0;border-radius:10px;padding:.55rem .5rem;font-weight:650;font-size:.9rem;color:var(--muted);background:transparent;cursor:pointer;transition:background .18s ease,color .18s ease,transform .12s ease}.login-mode-tabs button:active{transform:scale(.98)}.login-mode-tabs button.active{background:#fff;color:var(--text);box-shadow:0 1px 4px #0f172014}.login-form{display:flex;flex-direction:column;gap:.9rem;margin-top:1rem}.login-form label{display:flex;flex-direction:column;gap:.4rem;color:var(--muted);font-size:.86rem;font-weight:500}.login-form input,.lang-row select,.composer input,.panel-card input{width:100%;border-radius:14px;border:1px solid var(--line);background:#f5f7f9;color:var(--text);padding:.8rem .95rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.login-form input:focus,.composer input:focus,.lang-row select:focus,.panel-card input:focus{border-color:var(--tg-blue);box-shadow:0 0 0 4px #2aabee29;background:#fff}.row{display:flex;gap:.55rem}.row .btn{flex:1}.dev-hint{margin:0;font-size:.85rem;color:var(--tg-green);font-weight:600}.lang-row{display:flex;flex-direction:column;gap:.4rem;margin-top:1.25rem;text-align:left;color:var(--muted);font-size:.88rem}.lang-row .sc-select,.lang-row .sc-select__native{width:100%}.sidebar{background:var(--sidebar);border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0;min-width:0;max-width:100%;overflow:hidden}.side-head{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.95rem 1rem .7rem}.brand-row{display:flex;align-items:center;gap:.75rem;min-width:0}.brand-meta{display:flex;flex-direction:column;min-width:0}.brand-meta strong{font-size:1.05rem;font-weight:700;letter-spacing:-.02em}.status-dot{font-size:12px;color:var(--muted);font-weight:500}.status-dot.on{color:var(--tg-green)}.room-list{flex:1;min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-x:none}.pad{padding:1rem 1.1rem}.room-item{width:100%;border:0;background:transparent;display:grid;grid-template-columns:54px 1fr;gap:.75rem;align-items:center;padding:.6rem .9rem;cursor:pointer;text-align:left;color:var(--text);transition:background .15s ease,transform .12s ease}.room-item:active{transform:scale(.985)}.room-item:hover{background:var(--sidebar-hover)}.room-item.active{background:var(--sidebar-active)}.avatar{width:54px;height:54px;border-radius:50%;color:#fff;display:grid;place-items:center;font-weight:700;font-size:.95rem;flex-shrink:0;user-select:none;box-shadow:inset 0 -2px #00000014;overflow:hidden;position:relative}.avatar.has-img{background:#e8ecef!important;box-shadow:none;color:transparent}.avatar img{width:100%;height:100%;object-fit:cover;display:block}.avatar.sm{width:30px;height:30px;font-size:.68rem}.avatar.brand-avatar{width:42px;height:42px;font-size:.78rem;border-radius:14px}.avatar.xl{width:72px;height:72px;font-size:1.25rem;border-radius:50%}.room-body{min-width:0;display:flex;flex-direction:column;gap:.18rem}.room-top{display:flex;justify-content:space-between;gap:.5rem;align-items:baseline}.room-name{font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-time{font-size:12px;color:var(--muted);flex-shrink:0}.room-preview{font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.room-bottom{display:flex;align-items:center;gap:.45rem;min-width:0}.unread-badge{flex-shrink:0;min-width:1.25rem;height:1.25rem;padding:0 .35rem;border-radius:999px;background:var(--tg-blue);color:#fff;font-size:.7rem;font-weight:700;display:inline-grid;place-items:center;line-height:1}.enc-inline{display:inline-flex;align-items:center;gap:.25rem}.main{position:relative;min-width:0;min-height:0;display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 120px),radial-gradient(circle at 20% 10%,rgba(255,255,255,.16) 0 2px,transparent 3px),radial-gradient(circle at 70% 40%,rgba(255,255,255,.12) 0 1.5px,transparent 2.5px),linear-gradient(165deg,var(--chat-top),var(--chat-bottom));background-size:auto,42px 42px,36px 36px,auto}.main-head{display:flex;align-items:center;gap:.75rem;padding:.7rem 1rem;background:#fffffff0;border-bottom:1px solid rgba(0,0,0,.05);backdrop-filter:blur(12px);min-width:0}.main-head-text{min-width:0;flex:1;overflow:hidden}.main-head-text h1{margin:0;font-size:1rem;font-weight:700;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-head-text.as-button{appearance:none;border:0;background:transparent;padding:0;text-align:left;cursor:pointer;color:inherit;transition:opacity .16s ease,transform .12s ease}.main-head-text.as-button:hover{opacity:.82}.main-head-text.as-button:active{transform:scale(.99)}.main-head-text.as-button:disabled{opacity:.55;cursor:default;transform:none}.empty-main{margin:auto;text-align:center;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.2);padding:1.5rem}.empty-badge{display:inline-block;padding:.65rem 1.15rem;border-radius:999px;background:#0f141947;margin-bottom:.85rem;font-weight:650;backdrop-filter:blur(8px)}.timeline{flex:1;min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-x:none;padding:1.1rem 1.15rem .6rem;display:flex;flex-direction:column;gap:.5rem}.timeline-wrap{position:relative;flex:1;min-height:0;min-width:0;display:flex;flex-direction:column}.timeline-history-hint{align-self:center;font-size:.78rem;font-weight:650;color:#ffffffe0;background:#0f141947;padding:.35rem .85rem;border-radius:999px;margin-bottom:.35rem;animation:rise .18s ease}.day-chip{display:flex;justify-content:center;margin:.35rem 0 .15rem;animation:rise .18s ease}.day-chip span{font-size:.78rem;font-weight:650;color:#ffffffeb;background:#0f141947;padding:.28rem .75rem;border-radius:999px;backdrop-filter:blur(8px)}.unread-sep{display:flex;align-items:center;gap:.65rem;margin:.45rem 0 .25rem;animation:rise .2s ease}.unread-sep:before,.unread-sep:after{content:"";flex:1;height:1px;background:#e539358c}.unread-sep span{font-size:.78rem;font-weight:700;color:#ff8a80;white-space:nowrap}.jump-latest-fab{position:absolute;right:1rem;bottom:.75rem;z-index:5;border:0;border-radius:999px;padding:.55rem .95rem;font-weight:700;font-size:.85rem;color:#fff;background:var(--tg-blue);box-shadow:0 8px 22px #0f172038;cursor:pointer;animation:rise .2s ease;transition:transform .14s ease,background .15s ease}.jump-latest-fab:hover{background:var(--tg-blue-deep)}.jump-latest-fab:active{transform:scale(.97)}.sc-autolink{color:var(--tg-blue-deep);text-decoration:underline;text-underline-offset:2px;word-break:break-all}.bubble-row.mine .sc-autolink{color:#0b6fa4}.center{margin:auto;color:#ffffffeb}.bubble-row{display:flex;align-items:flex-end;gap:.4rem;max-width:100%;animation:bubble-in .18s ease;cursor:pointer}.bubble-col{display:flex;flex-direction:column;align-items:flex-start;min-width:0;max-width:min(520px,78%)}.bubble-row.mine .bubble-col{align-items:flex-end}.bubble-col .bubble{max-width:100%}@keyframes bubble-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.bubble-row.mine{justify-content:flex-end}.bubble{max-width:min(520px,78%);background:var(--bubble-in);border-radius:16px 16px 16px 6px;padding:.5rem .7rem .35rem;box-shadow:var(--shadow-sm)}.bubble-row.mine .bubble{background:var(--bubble-out);border-radius:16px 16px 6px}.sender{font-size:12px;font-weight:700;color:var(--tg-blue-deep);margin-bottom:.12rem}.body{white-space:pre-wrap;word-break:break-word;font-size:.95rem}.meta{text-align:right;font-size:11px;color:var(--muted);margin-top:.18rem}.composer{display:grid;grid-template-columns:44px minmax(0,1fr) 48px;gap:.45rem;align-items:center;padding:.7rem .85rem .9rem;background:#fffffff5;border-top:1px solid rgba(0,0,0,.05);min-width:0;width:100%;box-sizing:border-box}.composer-field{position:relative;min-width:0;display:flex;align-items:center}.composer-field input{width:100%;border-radius:24px;background:#fff;border:1px solid var(--line);padding:.85rem 4.6rem .85rem 1.05rem;outline:none}.composer-field input:focus{border-color:var(--tg-blue);box-shadow:0 0 0 4px #2aabee29}.composer-emoji-btn{position:absolute;right:.35rem;top:50%;transform:translateY(-50%);width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer;padding:0}.composer-field .composer-emoji-btn:nth-last-of-type(2){right:2.35rem}.composer-emoji-btn:hover,.composer-emoji-btn.active,.composer-field.is-emoji-open .composer-emoji-btn{color:var(--tg-blue);background:var(--tg-blue-soft)}.composer-emoji-btn:disabled{opacity:.5;cursor:not-allowed}.emoji-picker{border-top:1px solid var(--line);background:#fff;padding:.45rem .55rem .55rem;max-height:min(40vh,300px);display:flex;flex-direction:column;gap:.4rem;animation:rise .18s ease;min-width:0;width:100%;box-sizing:border-box}.emoji-picker-toolbar{display:flex;align-items:center;gap:.35rem;flex-shrink:0;min-width:0;padding:.2rem .35rem;border-radius:999px;background:#eef0f3}.emoji-picker-search{display:flex;align-items:center;gap:.25rem;flex:1 1 96px;min-width:72px;max-width:140px;height:32px;padding:0 .15rem 0 .35rem;color:var(--muted)}.emoji-picker-search-icon{display:grid;place-items:center;flex-shrink:0;opacity:.75}.emoji-picker-search-icon svg{width:15px;height:15px}.emoji-picker-search input{flex:1;min-width:0;border:0;background:transparent;outline:none;font:inherit;font-size:.9rem;color:var(--text);padding:0}.emoji-picker-search input::placeholder{color:#9aa3ad}.emoji-picker-search input::-webkit-search-cancel-button{-webkit-appearance:none}.emoji-picker-tabs{display:flex;align-items:center;justify-content:flex-end;gap:.05rem;flex:1 1 auto;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.emoji-picker-tabs::-webkit-scrollbar{display:none}.emoji-picker-tabs button{border:0;background:transparent;color:#8b949e;border-radius:999px;width:30px;height:30px;padding:0;flex:0 0 auto;cursor:pointer;display:grid;place-items:center}.emoji-picker-tabs button svg{display:block}.emoji-picker-tabs button.active{color:var(--tg-blue);background:#fff;box-shadow:0 0 0 1px #0000000a}.emoji-picker-tabs button:hover{color:var(--text);background:#ffffff8c}.emoji-picker-tabs button.active:hover{color:var(--tg-blue);background:#fff}.emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:2px;overflow-x:hidden;overflow-y:auto;min-height:0;flex:1;-webkit-overflow-scrolling:touch;align-content:start;padding:.15rem .05rem .35rem}.emoji-cell{border:0;background:transparent;border-radius:8px;font-size:1.55rem;line-height:1;height:40px;min-height:40px;width:100%;cursor:pointer;display:grid;place-items:center;padding:0;box-sizing:border-box}.emoji-cell:hover{background:#eef1f4}.emoji-cell:active{background:var(--tg-blue-soft);transform:scale(.94)}@media(max-width:420px){.emoji-grid{grid-template-columns:repeat(auto-fill,minmax(36px,1fr))}.emoji-cell{height:36px;min-height:36px;font-size:1.4rem}.emoji-picker-search{max-width:88px}.emoji-picker-tabs button{width:28px;height:28px}}.composer-stack{position:relative;background:#fffffff5}.attach-menu{display:flex;gap:.5rem;padding:.55rem .85rem .15rem}.attach-menu button{border:0;background:var(--tg-blue-soft);color:var(--tg-blue-deep);border-radius:999px;padding:.45rem .85rem;font-weight:650;cursor:pointer}.main-head-actions{margin-left:auto;display:flex;gap:.35rem;flex-shrink:0}.btn.icon-btn{width:44px;height:44px;border-radius:50%;padding:0;display:grid;place-items:center;background:#eef1f4;color:var(--muted)}.btn.icon-btn:hover,.btn.icon-btn.active{background:var(--tg-blue-soft);color:var(--tg-blue-deep)}.sticker-picker{border-top:1px solid var(--line);background:#fff;padding:.55rem .7rem .75rem;max-height:260px;display:flex;flex-direction:column;gap:.55rem;animation:rise .18s ease}.sticker-pack-tabs{display:flex;align-items:center;gap:.35rem}.sticker-pack-tabs button{border:0;background:#f1f2f4;color:var(--muted);border-radius:999px;padding:.35rem .75rem;font-size:.8rem;font-weight:650;cursor:pointer}.sticker-pack-tabs button.active{background:var(--tg-blue-soft);color:var(--tg-blue-deep)}.sticker-close{margin-left:auto!important;background:transparent!important;font-size:1.2rem!important;line-height:1;padding:.2rem .45rem!important}.sticker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:.35rem;overflow:auto}.sticker-cell{border:0;background:#f7f8fa;border-radius:14px;padding:.35rem;cursor:pointer;display:grid;place-items:center}.sticker-cell:hover:not(:disabled){background:var(--tg-blue-soft);transform:scale(1.04)}.sticker-cell:disabled{opacity:.5;cursor:not-allowed}.sticker-cell img{width:72px;height:72px;object-fit:contain;display:block}.sticker-row{align-items:flex-end}.sticker-wrap{display:flex;flex-direction:column;gap:.15rem;max-width:min(220px,70%)}.sticker-wrap .sender{padding-left:.2rem}.sticker-img{width:min(168px,42vw);height:auto;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(16,35,47,.18));user-select:none;pointer-events:none}.sticker-meta{text-align:right;color:#ffffffe6;text-shadow:0 1px 3px rgba(0,0,0,.25);font-size:11px}.sticker-fallback{padding:.6rem .8rem;background:#ffffffe6;border-radius:12px}.composer input{border-radius:24px;background:#fff;border:1px solid var(--line);padding:.85rem 1.05rem}.tab-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:100%;background:#fffffffa;border-top:1px solid var(--line);padding:.2rem 0 calc(.35rem + env(safe-area-inset-bottom,0));flex-shrink:0}.tab-bar button{border:0;background:transparent;padding:.55rem .25rem .4rem;color:#8a9198;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.12rem;font-size:.72rem;font-weight:650;min-height:52px;transition:color .2s ease,transform .15s ease}.tab-bar button:active{transform:scale(.94)}.tab-bar button.active{color:var(--tg-blue)}.tab-bar button.active .sc-nav-icon{animation:sc-tab-pop .28s ease}.tab-bar button svg{display:block}.sc-nav-icon{display:inline-grid;place-items:center;line-height:0;color:inherit}.sc-nav-icon.is-active{color:var(--tg-blue)}.tab-icon-wrap{position:relative;display:inline-grid;place-items:center}.tab-unread{position:absolute;top:-4px;right:-10px;min-width:1rem;height:1rem;padding:0 .28rem;border-radius:999px;background:var(--danger);color:#fff;font-size:.62rem;font-weight:700;display:grid;place-items:center;line-height:1}.module-pane{height:100%;width:100%;max-width:100%;min-width:0;overflow:auto;overflow-x:hidden;background:linear-gradient(180deg,#f7f8fa 0%,var(--bg) 40%);overscroll-behavior-x:none}.tg-contacts{background:#fff;display:flex;flex-direction:column;min-height:0;height:100%;width:100%;max-width:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior-x:none}.tg-contacts-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem .55rem;position:sticky;top:0;z-index:2;background:#fffffff0;backdrop-filter:blur(10px);border-bottom:1px solid transparent}.tg-contacts-plus{position:relative;flex-shrink:0}.tg-plus-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 32px #10182824;overflow:hidden;z-index:20;animation:sc-enter-fade .18s ease both}.tg-plus-item{width:100%;border:0;background:transparent;display:flex;align-items:center;gap:.75rem;padding:.75rem .9rem;cursor:pointer;text-align:left;font-weight:650;color:var(--text);transition:background .15s ease}.tg-plus-item:hover{background:#f7f8fa}.tg-plus-item .tg-action-icon{width:36px;height:36px}.tg-contacts-head h1{margin:0;font-size:1.35rem;font-weight:750;letter-spacing:-.03em;flex:1}.tg-contacts-head .tg-link{border:0;background:transparent;color:var(--tg-blue);font-weight:650;cursor:pointer;padding:.2rem 0;min-width:3rem}.tg-head-spacer{min-width:3rem}.tg-icon-btn{width:38px;height:38px;border:0;border-radius:50%;background:transparent;color:var(--tg-blue);display:grid;place-items:center;cursor:pointer}.tg-icon-btn:hover{background:var(--tg-blue-soft)}.tg-actions{border-bottom:8px solid #f0f2f5}.tg-action-row{width:100%;border:0;background:#fff;display:flex;align-items:center;gap:.85rem;padding:.7rem 1rem;cursor:pointer;text-align:left;font-weight:600;color:var(--text);transition:background .15s ease,transform .12s ease}.tg-action-row:active{transform:scale(.99)}.tg-action-row:hover{background:#f7f8fa}.tg-action-icon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:#fff;flex-shrink:0}.tg-action-icon.blue{background:linear-gradient(180deg,#5bb8f0,#2aabee)}.tg-action-icon.cyan{background:linear-gradient(180deg,#4fd0e8,#29b6d8)}.tg-section{padding-bottom:1rem}.tg-letter{position:sticky;top:52px;z-index:1;padding:.35rem 1rem;font-size:.78rem;font-weight:750;color:var(--muted);background:#f4f5f7;letter-spacing:.04em}.tg-contact-list{display:flex;flex-direction:column}.tg-contact-row{width:100%;border:0;background:#fff;display:grid;grid-template-columns:54px 1fr auto;gap:.75rem;align-items:center;padding:.55rem 1rem;cursor:pointer;text-align:left;color:var(--text);transition:background .15s ease,transform .12s ease}.tg-contact-row:active{transform:scale(.985)}.tg-contact-row:hover:not(:disabled){background:#f7f8fa}.tg-contact-row:disabled{opacity:.55;cursor:not-allowed}.tg-contact-row.selected{background:#eaf6fd}.tg-contact-meta{min-width:0;display:flex;flex-direction:column;gap:.12rem}.tg-contact-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.tg-contact-meta .tiny{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tg-check{width:24px;height:24px;border-radius:50%;border:2px solid #cfd4d9;display:grid;place-items:center;color:#fff;font-size:.75rem;font-weight:700}.tg-check.on{border-color:var(--tg-blue);background:var(--tg-blue)}.tg-group-form.chat-member-panel{flex:1;min-height:0;height:100%;display:flex;flex-direction:column;background:#fff}.main.has-subpage>.main-head{display:none!important}.main.has-subpage>.sc-motion-host{position:absolute;inset:0;z-index:8;background:#fff}.chat-member-panel .tg-contacts-head{padding-top:.7rem}.sc-group-info{background:var(--bg, #f0f2f5)}.sc-group-info-body{flex:1;min-height:0;overflow:auto;padding-bottom:2rem}.sc-group-info-hero{display:flex;flex-direction:column;align-items:center;gap:.45rem;padding:1.4rem 1.25rem 1rem;text-align:center}.sc-group-info-hero h2{margin:0;font-size:1.2rem;font-weight:700}.sc-group-info .tg-menu-section{margin:0 .75rem .75rem;border-radius:12px;overflow:hidden}.sc-group-info-rename{margin:0 1rem 1rem;display:flex;flex-direction:column;gap:.7rem}.sc-group-info-section{margin:.4rem 1rem .5rem;color:var(--muted);font-size:.8rem;font-weight:650}.sc-group-info-members{background:#fff}.sc-group-info-leave{display:block;width:calc(100% - 2rem);margin:1.25rem 1rem 0;border:0;background:transparent;color:var(--danger);font-size:.95rem;font-weight:650;padding:.85rem;border-radius:12px;cursor:pointer;transition:background .16s ease,transform .12s ease}.sc-group-info-leave:hover{background:#e5393514}.sc-group-info-leave:active{transform:scale(.99)}.sc-group-info-confirm{margin:1rem;padding:1rem;background:#fff;border-radius:12px}.sc-group-info-confirm p{margin:0 0 .85rem;font-size:.92rem;line-height:1.45}.btn.danger-btn{background:var(--danger);color:#fff}.sc-open-app-bar a.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.tg-contact-row.locked{cursor:default;pointer-events:none;opacity:.95}.tg-group-form{display:flex;flex-direction:column;gap:0;padding:0;flex:1 1 0;min-height:0;min-width:0;width:100%;max-width:100%;overflow:hidden}.tg-group-fields{flex-shrink:0;width:100%;max-width:100%;min-width:0;padding:.35rem 1rem .25rem;box-sizing:border-box}.tg-group-name,.tg-group-invites{display:block;margin:0;width:100%;max-width:100%;min-width:0;box-sizing:border-box;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:.75rem .15rem;outline:none;overflow:hidden;text-overflow:ellipsis}.tg-group-name:focus,.tg-group-invites:focus{border-bottom-color:var(--tg-blue);box-shadow:none}.tg-group-hint{margin:.55rem 0 .35rem;line-height:1.4}.tg-group-form .tg-contact-list{flex:1;min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-x:none;border-top:8px solid #f0f2f5;-webkit-overflow-scrolling:touch}.tg-group-empty{margin:1.25rem 1rem;text-align:center;line-height:1.45}.tg-group-submit{flex-shrink:0;margin:.65rem 1rem calc(.65rem + env(safe-area-inset-bottom,0));width:calc(100% - 2rem);max-width:calc(100% - 2rem);box-sizing:border-box}.chats-pane{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);overflow:hidden;background:var(--bg);height:100%;width:100%;max-width:100%;min-width:0}.chats-pane .sidebar,.chats-pane .main{min-height:0;min-width:0;width:100%;max-width:100%;height:100%;overflow:hidden}.chats-pane:not(.has-active) .main{display:none}.chats-pane.has-active .sidebar{display:none}@media(max-width:860px){.chats-pane.has-active .main{animation:sc-enter-from-right .26s cubic-bezier(.22,1,.36,1) both}}@media(min-width:861px){.chats-pane{grid-template-columns:minmax(0,min(340px,38%)) minmax(0,1fr)}.chats-pane:not(.has-active) .main,.chats-pane.has-active .sidebar{display:flex}}@media(min-width:1100px){.chats-pane{grid-template-columns:minmax(0,min(400px,36%)) minmax(0,1fr)}}.module-head{padding:1.1rem 1.15rem .7rem;background:#ffffffeb;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1;backdrop-filter:blur(10px)}.module-head h1{margin:0;font-size:1.45rem;letter-spacing:-.03em;font-weight:750}.panel-card{margin:.85rem 1rem;padding:1.05rem;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid rgba(0,0,0,.03);display:flex;flex-direction:column;gap:.8rem}.panel-card h2{margin:0;font-size:.92rem;font-weight:700}.panel-card label{display:flex;flex-direction:column;gap:.35rem;color:var(--muted);font-size:.86rem;font-weight:500}.inline-row{display:grid;grid-template-columns:1fr auto;gap:.5rem}.people-list{display:flex;flex-direction:column;gap:.35rem}.person-row{display:grid;grid-template-columns:48px 1fr auto;gap:.7rem;align-items:center;padding:.35rem .15rem;border-radius:12px}.person-row:hover{background:#f7f8fa}.person-meta{min-width:0;display:flex;flex-direction:column}.person-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.me-hero{flex-direction:row;align-items:center;gap:1rem}.me-name{font-size:1.2rem;font-weight:750;letter-spacing:-.02em}.kv{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.6rem}.kv code{font-size:.78rem;word-break:break-all;background:#f3f5f7;padding:.45rem .55rem;border-radius:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.tg-me{background:#f0f2f5;min-height:100%}.tg-me-hero{background:#fff;text-align:center;padding:1.4rem 1rem 1.15rem;margin-bottom:.55rem}.avatar.hero{width:92px;height:92px;font-size:1.55rem;margin:0 auto .85rem;border-radius:50%;box-shadow:0 8px 24px #10232f1f}.tg-me-hero h1{margin:0;font-size:1.35rem;font-weight:750;letter-spacing:-.03em}.tg-me-user{margin:0;color:var(--muted);font-size:.88rem;word-break:break-all}.tg-me-id-row{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;margin:.25rem 0 .35rem;max-width:100%}.tg-me-copy-id{flex-shrink:0;width:30px;height:30px;border:0;border-radius:8px;background:#f0f2f5;color:var(--muted);display:grid;place-items:center;cursor:pointer;transition:background .15s ease,color .15s ease,transform .12s ease}.tg-me-copy-id:hover{background:var(--tg-blue-soft, #e7f4fd);color:var(--tg-blue)}.tg-me-copy-id:active{transform:scale(.94)}.tg-avatar-edit{display:flex;justify-content:center;padding:.5rem 0 .75rem}.tg-avatar-edit-btn{border:0;background:transparent;padding:0;cursor:pointer;position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:.55rem}.tg-avatar-edit-btn:disabled{opacity:.65;cursor:wait}.tg-avatar-edit-btn .avatar.hero{margin:0}.tg-avatar-edit-badge{font-size:.88rem;font-weight:650;color:var(--tg-blue)}.tg-me-status{display:inline-block;font-size:.82rem;font-weight:650;color:var(--muted)}.tg-me-status.on{color:var(--tg-green)}.tg-menu-section{background:#fff;margin-bottom:.55rem}.tg-menu-row{width:100%;border:0;background:#fff;display:grid;grid-template-columns:42px 1fr auto;gap:.85rem;align-items:center;padding:.72rem 1rem;cursor:pointer;text-align:left;color:var(--text);border-bottom:1px solid #f0f2f5;transition:background .15s ease,transform .12s ease}.tg-menu-row:active{transform:scale(.99)}.tg-menu-row:last-child{border-bottom:0}.tg-menu-row:hover{background:#f7f8fa}.tg-menu-row.danger{color:var(--danger)}.tg-menu-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:#fff}.tg-menu-icon.blue{background:#2aabee}.tg-menu-icon.green{background:#4caf50}.tg-menu-icon.orange{background:#ff9800}.tg-menu-icon.purple{background:#7e57c2}.tg-menu-icon.teal{background:#00897b}.tg-menu-icon.cyan{background:#26c6da}.tg-menu-icon.red{background:#e53935}.tg-menu-text{min-width:0;display:flex;flex-direction:column;gap:.1rem}.tg-menu-text strong{font-weight:650}.tg-menu-chevron{color:#c0c5ca;display:grid}.tg-me-subhead{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:2}.tg-me-subhead h1{margin:0;flex:1;text-align:center;font-size:1.05rem;font-weight:700}.tg-me-form,.tg-me-block{background:#fff;margin-top:.55rem;padding:1rem;display:flex;flex-direction:column;gap:.85rem}.tg-me-form label{display:flex;flex-direction:column;gap:.35rem;color:var(--muted);font-size:.86rem;font-weight:500}.tg-me-form input{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:.65rem .1rem;outline:none;color:var(--text)}.tg-me-form select,.tg-me-form textarea{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:.65rem .1rem;outline:none;color:var(--text);font:inherit;resize:vertical}.tg-me-form select:focus,.tg-me-form textarea:focus,.tg-me-form input:focus{border-bottom-color:var(--tg-blue);box-shadow:none}.tg-support-hint{margin:.75rem 1rem 0;line-height:1.4}.tg-me-form input[readonly]{color:var(--muted)}.tg-kv{display:flex;flex-direction:column;gap:.3rem}.tg-kv code{font-size:.78rem;word-break:break-all;background:#f3f5f7;padding:.5rem .6rem;border-radius:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.tg-kv strong.ok{color:var(--tg-green)}.tg-lang-list{background:#fff;margin-top:.55rem}.tg-lang-row{width:100%;border:0;background:#fff;display:flex;justify-content:space-between;align-items:center;padding:.95rem 1rem;cursor:pointer;border-bottom:1px solid #f0f2f5;font-weight:600;color:var(--text)}.tg-lang-row:hover{background:#f7f8fa}.tg-lang-row.active{color:var(--tg-blue)}.tg-lang-check{color:var(--tg-blue);font-weight:700}.back-mobile{display:none}@media(max-width:860px){.desktop-frame,.app-shell,.app-body{width:100%;max-width:100%;min-width:0;overflow-x:hidden}.back-mobile{display:grid;place-items:center;min-width:36px;min-height:36px}.composer-field input,.composer input,.login-form input,.tg-group-name,.tg-group-invites,.tg-me-form input,.panel-card input,.sc-input,.sc-textarea,.sc-select__native,.sc-search__input{font-size:16px}.composer{padding-bottom:calc(.7rem + env(safe-area-inset-bottom,0))}.desktop-frame.immersive-chat .composer{padding-bottom:calc(.85rem + env(safe-area-inset-bottom,0))}.sticker-picker,.emoji-picker{max-height:min(42vh,280px)}.main-head{padding-top:.55rem}.side-head{padding-top:.7rem}.bubble{max-width:min(520px,86%)}.sticker-img{width:min(148px,46vw)}}.desktop-frame.is-mobile .module-pane,.desktop-frame.is-mobile .app-body,.desktop-frame.is-mobile .tab-bar,.desktop-frame.is-mobile .chats-pane,.desktop-frame.is-mobile .sidebar,.desktop-frame.is-mobile .main{width:100%;max-width:100%;min-width:0}.desktop-frame.is-mobile .module-pane,.desktop-frame.is-mobile .app-body{overflow-x:hidden}@media(hover:none)and (pointer:coarse){.room-item,.tg-contact-row,.tg-menu-row,.tg-action-row{min-height:64px}.btn.send,.btn.icon-btn{width:48px;height:48px}}.media-wrap{max-width:min(280px,78%)}.media-bubble{background:var(--bubble-in);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-sm)}.media-bubble.mine,.bubble-row.mine .media-bubble{background:var(--bubble-out)}.media-image{display:block;width:100%;max-height:280px;object-fit:cover}.media-caption{display:flex;justify-content:space-between;gap:.5rem;padding:.35rem .55rem .45rem;font-size:.78rem}.media-file-link{display:flex;flex-direction:column;gap:.2rem;padding:.75rem .85rem;text-decoration:none;color:inherit;min-width:180px}.media-file-name{font-weight:650;word-break:break-word}.media-file-action{color:var(--tg-blue);font-weight:650;font-size:.82rem}.media-fallback{padding:.75rem}.read-ticks{font-size:11px;letter-spacing:-.12em;margin-right:.28rem;color:var(--muted);font-weight:700}.read-ticks.is-read{color:var(--tg-blue)}.bubble .meta,.media-wrap .meta,.sticker-wrap .meta{display:flex;align-items:center;justify-content:flex-end;gap:.15rem}.reply-quote{border-left:3px solid var(--tg-blue);background:#2aabee1a;border-radius:6px;padding:.28rem .5rem;margin-bottom:.35rem;display:flex;flex-direction:column;gap:.08rem;font-size:.8rem;min-width:0}.reply-quote strong{color:var(--tg-blue-deep);font-size:.75rem}.reply-quote span{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reply-bar,.record-bar{display:flex;align-items:center;gap:.65rem;padding:.5rem .9rem .15rem;animation:rise .18s ease}.reply-bar-body{flex:1;min-width:0;border-left:3px solid var(--tg-blue);padding-left:.55rem;display:flex;flex-direction:column;gap:.05rem}.reply-bar-body strong{font-size:.78rem;color:var(--tg-blue-deep)}.reply-bar-body span{font-size:.8rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reply-bar-close{width:32px;height:32px;border:0;border-radius:50%;background:#eef1f4;color:var(--muted);cursor:pointer;font-size:1.2rem;line-height:1}.record-dot{width:10px;height:10px;border-radius:50%;background:#e53935;animation:record-blink 1s ease-in-out infinite}.record-bar strong{font-variant-numeric:tabular-nums}.voice-mic{touch-action:none;user-select:none}.voice-mic.is-recording{background:#fdecea;color:#e53935}.voice-bubble{display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto auto;column-gap:.5rem;row-gap:.2rem;align-items:center;background:var(--bubble-in);border-radius:16px 16px 16px 6px;padding:.45rem .65rem .35rem .45rem;box-shadow:var(--shadow-sm)}.bubble-row.mine .voice-bubble{background:var(--bubble-out);border-radius:16px 16px 6px}.voice-play{grid-row:1;width:40px;height:40px;border:0;border-radius:50%;background:var(--tg-blue-soft);color:var(--tg-blue-deep);font-size:.85rem;cursor:pointer;display:grid;place-items:center}.bubble-row.mine .voice-play{background:#ffffffeb}.voice-spinner{width:16px;height:16px;border:2px solid var(--tg-blue);border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}.voice-wave{grid-column:2;height:28px;display:flex;align-items:center;gap:2px}.voice-wave span{width:2.5px;border-radius:2px;background:var(--tg-blue);opacity:.55;min-height:4px}.voice-wave.is-playing span{opacity:.95}.voice-dur{grid-column:2;font-size:12px;font-weight:650;color:var(--tg-blue-deep)}.msg-ctx-menu{display:none}.msg-actions-backdrop{position:fixed;inset:0;z-index:38;border:0;padding:0;margin:0;background:#10182047;cursor:default;animation:msg-actions-fade .16s ease}.msg-ctx-card{position:fixed;z-index:42;width:min(248px,calc(100vw - 20px));max-width:calc(100vw - 20px);box-sizing:border-box;background:#fff;border-radius:14px;box-shadow:0 10px 36px #0f172038;padding:.2rem 0 .25rem;overflow:hidden;max-height:calc(100dvh - 20px);visibility:hidden;pointer-events:none}.msg-ctx-card.is-placed{visibility:visible;pointer-events:auto;animation:rise .18s ease}.msg-ctx-card.is-forward{width:min(300px,calc(100vw - 20px));max-height:min(420px,calc(100dvh - 24px));display:flex;flex-direction:column}.msg-react-bar{display:flex;justify-content:space-between;gap:.15rem;padding:.45rem .5rem .55rem;border-bottom:1px solid var(--line)}.msg-react-btn{width:34px;height:34px;border:0;border-radius:50%;background:transparent;font-size:20px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:transform .16s ease,background .16s ease;animation:msg-react-in .28s cubic-bezier(.34,1.45,.64,1) both}.msg-react-btn:hover:not(:disabled){background:var(--tg-blue-soft);transform:scale(1.14)}.msg-react-btn:active:not(:disabled),.msg-react-btn.is-picking{animation:msg-react-pick .34s cubic-bezier(.34,1.6,.64,1)}.msg-ctx-card button[role=menuitem]{display:flex;align-items:center;gap:.7rem;width:100%;border:0;background:transparent;text-align:left;padding:.62rem .9rem;cursor:pointer;font-weight:600;font-size:.95rem;color:var(--text);min-width:0}.msg-ctx-card button[role=menuitem]>:not(svg):not(.msg-ctx-chevron){flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-ctx-card button[role=menuitem] svg{flex-shrink:0;color:#3c4a57}.msg-ctx-card button[role=menuitem]:hover:not(:disabled){background:#f4f6f8}.msg-ctx-card button[role=menuitem].is-danger,.msg-ctx-card button[role=menuitem].is-danger svg{color:#e53935}.msg-ctx-card button[role=menuitem].has-chevron{padding-right:.55rem}.msg-ctx-chevron{margin-left:auto;color:#9aa6b2;font-size:1.15rem;font-weight:400}.msg-ctx-sep{height:1px;background:var(--line);margin:.12rem 0}.msg-fwd-head{display:flex;align-items:center;gap:.35rem;padding:.55rem .65rem .35rem}.msg-fwd-back{border:0;background:transparent;font-size:1.4rem;line-height:1;cursor:pointer;color:var(--text);width:28px}.msg-fwd-search{margin:0 .65rem .4rem;border:1px solid var(--line);border-radius:10px;padding:.45rem .65rem;font:inherit}.msg-fwd-list{overflow:auto;min-height:0;flex:1;padding-bottom:.35rem}.msg-fwd-row{display:flex;align-items:center;gap:.55rem;width:100%;border:0;background:transparent;text-align:left;padding:.45rem .75rem;cursor:pointer;font-weight:650}.msg-fwd-row:hover:not(:disabled){background:var(--tg-blue-soft)}.msg-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.msg-reaction-chip{background:#fff;border:0;border-radius:12px;padding:2px 7px;font-size:13px;box-shadow:var(--shadow-sm);line-height:1.3;cursor:pointer;display:inline-flex;align-items:center;gap:2px;transform-origin:center bottom;transition:transform .16s ease,background .2s ease,box-shadow .2s ease;animation:msg-chip-in .3s cubic-bezier(.34,1.55,.64,1) both}.msg-reaction-chip:hover{transform:translateY(-1px) scale(1.04)}.msg-reaction-chip:active,.msg-reaction-chip.is-pop{animation:msg-chip-pop .32s cubic-bezier(.34,1.6,.64,1)}.msg-reaction-chip.mine{background:var(--tg-blue-soft);box-shadow:inset 0 0 0 1px var(--tg-blue)}.msg-reaction-chip.is-settled{animation:none}.msg-reaction-chip.mine .msg-reaction-emoji{animation:msg-chip-wiggle .42s ease}.msg-reaction-chip.is-settled.mine .msg-reaction-emoji{animation:none}.msg-reaction-emoji{display:inline-block;line-height:1}.msg-reactions em{font-style:normal;font-size:11px;font-weight:700;margin-left:1px;color:var(--muted)}@keyframes msg-react-in{0%{opacity:0;transform:translateY(8px) scale(.55)}to{opacity:1;transform:none}}@keyframes msg-react-pick{0%{transform:scale(1)}35%{transform:scale(1.42)}70%{transform:scale(.92)}to{transform:scale(1)}}@keyframes msg-chip-in{0%{opacity:0;transform:scale(.35) translateY(6px)}to{opacity:1;transform:none}}@keyframes msg-chip-pop{0%{transform:scale(1)}40%{transform:scale(1.22)}to{transform:scale(1)}}@keyframes msg-chip-wiggle{0%,to{transform:rotate(0) scale(1)}30%{transform:rotate(-12deg) scale(1.15)}60%{transform:rotate(10deg) scale(1.08)}}@keyframes msg-actions-fade{0%{opacity:0}to{opacity:1}}.enc-inline.is-typing{color:var(--tg-blue);font-weight:650}@keyframes record-blink{50%{opacity:.35}}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.record-dot,.voice-spinner,.msg-react-btn,.msg-reaction-chip,.msg-reaction-chip.mine .msg-reaction-emoji{animation:none!important}.msg-react-btn,.msg-reaction-chip{transition:none!important}}.incoming-call-bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:.55rem .85rem;background:var(--tg-blue-soft);border-bottom:1px solid var(--line);color:var(--text);font-size:.92rem}.incoming-call-bar.global{position:sticky;top:0;z-index:40;flex-shrink:0}.incoming-call-actions{display:flex;align-items:center;gap:.4rem}.call-overlay{position:absolute;inset:0;z-index:30;background:#0e1621;color:#fff;display:flex;flex-direction:column}.main{position:relative}.call-top{flex-shrink:0;padding:.85rem 1rem .35rem;text-align:center;z-index:3}.call-top-meta{display:flex;flex-direction:column;align-items:center;gap:.2rem}.call-peer{font-size:.95rem;font-weight:650;max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.92}.call-timer{font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:700;letter-spacing:.04em}.call-stage{flex:1;min-height:0;position:relative;display:grid;place-items:center;overflow:hidden}.call-stage.is-audio{background:radial-gradient(ellipse 70% 50% at 50% 42%,rgba(42,171,238,.16),transparent 70%),#0e1621}.call-audio-hero{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:1.1rem;padding:1rem}.call-wave{display:flex;align-items:center;justify-content:center;gap:7px;height:96px}.call-wave-bar{width:9px;height:calc(14px + var(--h, .3) * 72px);border-radius:999px;background:linear-gradient(180deg,#7ad4f5,#2aabee 55%,#1a8fd0);transform-origin:center;transition:height 80ms ease-out;box-shadow:0 0 12px #2aabee40}.call-wave.is-live .call-wave-bar{animation:call-wave-breathe 1.35s ease-in-out infinite;animation-delay:calc(var(--i, 0) * .09s)}@keyframes call-wave-breathe{0%,to{transform:scaleY(.88);opacity:.82}50%{transform:scaleY(1);opacity:1}}.call-status-line{margin:0;font-size:.95rem;color:#ffffffc7;text-align:center}.call-status-line.err{color:#ffb4b0}.call-remote{position:absolute;inset:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.35rem;padding:.5rem;align-content:center}.call-stage.is-audio .call-remote:empty{display:none}.call-remote-video{width:100%;height:100%;object-fit:cover;border-radius:12px;background:#1a2736;min-height:140px}.call-remote-tile{position:relative;min-height:140px;border-radius:12px;overflow:hidden;background:#1a2736}.call-remote-tile .call-remote-video{border-radius:0}.call-remote-name{position:absolute;left:0;right:0;bottom:0;padding:1.35rem .55rem .4rem;font-size:.78rem;font-weight:650;color:#fff;background:linear-gradient(transparent,#0000009e);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.call-count{font-size:.78rem;font-weight:600;opacity:.82}.call-audio-names{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem;max-width:22rem}.call-audio-names span{font-size:.8rem;padding:.18rem .55rem;border-radius:999px;background:#ffffff1f}.call-local-video{position:absolute;right:12px;bottom:12px;width:min(140px,32vw);aspect-ratio:3 / 4;object-fit:cover;border-radius:12px;background:#243447;z-index:2;box-shadow:var(--shadow-md)}.call-local-video.is-hidden{display:none}.call-status{position:relative;z-index:1;margin:0;padding:.6rem 1rem;border-radius:999px;background:#00000073}.call-status.err{color:#ffb4b0}.call-cam-off-hint{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);z-index:2}.call-controls{display:flex;justify-content:center;align-items:center;gap:.75rem;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom,0));background:#00000059}.call-ctrl{width:54px;height:54px;border:0;border-radius:50%;background:#2a3645;color:#fff;display:grid;place-items:center;cursor:pointer}.call-ctrl:disabled{opacity:.45;cursor:not-allowed}.call-ctrl.is-active{background:#f0f2f5;color:#0e1621}.call-ctrl.hangup{background:var(--danger)}@media(prefers-reduced-motion:reduce){.call-wave.is-live .call-wave-bar{animation:none}}.tg-device-list{background:#fff;margin-top:.5rem}.tg-device-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid var(--line)}.tg-device-meta{min-width:0;display:flex;flex-direction:column;gap:.15rem}.device-trust{font-size:.78rem;font-weight:650;color:var(--muted)}.device-trust.on{color:var(--tg-green)}.verify-sas .sas-emoji{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:.55rem;margin:.75rem 0 1rem}.sas-emoji-item{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.45rem;background:#f5f7f9;border-radius:12px}.sas-emoji-icon{font-size:1.6rem;line-height:1}.sas-emoji-label{font-size:.7rem;color:var(--muted);text-align:center}.sas-actions{display:flex;flex-direction:column;gap:.45rem}.sc-qr-page{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1rem 1.25rem 2rem}.sc-qr-canvas{border-radius:12px;background:#fff;box-shadow:0 1px 4px #00000014}.sc-qr-mxid{font-size:.85rem;word-break:break-all;text-align:center;color:var(--muted, #6b7280);max-width:100%}.tg-scan-row{margin:.35rem .75rem .5rem;width:calc(100% - 1.5rem)}.sc-qr-scanner{display:flex;flex-direction:column;gap:.75rem;padding:.5rem .75rem 1.25rem}.sc-qr-scanner-view{position:relative;width:100%;max-width:420px;margin:0 auto;aspect-ratio:1;border-radius:16px;overflow:hidden;background:#0f172a}.sc-qr-scanner-view video{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .2s ease}.sc-qr-scanner-view video.on{opacity:1}.sc-qr-scanner-frame{pointer-events:none;position:absolute;inset:18%;border:2px solid rgba(255,255,255,.85);border-radius:12px;box-shadow:0 0 0 999px #0f172a59}.sc-mention{color:var(--tg-blue);font-weight:650}.sc-mention.is-self{background:#2aabee26;border-radius:4px;padding:0 .15em}.mention-menu{margin:0 .5rem;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-md, 0 8px 24px rgba(0, 0, 0, .12));overflow:hidden;max-height:220px;overflow-y:auto;animation:sc-enter-fade .18s ease both}.mention-menu-hint{margin:0;padding:.45rem .75rem .2rem}.mention-item{width:100%;border:0;background:transparent;display:flex;align-items:center;gap:.65rem;padding:.55rem .75rem;cursor:pointer;text-align:left;color:var(--text)}.mention-item:hover,.mention-item.active{background:var(--tg-blue-soft, #e7f4fd)}.mention-meta{display:flex;flex-direction:column;min-width:0}.mention-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.sc-toast-host{position:fixed;left:50%;bottom:calc(5.5rem + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:12000;display:flex;flex-direction:column-reverse;align-items:center;gap:.45rem;width:min(92vw,360px);pointer-events:none}.desktop-frame.immersive-chat .sc-toast-host,.desktop-frame.immersive-contacts .sc-toast-host{bottom:calc(1.25rem + env(safe-area-inset-bottom,0px))}.sc-toast{pointer-events:auto;max-width:100%;padding:.7rem 1rem;border-radius:12px;background:#1c232beb;color:#fff;font-size:.88rem;font-weight:600;line-height:1.35;text-align:center;box-shadow:0 10px 28px #10182838;backdrop-filter:blur(8px);animation:sc-toast-in .22s cubic-bezier(.22,1,.36,1) both;cursor:pointer}.sc-toast--error{background:#c43a3af0}@keyframes sc-toast-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.sc-toast{animation:none!important}}.sc-backup-recovery{display:flex;flex-direction:column;gap:.75rem}.sc-backup-key{margin:0;padding:.85rem 1rem;border-radius:12px;background:#f4f7fa;border:1px solid var(--line);font-size:.92rem;line-height:1.45;word-break:break-all;white-space:pre-wrap;user-select:all}.sc-backup-check{display:flex;align-items:flex-start;gap:.55rem;font-size:.92rem;font-weight:600;cursor:pointer}.tg-me-section-title{margin:1rem 0 .35rem;font-size:.95rem}.pinned-bar{display:flex;align-items:center;gap:.55rem;width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;padding:.45rem .85rem;text-align:left;cursor:pointer;animation:msg-chip-in .24s ease both}.pinned-bar:hover{background:var(--tg-blue-soft)}.pinned-bar-ico{flex-shrink:0;color:var(--tg-blue);font-size:.95rem}.pinned-bar-body{min-width:0;flex:1;display:flex;flex-direction:column;gap:.05rem}.pinned-bar-body strong{font-size:.78rem;color:var(--tg-blue-deep)}.pinned-bar-body span{font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}.pinned-bar-count{flex-shrink:0;font-size:.75rem;font-weight:700;color:var(--muted)}.meeting-bar{display:flex;align-items:center;gap:.25rem;width:100%;border-bottom:1px solid var(--line);background:#fff;padding:.2rem .4rem .2rem .85rem;animation:msg-chip-in .24s ease both}.meeting-bar-join{display:flex;align-items:center;gap:.55rem;min-width:0;flex:1;border:0;background:transparent;padding:.25rem .35rem;text-align:left;cursor:pointer;border-radius:8px;transition:background .18s ease}.meeting-bar-join:hover{background:var(--tg-blue-soft)}.meeting-bar-join:active{transform:scale(.99)}.meeting-bar-dismiss{flex-shrink:0;width:2rem;height:2rem;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:1.25rem;line-height:1;cursor:pointer;transition:background .18s ease,color .18s ease}.meeting-bar-dismiss:hover{background:var(--tg-blue-soft);color:var(--text)}.bubble-row.is-menu-open .bubble,.bubble-row.is-menu-open .media-wrap,.bubble-row.is-menu-open .sticker-wrap{transform:translateY(-2px) scale(1.01);box-shadow:0 8px 22px #0f172024;transition:transform .18s ease,box-shadow .18s ease}.bubble-row.is-highlight .bubble,.bubble-row.is-highlight .media-wrap,.bubble-row.is-highlight .sticker-wrap{outline:2px solid var(--tg-blue);outline-offset:2px;animation:pin-flash .9s ease}.pin-badge{display:inline-flex;align-items:center;gap:.2rem;font-size:.7rem;font-weight:700;color:var(--tg-blue-deep);margin-bottom:.15rem}.msg-fwd-preview{margin:.35rem .65rem .45rem;padding:.55rem .65rem;border-radius:10px;background:#f4f7fa;border-left:3px solid var(--tg-blue);font-size:.86rem;max-height:72px;overflow:hidden}.msg-fwd-preview strong{display:block;font-size:.75rem;color:var(--tg-blue-deep);margin-bottom:.15rem}.msg-ctx-card button[role=menuitem]:disabled{opacity:.45;cursor:not-allowed}@keyframes pin-flash{0%,to{background-color:transparent}35%{background-color:var(--tg-blue-soft)}}@media(prefers-reduced-motion:reduce){.pinned-bar,.meeting-bar,.bubble-row.is-highlight .bubble,.bubble-row.is-highlight .media-wrap,.bubble-row.is-highlight .sticker-wrap,.bubble-row.is-menu-open .bubble,.bubble-row.is-menu-open .media-wrap,.bubble-row.is-menu-open .sticker-wrap{animation:none!important;transition:none!important;transform:none!important}}.sc-field{display:flex;flex-direction:column;gap:.4rem;color:var(--muted);font-size:.86rem;font-weight:500}.sc-field__label{color:var(--muted)}.sc-input,.sc-textarea,.sc-select__native{width:100%;border-radius:14px;border:1px solid var(--line);background:#f5f7f9;color:var(--text);padding:.8rem .95rem;outline:none;font:inherit;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.sc-textarea{resize:vertical;min-height:110px;line-height:1.45}.sc-input:focus,.sc-textarea:focus,.sc-select__native:focus{border-color:var(--tg-blue);box-shadow:0 0 0 4px #2aabee29;background:#fff}.sc-input:disabled,.sc-textarea:disabled,.sc-select__native:disabled{opacity:.55;cursor:not-allowed}.sc-select{position:relative;display:block;width:100%}.sc-select__native{appearance:none;-webkit-appearance:none;padding-right:2.2rem;cursor:pointer}.sc-select__chevron{position:absolute;right:.85rem;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none;font-size:.75rem;line-height:1}.sc-select:focus-within .sc-select__chevron{color:var(--tg-blue)}.tg-me-form .sc-input,.tg-me-form .sc-textarea,.tg-me-form .sc-select__native{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:.65rem .1rem;box-shadow:none}.tg-me-form .sc-select__native{padding-right:1.4rem}.tg-me-form .sc-input:focus,.tg-me-form .sc-textarea:focus,.tg-me-form .sc-select__native:focus{border-bottom-color:var(--tg-blue);box-shadow:none;background:transparent}.tg-me-form .sc-select__chevron{right:.1rem}.tg-me-form .sc-input[readonly]{color:var(--muted)}.sc-back-btn{width:36px;height:36px;border:0;border-radius:10px;background:transparent;color:var(--tg-blue);display:grid;place-items:center;cursor:pointer;padding:0;flex-shrink:0}.sc-back-btn:hover{background:var(--tg-blue-soft)}.sc-back-btn:active{transform:scale(.96)}.sc-search{display:flex;align-items:center;gap:.5rem;margin:0 .85rem .75rem;padding:0 .85rem;min-height:40px;width:auto;max-width:100%;min-width:0;box-sizing:border-box;border-radius:22px;background:#f1f2f4;color:var(--muted)}.sc-search:focus-within{background:#fff;box-shadow:0 0 0 4px #2aabee29}.sc-search__ico{display:grid;place-items:center;flex-shrink:0;line-height:0;color:var(--muted)}.sc-search__ico svg{display:block}.sc-search__input{flex:1;min-width:0;width:100%;border:0;background:transparent;color:var(--text);font:inherit;padding:.65rem 0;outline:none;appearance:none;-webkit-appearance:none}.sc-search__input::placeholder{color:var(--muted)}.sc-search__input::-webkit-search-decoration,.sc-search__input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}.sc-search--contacts{margin:.35rem .9rem .7rem}@media(max-width:860px){.sc-search__input{font-size:16px}}
