:root{--tg-blue: #3a9ee0;--tg-blue-dark: #2b86c5;--tg-sidebar: #ffffff;--tg-sidebar-hover: #f1f3f5;--tg-sidebar-active: #e3f1fb;--tg-chat-bg: #141e2b;--tg-pattern: #1a2636;--tg-in: #1c2a3a;--tg-out: #2b5278;--tg-text: #f5f5f5;--tg-muted: #8b9bb4;--tg-line: rgba(255, 255, 255, .06);--sova-coral: #e8a090;--font: "Onest", sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;overflow:hidden}body{font-family:var(--font);color:var(--tg-text);background:#0b141a}button,input,textarea{font:inherit}button{cursor:pointer;border:0;background:none;color:inherit}input,textarea{outline:none;border:0;background:transparent;color:inherit}.auth-shell{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:1.5rem;background:radial-gradient(700px 420px at 50% 0%,rgba(42,171,238,.22),transparent 60%),#0b141a}.auth-slogan{margin:0;max-width:400px;text-align:center;color:var(--tg-muted);font-size:.84rem;line-height:1.45}.auth-slogan a{color:#8ec8ef;text-decoration:none;font-weight:600}.auth-slogan a:hover{text-decoration:underline}.auth-card{width:min(400px,100%);background:#17212b;border-radius:16px;padding:2rem 1.75rem 1.5rem;box-shadow:0 18px 50px #00000059;animation:rise .45s ease both}.logo-mark{width:72px;height:72px;margin:0 auto 1rem;border-radius:50%;background:linear-gradient(145deg,#2aabee,#34c759);display:grid;place-items:center;font-weight:700;font-size:1.55rem;color:#fff;letter-spacing:-.04em}.logo-wrap{width:96px;height:96px;margin:0 auto 1rem;border-radius:50%;overflow:hidden;background:#fff;box-shadow:0 10px 30px #3a9ee047}.logo-img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 40%;transform:scale(1.28)}.auth-card h1{text-align:center;margin:0 0 .35rem;font-size:1.75rem;letter-spacing:-.03em}.auth-card .lead{text-align:center;color:var(--tg-muted);margin:0 0 1.4rem;font-size:.95rem;line-height:1.4}.auth-card .stack{display:grid;gap:.65rem}.auth-card input{background:#242f3d;border-radius:12px;padding:.9rem 1rem}.auth-card .primary{margin-top:.35rem;background:var(--tg-blue);color:#fff;border-radius:12px;padding:.9rem;font-weight:600}.auth-card .primary:hover{background:var(--tg-blue-dark)}.auth-card .primary:disabled{opacity:.6}.error{color:#ff8a80;font-size:.88rem;margin-top:.5rem}.auth-card.wide{width:min(480px,100%)}.auth-links{display:flex;justify-content:space-between;margin-top:.85rem}.linkish{background:none;border:none;color:var(--tg-blue);font-weight:600;font-size:.88rem;cursor:pointer;padding:0}.linkish.center{display:block;margin:.85rem auto 0;text-align:center}.seg{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;margin-bottom:.75rem}.seg button{background:#242f3d;border-radius:10px;padding:.55rem;font-weight:600}.seg button.on{background:#3a9ee040;outline:1px solid rgba(58,158,224,.5)}.unique-code-box{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.25rem;letter-spacing:.08em;text-align:center;padding:1rem;margin:.5rem 0 1rem;border-radius:14px;background:#0e1621;border:1px dashed rgba(58,158,224,.45);color:#7fd0ff;-webkit-user-select:all;user-select:all}.ghost-btn{background:#242f3d;border-radius:10px;padding:.55rem .75rem;font-weight:600;border:none;color:inherit;cursor:pointer}.ghost-btn.full{width:100%;margin-top:.5rem}.reset-block{display:grid;gap:.45rem;padding:.75rem;border-radius:12px;background:#0000002e;border:1px solid rgba(255,255,255,.06)}.hint{margin:0;color:var(--tg-muted);font-size:.78rem;line-height:1.45}.demo-switch{margin-top:1.1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.06)}.demo-label{text-align:center;color:var(--tg-muted);font-size:.78rem;margin-bottom:.55rem}.demo-btns{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.demo-btn{background:#242f3d;color:#fff;border-radius:10px;padding:.65rem .5rem;font-size:.82rem;font-weight:600}.demo-btn:hover{background:#2d3b4c}.demo-btn.active{background:#2aabee40;outline:1px solid rgba(42,171,238,.55)}.switch-user{color:var(--tg-blue);font-size:.78rem;font-weight:600;text-align:left;padding:0}.switch-user:disabled{opacity:.55}.app{height:100%;height:100dvh;display:grid;grid-template-columns:360px 1fr;background:#121a26;overflow:hidden;min-height:0}.app.with-tasks{grid-template-columns:320px 1fr 300px}.sidebar{background:#17212b;border-right:1px solid rgba(255,255,255,.04);display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;overflow:hidden;position:sticky;top:0;align-self:start}.side-top{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;padding:.7rem .85rem;border-bottom:1px solid rgba(255,255,255,.04);flex-shrink:0}.side-top .search{flex:1 1 110px;min-width:90px}.brand-logo-wrap{width:36px;height:36px;border-radius:50%;overflow:hidden;background:#fff;flex-shrink:0}.brand-logo{width:100%;height:100%;object-fit:cover;object-position:center 40%;transform:scale(1.3);display:block}.brand-mini{font-weight:700;letter-spacing:-.03em;color:#fff;white-space:nowrap}.brand-mini span{color:var(--tg-blue)}.search{flex:1;background:#242f3d;border-radius:22px;padding:.55rem .9rem;font-size:.9rem}.chat-list{overflow:auto;flex:1;min-height:0}.chat-row{width:100%;display:grid;grid-template-columns:52px 1fr;gap:.7rem;padding:.65rem .85rem;text-align:left;transition:background .15s ease}.chat-row:hover{background:#ffffff08}.chat-row.active{background:#2b5278}.avatar{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-weight:700;color:#fff;background:#fff;flex-shrink:0;overflow:hidden}.avatar.chat-avatar img{width:100%;height:100%;object-fit:cover;object-position:center 42%;transform:scale(1.22);background:#fff}.chat-meta{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:.15rem}.chat-title-row{display:flex;justify-content:space-between;gap:.5rem;align-items:baseline}.chat-title{font-weight:600;font-size:.98rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-time{color:var(--tg-muted);font-size:.75rem;flex-shrink:0}.chat-time-col{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem;flex-shrink:0}.unread-badge{min-width:18px;height:18px;padding:0 .35rem;border-radius:999px;background:var(--tg-blue);color:#fff;font-size:.7rem;font-weight:700;display:inline-grid;place-items:center}.forward-quote{display:flex;flex-direction:column;gap:.1rem;margin-bottom:.35rem;padding:.35rem .55rem;border-left:3px solid rgba(142,200,239,.85);background:#3a9ee01a;border-radius:0 10px 10px 0;font-size:.82rem}.forward-quote strong{font-size:.8rem;color:#9fd0ef}.forward-quote span{color:var(--tg-muted)}.edited-mark{font-size:.7rem;opacity:.75}.read-ticks{letter-spacing:-.12em;opacity:.75}.read-ticks.read{color:#6ec1ff;opacity:1}.edit-bar strong{color:#9fd0ef}.chat-preview{color:var(--tg-muted);font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-foot{padding:.65rem .85rem;border-top:1px solid rgba(255,255,255,.04);display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-shrink:0}.side-foot .who{font-size:.82rem;color:var(--tg-muted);min-width:0;display:flex;flex-direction:column;gap:.35rem}.who-btn{display:flex;align-items:center;gap:.55rem;background:transparent;border:none;color:inherit;text-align:left;padding:0;cursor:pointer}.who-sub{font-size:.72rem;opacity:.85}.side-foot .linkish{color:var(--tg-blue);font-size:.82rem;font-weight:600}.main{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;overflow:hidden;background:radial-gradient(circle at 20% 10%,rgba(58,158,224,.1),transparent 35%),radial-gradient(circle at 80% 90%,rgba(43,82,120,.12),transparent 30%),repeating-linear-gradient(-18deg,transparent,transparent 11px,rgba(255,255,255,.022) 11px,rgba(255,255,255,.022) 12px),var(--tg-chat-bg)}.topbar{display:flex;align-items:center;gap:.75rem;padding:.55rem 1rem;background:#17212b;border-bottom:1px solid rgba(255,255,255,.04);flex-shrink:0;position:sticky;top:0;z-index:5}.topbar .info{display:flex;flex-direction:column;min-width:0;flex:1}.topbar .title{font-weight:600}.topbar .status{color:var(--tg-muted);font-size:.78rem}.typing-status{color:#8ec8ef;font-weight:600}.rt-dot.muted{opacity:.7}.messages{overflow:auto;flex:1 1 auto;min-height:0;padding:1rem 1.1rem .5rem;display:flex;flex-direction:column;gap:.35rem}.day-chip{align-self:center;background:#182533d9;color:var(--tg-muted);font-size:.75rem;padding:.25rem .65rem;border-radius:10px;margin:.4rem 0}.row{display:flex;width:100%}.row.mine{justify-content:flex-end}.bubble{max-width:min(460px,78%);padding:.45rem .55rem .3rem .65rem;border-radius:14px;background:var(--tg-in);position:relative;animation:rise .28s ease both;box-shadow:0 1px 1px #0000001f}.bubble:has(.image-msg){padding:.3rem;overflow:hidden}.bubble:has(.image-msg) .meta-line,.bubble:has(.image-msg) .reactions,.bubble:has(.image-msg) .image-caption{padding-left:.35rem;padding-right:.35rem}.row.mine .bubble{background:var(--tg-out);border-bottom-right-radius:4px}.row:not(.mine) .bubble{border-bottom-left-radius:4px}.sender{color:#6ec9ff;font-size:.78rem;font-weight:600;margin-bottom:.15rem}.bubble .text{white-space:pre-wrap;word-break:break-word;line-height:1.35;font-size:.95rem}.meta-line{display:flex;justify-content:flex-end;align-items:center;gap:.25rem;margin-top:.15rem;color:#ffffff73;font-size:.68rem}.file-card{display:flex;align-items:center;gap:.65rem;min-width:200px;text-decoration:none;color:inherit}.image-msg{display:block;color:inherit;max-width:min(320px,72vw)}.image-open{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;border-radius:12px;overflow:hidden}.image-msg img{display:block;width:100%;max-height:360px;object-fit:cover;border-radius:12px;background:#0b141a;pointer-events:none}.image-caption{margin-top:.35rem;font-size:.9rem;line-height:1.35;white-space:pre-wrap}.reactions{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.4rem;align-items:center}.reaction-chip{display:inline-flex;align-items:center;gap:.25rem;background:#a8c4dc1f;border:1px solid rgba(168,196,220,.2);border-radius:999px;padding:.15rem .45rem;font-size:.8rem}.reaction-chip.me{background:#a8c4dc47;border-color:#a8c4dc73}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#000000e0;display:grid;place-items:center;padding:1.5rem}.lightbox img{max-width:min(960px,100%);max-height:90vh;object-fit:contain;border-radius:8px}.lightbox-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;background:#ffffff1f;color:#fff;font-size:1.1rem}.ctx-reactions{display:grid;grid-template-columns:repeat(4,1fr);gap:.2rem;padding:.25rem;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:.15rem}.ctx-reactions button{text-align:center;font-size:1.15rem;padding:.35rem}.file-ico{width:42px;height:42px;border-radius:50%;background:#2aabee40;color:#7fd0ff;display:grid;place-items:center;font-weight:700;font-size:.75rem}.file-name{font-weight:560;font-size:.9rem}.file-sub{color:var(--tg-muted);font-size:.75rem}.circle-wrap{width:220px;height:220px;border-radius:50%;overflow:hidden;background:#000;position:relative;border:3px solid rgba(42,171,238,.55)}.circle-wrap video{width:100%;height:100%;object-fit:cover}.circle-dur{position:absolute;left:50%;bottom:10px;transform:translate(-50%);background:#0000008c;padding:.15rem .45rem;border-radius:8px;font-size:.72rem}.icon-btn.on{color:var(--tg-blue);background:#3a9ee024}.sticker-msg{width:148px;height:148px;object-fit:contain;display:block;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 4px 10px rgba(0,0,0,.22))}.row.mine .bubble:has(.sticker-msg),.bubble:has(.sticker-msg){background:transparent;box-shadow:none;padding:.1rem}.sticker-panel{background:linear-gradient(180deg,#1a2430,#151e28);border-top:1px solid rgba(255,255,255,.06);padding:.45rem .65rem .55rem;flex-shrink:0}.sticker-panel.soft{background:linear-gradient(180deg,#1c2734,#16202a)}.sticker-panel-head{display:flex;justify-content:space-between;align-items:center;color:var(--tg-muted);font-size:.82rem;font-weight:600;margin-bottom:.4rem;gap:.5rem}.panel-tabs{display:flex;gap:.35rem}.panel-tabs button{background:transparent;color:var(--tg-muted);border-radius:999px;padding:.3rem .75rem;font-size:.8rem;font-weight:600}.panel-tabs button.on{background:#a8c4dc2e;color:#c8ddf0}.panel-close{background:transparent;color:var(--tg-muted);font-size:.95rem;padding:.2rem .4rem}.sticker-grid{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:.35rem;overflow:visible;padding:.15rem .1rem .25rem}.sticker-grid.soft{gap:.3rem}.sticker-pick{flex:0 0 auto;width:64px;height:64px;border-radius:12px;background:transparent;padding:0;border:none;display:grid;place-items:center;transition:background .12s ease,transform .12s ease}.sticker-pick:hover{background:#c8dcf01a;transform:scale(1.06)}.sticker-pick img{width:58px;height:58px;object-fit:contain;display:block;pointer-events:none}.msg-actions{display:flex;gap:.2rem;margin-top:.2rem;opacity:0;transition:opacity .12s ease}.row:hover .msg-actions,.row:focus-within .msg-actions{opacity:1}.msg-act{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#ffffff0f;color:#a8c4dc;border:none;cursor:pointer;padding:0}.msg-act:hover{background:#a8c4dc38;color:#e8f2fa}.row.mine .msg-act{color:#b8d4e8}.emoji-panel{display:grid;gap:.25rem}.emoji-cats{display:flex;gap:.2rem;overflow-x:auto;padding:0 .15rem .1rem;scrollbar-width:thin}.emoji-cats button{flex:0 0 auto;width:34px;height:34px;border-radius:10px;background:transparent;font-size:1.05rem;line-height:1}.emoji-cats button.on{background:#a8c4dc33}.emoji-grid{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:.2rem;overflow:visible;max-height:168px;overflow-y:auto;padding:.1rem .1rem .25rem;scrollbar-width:thin}.emoji-grid.compact{max-height:140px}.emoji-cell{flex:0 0 auto;width:40px;height:40px;border-radius:10px;background:transparent;font-size:1.35rem;line-height:1;display:grid;place-items:center;padding:0;transition:background .12s ease,transform .12s ease}.emoji-cell:hover{background:#c8dcf01a;transform:scale(1.08)}.emoji-float{position:fixed;z-index:80;width:min(300px,calc(100vw - 24px));background:#1a2430;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:.55rem;box-shadow:0 16px 40px #00000073;display:grid;gap:.4rem}.emoji-quick{display:flex;justify-content:space-between;gap:.15rem;padding-bottom:.35rem;border-bottom:1px solid rgba(255,255,255,.06)}.emoji-quick button{width:32px;height:32px;border-radius:10px;background:#ffffff0a;font-size:1.2rem;line-height:1}.emoji-quick button:hover{background:#a8c4dc33}@media(max-width:700px){.msg-actions{opacity:1}.sticker-msg{width:120px;height:120px}.sticker-pick{width:56px;height:56px}.sticker-pick img{width:50px;height:50px}.emoji-cell{width:36px;height:36px;font-size:1.25rem}}.composer{display:flex;align-items:flex-end;gap:.45rem;padding:.55rem .75rem .7rem;background:#17212b;border-top:1px solid rgba(255,255,255,.04);flex-shrink:0;position:relative}.attach-wrap{position:relative;flex-shrink:0}.attach-menu{position:absolute;left:0;bottom:calc(100% + 8px);min-width:160px;background:#1e2a38;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:.35rem;display:grid;gap:.15rem;z-index:30;box-shadow:0 12px 32px #0006}.attach-menu button{text-align:left;padding:.55rem .75rem;border-radius:10px;font-weight:600;font-size:.9rem;color:#e8eef5}.attach-menu button:hover{background:#a8c4dc24}.share-card{display:flex;align-items:center;gap:.7rem;min-width:220px;max-width:280px;padding:.65rem .75rem;border-radius:14px;background:#ffffff0f;text-align:left;color:inherit}.task-share-card:hover{background:#a8c4dc24}.share-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#3a9ee038;color:#9fd0ef;font-size:.65rem;font-weight:800;letter-spacing:.04em;flex-shrink:0}.share-meta{min-width:0}.share-title{font-weight:650;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.share-sub{color:var(--tg-muted);font-size:.78rem;margin-top:.12rem}.contact-card{flex-wrap:wrap;max-width:300px;align-items:flex-start}.contact-actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.45rem}.contact-act{font-size:.72rem;font-weight:650;padding:.28rem .55rem;border-radius:8px;background:#3a9ee038;color:#b6dff5}.contact-act:hover{background:#3a9ee059}.attach-sheet{width:min(420px,100%);max-height:min(70vh,520px);display:flex;flex-direction:column}.attach-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.attach-sheet-head h3{margin:0}.attach-pick-list{overflow:auto;display:flex;flex-direction:column;gap:.35rem;max-height:420px}.attach-pick-row{display:flex;align-items:center;gap:.7rem;padding:.55rem .6rem;border-radius:12px;text-align:left;width:100%}.attach-pick-row:hover{background:#a8c4dc1f}.attach-empty{color:var(--tg-muted);font-size:.88rem;padding:.75rem .25rem}.attach-section-label{color:var(--tg-muted);font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.55rem .35rem .15rem}.attach-pick-row.attach-create{background:#3a9ee01f;margin-bottom:.15rem}.attach-pick-row.attach-create:hover{background:#3a9ee033}.icon-btn{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:var(--tg-muted);flex-shrink:0;transition:background .15s,color .15s}.icon-btn:hover{background:#ffffff0f;color:#fff}.icon-btn.rec{background:#e53935;color:#fff;animation:pulse 1s ease infinite}.composer-box{flex:1;background:#242f3d;border-radius:18px;padding:.65rem .9rem;min-height:42px;max-height:140px;resize:none;line-height:1.35}.send-btn{width:42px;height:42px;border-radius:50%;background:var(--tg-blue);color:#fff;display:grid;place-items:center;flex-shrink:0}.send-btn:hover{background:var(--tg-blue-dark)}.circle-btn{width:42px;height:42px;border-radius:50%;border:2px solid var(--tg-blue);color:var(--tg-blue);display:grid;place-items:center;flex-shrink:0;font-size:.72rem;font-weight:700}.circle-btn:hover,.circle-btn.on{background:var(--tg-blue);color:#fff}.rec-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b8;display:grid;place-items:center;z-index:40;animation:rise .25s ease both}.rec-panel{display:flex;flex-direction:column;align-items:center;gap:1rem}.rec-preview{width:min(280px,70vw);height:min(280px,70vw);border-radius:50%;overflow:hidden;border:4px solid #e53935;background:#000}.rec-preview video{width:100%;height:100%;object-fit:cover}.rec-actions{display:flex;gap:.75rem}.rec-actions button{padding:.7rem 1.1rem;border-radius:12px;font-weight:600}.rec-actions .stop{background:#e53935;color:#fff}.rec-actions .cancel{background:#242f3d;color:#fff}.rec-timer{color:#fff;font-variant-numeric:tabular-nums}.empty-main{display:grid;place-items:center;color:var(--tg-muted);text-align:center;padding:2rem}.empty-main .pill{background:#182533e6;padding:.75rem 1.1rem;border-radius:14px}.empty-logo-wrap{width:120px;height:120px;border-radius:50%;overflow:hidden;background:#fff;margin-bottom:1rem}.empty-logo{width:100%;height:100%;object-fit:cover;object-position:center 40%;transform:scale(1.28);display:block}.avatar.chat-avatar{overflow:hidden;padding:0;border-radius:50%}.avatar.chat-avatar img{width:100%;height:100%;object-fit:cover;object-position:center 42%;transform:scale(1.22);background:#fff;padding:0}.avatar.sm{width:42px;height:42px;font-size:.85rem;border-radius:50%}.side-foot{flex-wrap:wrap}.foot-actions{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.tasks-toggle{color:var(--tg-blue);font-size:.78rem;font-weight:600}.tasks-toggle.on{color:#7fd0ff}.pinned-bar{display:flex;align-items:center;gap:.25rem;width:100%;padding:.35rem .5rem;background:#2b527873;border-bottom:1px solid rgba(255,255,255,.04);color:#fff;flex-shrink:0}.pin-nav{width:34px;height:34px;border-radius:8px;color:#fff;font-size:1.35rem;line-height:1;flex-shrink:0}.pin-nav:hover:not(:disabled){background:#ffffff14}.pin-nav:disabled{opacity:.35}.pin-main{flex:1;min-width:0;display:flex;align-items:center;gap:.55rem;text-align:left;padding:.35rem .45rem;border-radius:8px;color:#fff}.pin-main:hover{background:#ffffff0f}.pin-ico{flex-shrink:0}.pin-meta{min-width:0;display:flex;flex-direction:column;gap:.05rem}.pin-count{font-size:.7rem;color:#7fd0ff;font-weight:600}.pin-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem}.reply-quote{border-left:3px solid #6ec9ff;padding:.2rem .55rem;margin-bottom:.35rem;background:#00000026;border-radius:0 8px 8px 0;display:flex;flex-direction:column;gap:.1rem;font-size:.8rem}.reply-quote strong{color:#6ec9ff}.reply-quote span{color:#ffffffb3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reply-bar{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem 1rem;background:#1b2734;border-top:1px solid rgba(255,255,255,.04);font-size:.85rem}.reply-bar strong{color:#6ec9ff;display:block}.reply-bar div div{color:var(--tg-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:70vw}.ctx-menu{position:fixed;z-index:50;min-width:160px;background:#17212b;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:.35rem;box-shadow:0 12px 40px #00000073;display:flex;flex-direction:column}.ctx-menu button{text-align:left;padding:.65rem .8rem;border-radius:8px;font-size:.9rem}.ctx-menu button:hover{background:#ffffff0f}.ctx-menu button.danger{color:#ff8a80}.tasks-panel{background:#17212b;border-left:1px solid rgba(255,255,255,.04);display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;overflow:hidden}.tasks-head{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1rem;border-bottom:1px solid rgba(255,255,255,.04);flex-shrink:0}.tasks-head h2{margin:0;font-size:1.05rem}.tasks-list{overflow:auto;flex:1;min-height:0;padding:.75rem;display:flex;flex-direction:column;gap:.55rem}.tasks-empty{color:var(--tg-muted);font-size:.86rem;line-height:1.4;padding:.5rem}.task-card{background:#242f3d;border-radius:12px;padding:.75rem;border:1px solid transparent}.task-card.soon{border-color:#ffc10773}.task-card.overdue{border-color:#ff8a808c}.task-card.done{opacity:.88}.task-title{font-weight:600;margin-bottom:.25rem}.task-meta{color:var(--tg-muted);font-size:.78rem;margin-bottom:.35rem}.task-stamp{white-space:nowrap}.task-assignees{color:#c8d8e8;font-size:.76rem;margin-bottom:.35rem}.task-closed-stamp{color:#9ad4a8;font-size:.74rem;margin-bottom:.45rem}.task-done{background:#2aabee33;color:#7fd0ff;border-radius:8px;padding:.4rem .7rem}.task-done.ghostish{background:#ffffff0f;color:var(--tg-muted)}.tasks-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;padding:.55rem .75rem 0}.tasks-tabs button{background:#242f3d;border-radius:10px;padding:.45rem .5rem;font-size:.8rem;font-weight:600;color:var(--tg-muted)}.tasks-tabs button.on{background:#a8c4dc38;color:#d8e8f4}.check-row{display:flex!important;flex-direction:row!important;align-items:center;gap:.55rem;color:#e8eef4!important}.check-row input{width:auto;accent-color:#8fb0cb}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:grid;place-items:center;z-index:60;padding:1rem}.modal-card,.modal{width:min(400px,100%);background:#17212b;border-radius:16px;padding:1.25rem;display:grid;gap:.75rem}.modal-card h3,.modal h3{margin:0}.modal-card .hint{color:var(--tg-muted);font-size:.85rem;margin:0}.modal-card code{display:block;background:#242f3d;padding:.75rem;border-radius:10px;white-space:pre-wrap;word-break:break-all}.modal-card input{background:#242f3d;border-radius:10px;padding:.7rem .8rem;color:#fff;border:1px solid rgba(255,255,255,.06)}.modal label{display:grid;gap:.35rem;font-size:.85rem;color:var(--tg-muted)}.modal input,.modal select{background:#242f3d;border-radius:10px;padding:.7rem .8rem;color:#fff;border:1px solid rgba(255,255,255,.06)}.modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.25rem}.ghost-btn{background:#242f3d;color:#fff;border-radius:10px;padding:.65rem .9rem}.primary-btn{background:var(--tg-blue);color:#fff;border-radius:10px;padding:.65rem .9rem;font-weight:600}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:#242f3d;color:#fff;padding:.7rem 1rem;border-radius:12px;z-index:70;box-shadow:0 10px 30px #00000059;animation:rise .25s ease both}.error-fixed{position:fixed;bottom:12px;left:12px;color:#ff8a80;font-size:12px;z-index:70}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@media(max-width:1100px){.app.with-tasks{grid-template-columns:280px 1fr 260px}}@media(max-width:860px){.app,.app.with-tasks{grid-template-columns:1fr}.app.mobile-list .main{display:none}.app.mobile-list .sidebar{display:flex;width:100%}.app.mobile-chat .sidebar{display:none}.app.mobile-chat .main{display:flex}.mobile-back{display:grid!important}.tasks-panel{position:absolute;top:0;right:0;bottom:0;left:0;z-index:25}}.mobile-back{display:none}.new-chat-btn{width:36px!important;height:36px!important;flex-shrink:0}.chat-type-tag{display:inline-block;margin-right:.35rem;padding:.05rem .35rem;border-radius:6px;background:#a8c4dc24;color:#a8c4dc;font-size:.68rem;font-weight:600}.modal.wide-modal{width:min(460px,100%)}.modal-hint{margin:0;color:var(--tg-muted);font-size:.8rem;line-height:1.4}.photo-avatar-picker{display:flex;align-items:center;gap:.85rem}.photo-avatar-preview{width:72px;height:72px;border-radius:50%;overflow:hidden;background:#fff;flex-shrink:0;border:2px solid rgba(168,196,220,.35)}.photo-avatar-picker.sm .photo-avatar-preview{width:56px;height:56px}.photo-avatar-preview img{width:100%;height:100%;object-fit:cover;object-position:center 40%;display:block}.photo-avatar-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;min-width:0}.type-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem}.type-seg button{background:#242f3d;border-radius:10px;padding:.55rem .35rem;font-size:.82rem;font-weight:600}.type-seg button.on{background:#a8c4dc38;outline:1px solid rgba(168,196,220,.45)}.member-pick{display:flex;flex-wrap:wrap;gap:.35rem;max-height:140px;overflow:auto}.inline-row{display:flex;gap:.4rem;align-items:center}.inline-row input{flex:1}.ghost-btn.full{width:100%;margin:.35rem 0 .6rem}.member-opt{background:#242f3d;border-radius:999px;padding:.35rem .7rem;font-size:.82rem}.member-opt.on{background:#a8c4dc40}.member-list{display:grid;gap:.35rem;max-height:180px;overflow:auto}.member-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .5rem;border-radius:10px;background:#00000026;font-size:.86rem}.member-actions{display:flex;flex-wrap:wrap;gap:.25rem;justify-content:flex-end}.ghost-btn.tiny{padding:.3rem .55rem;font-size:.72rem}.ghost-btn.tiny.danger{color:#ff8f8f}
