.forced-password-page{box-sizing:border-box;min-height:100dvh;color:var(--text);background:radial-gradient(circle at 18% 12%, #7453ff3b, transparent 34%), radial-gradient(circle at 86% 78%, #2acf9b1f, transparent 30%), var(--bg);place-items:center;padding:24px;display:grid}.forced-password-card{box-sizing:border-box;border:1px solid var(--line-strong);background:color-mix(in srgb, var(--surface) 94%, transparent);border-radius:24px;width:min(100%,520px);padding:30px;box-shadow:0 24px 70px #00000057}.forced-password-brand{color:var(--text-bright);align-items:center;gap:10px;font-size:18px;font-weight:800;display:flex}.forced-password-brand img{width:42px;height:42px}.forced-password-lock{color:#fff;background:linear-gradient(145deg,#856eff,#5d42d6);border-radius:16px;place-items:center;width:48px;height:48px;margin:26px 0 14px;font-size:28px;font-weight:800;display:grid;box-shadow:0 10px 28px #7453ff57}.forced-password-eyebrow{color:var(--brand);letter-spacing:.09em;text-transform:uppercase;margin:0 0 7px;font-size:12px;font-weight:800}.forced-password-card h1{color:var(--text-bright);margin:0;font-size:clamp(26px,5vw,36px);line-height:1.08}.forced-password-lead{color:var(--text-muted);margin:12px 0 24px;line-height:1.55}.forced-password-form{flex-direction:column;gap:14px;display:flex}.forced-password-form>label:not(.forced-password-show){color:var(--text);gap:7px;font-size:13px;font-weight:700;display:grid}.forced-password-form input[type=password],.forced-password-form input[type=text]{box-sizing:border-box;border:1px solid var(--line-strong);width:100%;min-height:46px;color:var(--text-bright);background:var(--surface-inset);font:inherit;border-radius:12px;outline:0;padding:10px 13px}.forced-password-form input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.forced-password-show{color:var(--text-muted);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.forced-password-show input{width:17px;height:17px;accent-color:var(--brand)}.forced-password-warning,.forced-password-error{border-radius:12px;padding:11px 13px;font-size:13px;line-height:1.45}.forced-password-warning{color:#e6b86d;background:#e6a23c17;border:1px solid #e6a23c47}.forced-password-error{color:#ff8f92;background:#ed42451a;border:1px solid #ed42454d}.forced-password-danger{color:#ffb3b5;background:#ed42451a;border:1px solid #ed424557;border-radius:12px;gap:7px;padding:12px 14px;font-size:13px;line-height:1.45;display:grid}.forced-password-danger b{color:#ff8f92;font-size:14px}.forced-password-danger p{margin:0}.forced-password-accept{color:var(--text);cursor:pointer;align-items:center;gap:8px;margin-top:2px;font-size:13px;font-weight:600;display:flex}.forced-password-accept input{width:17px;height:17px;accent-color:var(--danger,#ed4245);flex-shrink:0}.forced-password-submit,.forced-password-logout{min-height:46px;font:inherit;cursor:pointer;border-radius:12px;font-weight:800}.forced-password-submit{color:#fff;background:linear-gradient(135deg,#8068f7,#6448d8);border:0;box-shadow:0 10px 24px #6448d847}.forced-password-logout{border:1px solid var(--line);color:var(--text-muted);background:0 0}.forced-password-submit:disabled,.forced-password-logout:disabled{opacity:.62;cursor:wait}@media (width<=560px){.forced-password-page{align-items:start;padding:12px}.forced-password-card{border-radius:20px;margin-top:10px;padding:22px 18px}.forced-password-lock{margin-top:20px}}.forced-password-linkbtn{color:var(--accent);font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:none;align-self:flex-start;padding:0;font-size:13px;text-decoration:underline}.forced-password-linkbtn:hover:not(:disabled){opacity:.82}.forced-password-linkbtn:disabled{opacity:.5;cursor:default}.uam-backdrop{z-index:80;position:fixed;inset:0}.uam{z-index:81;width:224px;padding:var(--sp-2);background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--sh-lg);animation:.12s uamIn;position:fixed}@keyframes uamIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.uam-name{font-size:var(--fs-sm);color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;padding:2px 4px 8px;font-weight:700;overflow:hidden}.uam-vol{color:var(--text-muted);align-items:center;gap:8px;padding:2px 4px 8px;display:flex}.uam-vol.off{opacity:.45}.uam-vol input{flex:1;min-width:0}.uam-vol b{color:var(--text-bright);font-size:var(--fs-xs);text-align:right;flex:none;min-width:36px}.uam-mute{border-radius:var(--r-sm);width:100%;font-size:var(--fs-sm);color:var(--text-bright);text-align:left;align-items:center;gap:8px;padding:8px;font-weight:600;transition:background .14s;display:flex}.uam-mute:hover{background:var(--surface-2)}.uam-mute.on{color:var(--danger)}.ms-icon-btn{border-radius:var(--r-sm);background:var(--brand-bg-tint);width:38px;height:38px;color:color-mix(in srgb, var(--text) 96%, var(--text-muted));border:1px solid #0000;flex:none;place-items:center;transition:background-color .14s,border-color .14s,box-shadow .14s,color .14s,transform 80ms;display:grid}.ms-icon-btn:hover,.ms-icon-btn:focus-visible{border-color:var(--brand-ring);background:var(--brand-soft);color:var(--text);box-shadow:0 0 14px var(--brand-glow);outline:none;transform:translateY(-1px)}.ms-icon-btn.active{border-color:var(--brand-ring);background:var(--brand-soft);color:var(--text);box-shadow:0 0 14px var(--brand-glow)}.ms-more-wrap{position:relative}.ms-header-menu-backdrop{z-index:90;position:fixed;inset:0}.ms-header-menu{z-index:91;border:1px solid var(--brand-ring);border-radius:var(--r-md);background:var(--surface-pop);width:min(250px,100vw - 24px);box-shadow:var(--sh-lg), 0 0 18px var(--brand-bg-tint);flex-direction:column;gap:2px;padding:6px;animation:.12s msCtxPop;display:flex;position:absolute;top:calc(100% + 8px);right:0}.ms-header-menu button{border-radius:var(--r-sm);width:100%;min-height:38px;color:var(--text);font-size:var(--fs-sm);text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:9px 10px;font-weight:600;display:flex}.ms-header-menu button:hover,.ms-header-menu button:focus-visible{background:var(--brand-bg-glow);color:var(--brand);outline:none}.ms-header-menu .ms-header-menu-danger{color:var(--danger)}.ms-header-menu .ms-header-menu-danger:hover,.ms-header-menu .ms-header-menu-danger:focus-visible{color:var(--danger);background:#f0436a1f}.ms-menu-star-pinned{color:var(--text-muted);fill:none}.ms-common-server{align-items:center;gap:var(--sp-2);border-radius:var(--r-sm);width:100%;color:var(--text-bright);font-size:var(--fs-sm);text-align:left;cursor:pointer;background:0 0;border:none;padding:7px 8px;font-weight:600;transition:background .14s;display:flex}.ms-common-server:hover{background:var(--surface-2)}.ms-common-server span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ms-ctx-backdrop{z-index:80;position:fixed;inset:0}.ms-ctx{z-index:81;background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-md);min-width:190px;box-shadow:var(--sh-lg);flex-direction:column;gap:2px;padding:6px;animation:.12s msCtxPop;display:flex;position:fixed}.ms-ctx button{text-align:left;border-radius:var(--r-sm);width:100%;color:var(--text-bright);font-size:var(--fs-sm);cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:9px 10px;font-weight:600;transition:background .12s,color .12s;display:flex}.ms-ctx button:hover{background:var(--surface-2)}.ms-ctx button svg{color:var(--text-muted);flex:none}.ms-ctx button.danger,.ms-ctx button.danger svg{color:var(--danger)}.ms-ctx button.danger:hover{background:#f0436a1f}.ms-ctx-reactions{grid-template-columns:repeat(6,1fr);gap:3px;padding:2px;display:grid}.ms-ctx .ms-ctx-reactions button{border:1px solid #0000;justify-content:center;width:34px;height:34px;padding:0;font-size:19px;line-height:1}.ms-ctx .ms-ctx-reactions button.mine{border-color:var(--brand);background:var(--brand-soft)}.ms-ctx-divider{background:var(--line);height:1px;margin:4px 3px}@keyframes msCtxPop{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.ms-pinned-item{align-items:flex-start;gap:var(--sp-2);border-radius:var(--r-sm);background:var(--surface-2);padding:8px;display:flex}.ms-pinned-item>svg{color:var(--brand);flex:none;margin-top:2px}.ms-pinned-body{cursor:pointer;flex:1;min-width:0}.ms-pinned-text{font-size:var(--fs-sm);color:var(--text-bright);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ms-pinned-meta{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}.ms-pinned-unpin{width:24px;height:24px;color:var(--text-muted);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:none;flex:none;place-items:center;display:grid}.ms-pinned-unpin:hover{color:var(--text-bright);background:var(--surface-3)}@keyframes msRowFlash{0%{background:var(--brand-glow)}to{background:0 0}}.ms-row-flash{border-radius:10px;animation:1.6s msRowFlash}.ms-search-bar{align-items:center;gap:var(--sp-2);border-bottom:1px solid var(--line);flex:none;padding:8px 14px;display:flex}.ms-search-bar>svg{color:var(--text-muted);flex:none}.ms-search-bar input{min-width:0;color:var(--text-bright);font-size:var(--fs-md);background:0 0;border:none;outline:none;flex:1}.ms-search-count{font-size:var(--fs-sm);color:var(--text-muted);flex:none}.ms-search-progress{font-size:var(--fs-xs);color:var(--text-muted);flex:none;align-items:center;gap:5px;display:inline-flex}.ms-search-spinner{border:2px solid var(--line-strong);border-top-color:var(--brand);border-radius:50%;flex:none;width:13px;height:13px;animation:.7s linear infinite msSearchSpin;display:inline-block}@keyframes msSearchSpin{to{transform:rotate(360deg)}}.ms-search-x{width:28px;height:28px;color:var(--text-muted);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:none;flex:none;place-items:center;transition:background .14s,color .14s;display:grid}.ms-search-x:hover{background:var(--surface-3);color:var(--text-bright)}.ms-search-results{border-bottom:1px solid var(--line);background:var(--surface-inset);flex:none}.ms-search-state{min-height:56px;color:var(--text-muted);font-size:var(--fs-sm);text-align:center;justify-content:center;align-items:center;gap:8px;padding:14px 18px;display:flex}.ms-search-state.error{color:var(--danger)}.ms-search-state button{border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-bright);padding:5px 10px;font-weight:600}.ms-search-summary{border-bottom:1px solid var(--line);color:var(--text-muted);font-size:var(--fs-xs);justify-content:space-between;align-items:center;gap:10px;padding:7px 14px;display:flex}.ms-search-summary span{color:var(--success);align-items:center;gap:4px;display:inline-flex}.ms-search-list{max-height:280px;padding:5px 7px;overflow-y:auto}.ms-search-result{border-radius:var(--r-sm);width:100%;color:var(--text-bright);text-align:left;flex-direction:column;gap:3px;padding:9px 11px;transition:background .12s;display:flex}.ms-search-result:hover{background:var(--surface-2)}.ms-search-result-meta,.ms-search-result-text{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.ms-search-result-meta{color:var(--text-muted);font-size:11px}.ms-search-result-text{font-size:var(--fs-sm)}.ms-hl{background:var(--brand);color:#fff;border-radius:3px;padding:0 1px}@media (width<=768px){.ms-search-list{max-height:38vh}.ms-search-summary span{display:none}}.ms-side{flex-direction:column;height:100%;display:flex}.ms-side-top{margin-bottom:var(--sp-4);justify-content:space-between;align-items:center;display:flex}.ms-side-title{font-size:var(--fs-xl);color:var(--text-bright);font-weight:800}.ms-new-btn{justify-content:center;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-4);border-radius:var(--r-md);background:var(--brand);color:#fff;font-size:var(--fs-md);box-shadow:0 4px 14px var(--brand-glow);padding:11px;font-weight:700;transition:background .14s,transform 80ms;display:flex}.ms-new-btn:hover{background:var(--brand-hover)}.ms-new-btn:active{transform:scale(.97)}.ms-filters{flex-direction:column;gap:2px;display:flex}.ms-filter{align-items:center;gap:var(--sp-3);border-radius:var(--r-md);color:var(--text-muted);font-size:var(--fs-md);padding:10px 12px;font-weight:600;transition:background .14s,color .14s;display:flex}.ms-filter:hover{background:var(--surface-2);color:var(--text-bright)}.ms-filter.active{background:var(--brand-soft);color:var(--text-bright)}.ms-filter-label{text-align:left;flex:1}.ms-filter-count{text-align:center;border-radius:var(--r-pill);background:var(--surface-3);min-width:22px;color:var(--text-muted);font-size:var(--fs-sm);padding:1px 7px;font-weight:700}.ms-filter.active .ms-filter-count{background:var(--brand);color:#fff}.ms-side-note{align-items:flex-start;gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);color:var(--text-muted);font-size:var(--fs-sm);margin-top:auto;line-height:1.45;display:flex}.ms-side-note>svg{color:var(--brand);flex:none;margin-top:1px}.ms-side-search{align-items:center;gap:var(--sp-2);padding:0 var(--sp-3);border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);height:36px;color:var(--text-muted);margin-bottom:var(--sp-3);display:flex}.ms-side-search:focus-within{border-color:var(--brand)}.ms-side-search>svg{flex:none}.ms-side-search input{min-width:0;color:var(--text-bright);font:inherit;font-size:var(--fs-sm);background:0 0;border:0;outline:none;flex:1}.ms-chips{gap:var(--sp-2);margin-bottom:var(--sp-3);display:flex}.ms-chip{border:1px solid var(--line);background:var(--surface);color:var(--text-muted);font-size:var(--fs-sm);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-weight:600;display:inline-flex}.ms-chip:hover,.ms-chip:focus-visible{color:var(--text-bright)}.ms-chip.active{background:var(--brand);border-color:var(--brand);color:#fff}.ms-chip-count{font-weight:700;font-size:var(--fs-xs);opacity:.85}.ms-rows{min-height:0;margin:0 calc(-1 * var(--sp-2));padding:0 var(--sp-2);flex-direction:column;flex:1;gap:2px;display:flex;overflow-y:auto}.ms-rows-empty{padding:var(--sp-5) var(--sp-2);color:var(--text-muted);font-size:var(--fs-sm);text-align:center}.ms-row{border-radius:var(--r-md);position:relative}.ms-row:hover{background:var(--surface)}.ms-row.active{background:color-mix(in srgb, var(--brand) 16%, transparent)}.ms-row-main{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-2);text-align:left;cursor:pointer;border-radius:var(--r-md);background:0 0;border:0;min-width:0;display:flex}.ms-row-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.ms-row-top{align-items:baseline;gap:6px;min-width:0;display:flex}.ms-row-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-bright);flex:1;font-weight:600;overflow:hidden}.ms-row.unread .ms-row-name{font-weight:800}.ms-row-star{color:var(--warning,#f0b429);flex:none}.ms-row-time{font-size:var(--fs-xs);color:var(--text-muted);flex:none}.ms-row-bottom{align-items:center;gap:var(--sp-2);min-width:0;display:flex}.ms-row-last{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--fs-sm);color:var(--text-muted);flex:1;overflow:hidden}.ms-row.unread .ms-row-last,.ms-row-sender{color:var(--text)}.ms-row-unread{background:var(--brand);color:#fff;min-width:20px;height:20px;font-size:var(--fs-xs);border-radius:999px;flex:none;place-items:center;padding:0 6px;font-weight:700;display:grid}.ms-row-more{border-radius:var(--r-sm);width:22px;height:22px;color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:8px;right:8px}.ms-row:hover .ms-row-time{opacity:0}.ms-row:has(.ms-row-more.active) .ms-row-time{opacity:0}.ms-row:hover .ms-row-more,.ms-row-more:focus-visible,.ms-row-more.active{opacity:1}.ms-row-more:hover,.ms-row-more.active{color:var(--text-bright)}.ms-row-menu{width:min(230px,100%);top:32px;left:auto;right:6px}.ms-rows-more{width:100%;margin-top:var(--sp-2);padding:var(--sp-2);color:var(--text-muted);font-size:var(--fs-sm);cursor:pointer;border-radius:var(--r-md);background:0 0;border:0;justify-content:center;align-items:center;gap:6px;font-weight:600;display:flex}.ms-rows-more:hover,.ms-rows-more:focus-visible{background:var(--surface);color:var(--text-bright)}.ms-rows-more-ic.up{transform:rotate(180deg)}.ms-blank{justify-content:center;align-items:center;gap:var(--sp-3);text-align:center;height:100%;color:var(--text-muted);flex-direction:column;display:flex}.ms-blank-ic{background:var(--surface);border:1px solid var(--line);width:72px;height:72px;color:var(--brand);border-radius:50%;place-items:center;display:grid}.ms-blank h1{font-size:var(--fs-xl);color:var(--text-bright);margin:0}.ms-blank p{max-width:42ch;font-size:var(--fs-sm);margin:0;line-height:1.5}.ms-blank-btn{margin-top:var(--sp-2);border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);color:var(--text-bright);cursor:pointer;align-items:center;gap:6px;padding:8px 16px;font-weight:600;display:inline-flex}.ms-blank-btn:hover,.ms-blank-btn:focus-visible{border-color:var(--brand)}.ms-head h1{font-size:var(--fs-2xl);color:var(--text-bright);font-weight:800}.ms-search{align-items:center;gap:var(--sp-2);margin:var(--sp-4) 0 var(--sp-3);background:var(--surface-inset);border:1px solid var(--line);border-radius:var(--r-md);color:var(--text-muted);padding:10px 14px;display:flex}.ms-search input{min-width:0;color:var(--text-bright);font-size:var(--fs-md);background:0 0;border:none;outline:none;flex:1}@media (width>=769px) and (width<=1080px){.ms-list-shell .page-right-toggle{top:var(--sp-5)}}.ms-section{margin:var(--sp-4) 0 var(--sp-2);font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-weight:700}.ms-section-groups{margin-top:var(--sp-6)}.ms-group-size{color:var(--text-muted);align-items:center;gap:3px;font-size:11px;display:inline-flex}.ms-convos{gap:var(--sp-2);flex-direction:column;display:flex}.ms-convo{--dot-ring:var(--surface);align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);transition:background-color .16s,border-color .16s,box-shadow .16s;display:flex}.ms-convo:hover{background:var(--brand-bg-tint);border-color:var(--brand-ring);box-shadow:inset 0 0 0 1px var(--brand-bg-glow);--dot-ring:var(--brand-bg-tint)}.ms-convo.unread{--dot-ring:var(--surface);background:linear-gradient(90deg, var(--brand-soft), var(--surface));box-shadow:inset 3px 0 0 var(--brand);border-color:#0000}.ms-convo.unread:hover{background:linear-gradient(90deg, var(--brand-soft), var(--brand-bg-tint))}.ms-convo-main{align-items:center;gap:var(--sp-3);text-align:left;flex:1;min-width:0;display:flex}.ms-convo-info{flex:1;min-width:0}.ms-convo-top{align-items:center;gap:var(--sp-2);display:flex}.ms-convo-name{color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.ms-convo.unread .ms-convo-name{font-weight:700}.ms-convo-star{color:var(--text-muted);fill:none;flex:none}.ms-new-badge{border-radius:var(--r-pill);background:var(--brand);color:#fff;flex:none;padding:1px 7px;font-size:10px;font-weight:700}.ms-convo-time{font-size:var(--fs-xs);color:var(--text-muted);flex:none;margin-left:auto}.ms-convo-bottom{align-items:center;gap:var(--sp-2);margin-top:2px;display:flex}.ms-convo-last{min-width:0;font-size:var(--fs-sm);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.ms-convo.unread .ms-convo-last{color:var(--text)}.ms-unread{border-radius:var(--r-pill);background:var(--brand);color:#fff;flex:none;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.ms-convo-actions{align-items:center;gap:var(--sp-2);flex:none;display:flex}.ms-act{border-radius:var(--r-sm);height:38px;font-size:var(--fs-sm);border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:600;transition:background-color .14s,border-color .14s,box-shadow .14s,color .14s,transform 80ms;display:inline-flex}.ms-act.write{color:color-mix(in srgb, var(--text) 96%, var(--text-muted));border-color:var(--brand-ring);background:var(--brand-bg-glow);font-weight:500}.ms-act.write:hover,.ms-act.write:focus-visible{border-color:var(--brand-ring);background:var(--brand-soft);color:var(--text);box-shadow:0 0 14px var(--brand-glow);outline:none;transform:translateY(-1px)}.ms-act.call,.ms-act.danger,.ms-act.more{width:38px;padding:0}.ms-act.call{color:color-mix(in srgb, var(--text) 96%, var(--text-muted));background:var(--brand-bg-tint);border-color:color-mix(in srgb, var(--brand-ring) 45%, transparent)}.ms-act.call:hover,.ms-act.call:focus-visible,.ms-act.more:hover,.ms-act.more:focus-visible,.ms-act.more.active{border-color:var(--brand-ring);background:var(--brand-soft);color:var(--text);box-shadow:0 0 14px var(--brand-glow);outline:none;transform:translateY(-1px)}.ms-act.more{color:color-mix(in srgb, var(--text) 96%, var(--text-muted));background:var(--brand-bg-tint);border-color:color-mix(in srgb, var(--brand-ring) 45%, transparent)}.ms-icon-btn.ms-action-call,.ms-icon-btn.ms-action-more{border-color:color-mix(in srgb, var(--brand-ring) 45%, transparent)}.ms-icon-btn.ms-action-call:hover,.ms-icon-btn.ms-action-call:focus-visible,.ms-icon-btn.ms-action-more:hover,.ms-icon-btn.ms-action-more:focus-visible,.ms-icon-btn.ms-action-more.active{border-color:var(--brand-ring)}.ms-act.danger{color:var(--danger);background:#f0436a1f}.ms-act.danger:hover{color:#fff;background:var(--danger)}.ms-convo-menu{top:calc(100% + 8px);right:0}.ms-convo-menu:before{content:"";border-top:1px solid var(--brand-ring);border-left:1px solid var(--brand-ring);background:var(--surface-pop);width:10px;height:10px;position:absolute;top:-6px;right:12px;transform:rotate(45deg)}.ms-convo:last-child .ms-convo-menu{top:auto;bottom:calc(100% + 8px)}.ms-convo:last-child .ms-convo-menu:before{top:auto;bottom:-6px;transform:rotate(225deg)}@media (width<=1240px){.ms-act.write span{display:none}.ms-act.write{width:38px;padding:0}}.ms-convo-foot{margin-top:var(--sp-4);text-align:center;font-size:var(--fs-sm);color:var(--text-muted)}button.ms-empty-action{width:100%;color:var(--brand);border-radius:var(--r-md);justify-content:center;align-items:center;gap:8px;font-weight:600;transition:background .14s;display:flex}button.ms-empty-action:hover{background:var(--brand-soft)}.ms-empty{padding:var(--sp-8);text-align:center;color:var(--text-muted)}.ms-rp-title{margin-bottom:var(--sp-4);font-size:var(--fs-lg);color:var(--text-bright);font-weight:800}.ms-rp-card{margin-bottom:var(--sp-3);padding:var(--sp-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg)}.ms-rp-stat{align-items:center;gap:var(--sp-3);display:flex}.ms-rp-ic{border-radius:var(--r-md);background:var(--brand-soft);width:42px;height:42px;color:var(--brand);flex:none;place-items:center;display:grid}.ms-rp-stat b{font-size:var(--fs-2xl);color:var(--text-bright);font-weight:800;line-height:1.1;display:block}.ms-rp-stat span{font-size:var(--fs-sm);color:var(--text-muted)}.ms-new-group{width:100%;margin-bottom:var(--sp-3);align-items:center;gap:var(--sp-3);border:1px solid var(--brand);border-radius:var(--r-md);background:var(--brand-soft);color:var(--text-bright);text-align:left;padding:11px 12px;display:flex}.ms-new-group>span{flex-direction:column;flex:1;gap:2px;display:flex}.ms-new-group small{color:var(--text-muted)}.ms-new-group:hover{filter:brightness(1.12)}.ms-new-search{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-3);background:var(--surface-inset);border:1px solid var(--line-strong);border-radius:var(--r-sm);color:var(--text-muted);padding:10px 12px;display:flex}.ms-new-search input{color:var(--text-bright);font-size:var(--fs-md);background:0 0;border:none;outline:none;flex:1}.ms-new-list{flex-direction:column;gap:2px;max-height:50vh;display:flex;overflow-y:auto}.ms-new-item{--dot-ring:var(--surface-pop);align-items:center;gap:var(--sp-3);border-radius:var(--r-sm);color:var(--text-bright);text-align:left;padding:9px 10px;font-weight:600;transition:background .14s;display:flex}.ms-new-item:hover{background:var(--surface-2)}.ms-new-empty{padding:var(--sp-5);text-align:center;color:var(--text-muted)}.ms-center{flex-direction:column;padding:0;display:flex;overflow:hidden}.ms-dlg{flex-direction:column;height:100%;display:flex}.ms-dlg-head{--dot-ring:var(--bg-app);align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-5);border-bottom:1px solid var(--line);flex:none;display:flex}.ms-back{display:none}.ms-dlg-meta{flex:1;min-width:0}.ms-dlg-name{color:var(--text-bright);font-weight:700}.ms-dlg-status{font-size:var(--fs-sm);color:var(--text-muted)}.ms-dlg-status.online{color:var(--online)}.ms-dlg-actions{align-items:center;gap:var(--sp-2);display:flex}.ms-e2e{border-radius:var(--r-pill);width:26px;height:26px;color:var(--online);background:#2dd46f1f;justify-content:center;align-items:center;display:inline-flex}.ms-e2e.peer-not-ready{color:var(--text-muted);background:#8a8d991f}.ms-e2e.unavailable{color:var(--danger);background:#f0436a1f}button.ms-e2e{cursor:pointer;transition:background var(--t-fast) var(--ease)}button.ms-e2e:hover{background:#2dd46f3d}.ms-e2e.verified{box-shadow:0 0 0 1.5px var(--online)}.ms-e2e-changed{align-items:center;gap:var(--sp-3);margin:0 var(--sp-4) var(--sp-2);border-radius:var(--r-sm);color:#e6a23c;background:#e6a23c1a;border:1px solid #e6a23c73;padding:10px 12px;display:flex}.ms-e2e-changed>div{flex:1;gap:2px;min-width:0;display:grid}.ms-e2e-changed strong{color:var(--text-bright);font-size:var(--fs-sm)}.ms-e2e-changed span{color:var(--text-muted);font-size:var(--fs-xs);line-height:1.4}.ms-e2e-changed-check{border-radius:var(--r-sm);color:#e6a23c;font-size:var(--fs-sm);white-space:nowrap;border:1px solid #e6a23c99;flex:none;padding:6px 12px;font-weight:700}.ms-e2e-changed-check:hover{background:#e6a23c2e}.e2ee-verify-text{color:var(--text-muted);font-size:var(--fs-sm);line-height:1.5}.e2ee-verify-code{margin:var(--sp-4) 0;padding:var(--sp-4);border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface-inset);color:var(--text-bright);font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--fs-lg);letter-spacing:.08em;text-align:center;word-spacing:.4em}.e2ee-verify-empty{margin:var(--sp-4) 0;padding:var(--sp-4);border-radius:var(--r-sm);background:var(--surface-inset);color:var(--text-muted);font-size:var(--fs-sm)}.e2ee-verify-ok{margin-bottom:var(--sp-3);color:var(--online);font-size:var(--fs-sm);text-align:center;font-weight:700}.e2ee-verify-actions{gap:var(--sp-2);flex-wrap:wrap;display:flex}@media (width>=769px) and (width<=1080px){.ms-dlg-head{padding-right:calc(var(--sp-8) - 1px + 38px + var(--sp-2))}.ms-dlg-shell .page-right-toggle{top:13px}}.ms-msgs{min-height:0;padding:var(--sp-5) var(--sp-6);flex-direction:column;flex:1;gap:3px;display:flex;overflow-y:auto}.ms-history-state{border-radius:var(--r-pill);background:var(--surface);color:var(--text-muted);font-size:var(--fs-xs);align-self:center;margin:4px 0 10px;padding:5px 11px}.ms-history-state.error{color:#f5a3b2;background:#f0436a1a}.ms-day{margin:var(--sp-4) 0 var(--sp-3);border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);font-size:var(--fs-xs);color:var(--text-muted);align-self:center;padding:3px 12px}.ms-row{align-items:flex-end;gap:5px;display:flex}.ms-row.own{justify-content:flex-end}.ms-message{flex-direction:column;align-items:flex-start;min-width:0;max-width:min(620px,72%);display:flex}.ms-row.own .ms-message{align-items:flex-end}.ms-copy-action{border:1px solid color-mix(in srgb, var(--brand) 45%, var(--line));border-radius:var(--r-sm);background:var(--brand-soft);min-height:28px;color:var(--brand);align-self:flex-start;align-items:center;gap:6px;margin-bottom:4px;padding:5px 9px;font-size:11px;font-weight:700;transition:background .14s,color .14s,border-color .14s;display:inline-flex}.ms-row.own .ms-copy-action,.gdm-row.own .ms-copy-action{align-self:flex-end}.ms-copy-action:hover{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 22%, var(--surface-2))}.ms-copy-action.copied{border-color:color-mix(in srgb, var(--online) 55%, var(--line));background:color-mix(in srgb, var(--online) 14%, var(--surface-2));color:var(--online)}.ms-message-more{width:28px;height:28px;color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:1px solid #0000;border-radius:9px;flex:0 0 28px;place-items:center;margin-bottom:2px;padding:0 0 5px;font-size:22px;line-height:1;transition:opacity .12s,color .12s,background .12s;display:grid}.ms-row:hover .ms-message-more,.gdm-row:hover .ms-message-more,.ms-message-more:focus-visible{opacity:1}.ms-message-more:hover{color:var(--text-bright);background:var(--surface-2)}.ms-bubble{box-sizing:border-box;background:var(--surface);max-width:100%;color:var(--text-bright);font-size:var(--fs-md);word-break:break-word;-webkit-user-select:text;user-select:text;border-radius:14px 14px 14px 5px;padding:8px 12px;line-height:1.45}.gdm-bubble{-webkit-user-select:text;user-select:text}.ms-row.own .ms-bubble{background:var(--brand);color:#fff;border-bottom-right-radius:5px;border-bottom-left-radius:14px}.ms-bubble.deleted{background:var(--surface);color:var(--text-muted);border:1px solid var(--line)}.ms-deleted-text{opacity:.8;font-style:italic}.ms-edited{color:var(--text-muted);opacity:.8;margin-left:7px;font-size:10px;display:inline-block}.ms-row.own .ms-edited{color:#ffffffa8}.ms-bubble img{object-fit:contain;cursor:pointer;border-radius:10px;width:auto;max-width:min(320px,100%);height:auto;max-height:320px;margin-top:4px;display:block}.ms-reply-quote{border:none;border-left:3px solid var(--brand);width:100%;min-width:150px;max-width:360px;color:inherit;text-align:left;cursor:pointer;background:#00000029;border-radius:6px;flex-direction:column;margin:0 0 6px;padding:5px 8px;display:flex;overflow:hidden}.ms-row.own .ms-reply-quote{border-left-color:#ffffffe6}.ms-reply-quote strong,.ms-reply-quote span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ms-reply-quote strong{color:var(--brand);font-size:11px}.ms-row.own .ms-reply-quote strong{color:#fff}.ms-reply-quote span{opacity:.82;font-size:12px}.ms-file{color:inherit;font-size:var(--fs-sm);background:#0003;border-radius:8px;align-items:center;gap:8px;margin-top:4px;padding:8px 10px;text-decoration:none;display:flex}.ms-time{color:var(--text-muted);margin-left:8px;font-size:11px;display:inline-block}.ms-row.own .ms-time{color:#ffffffb3}.ms-delivery{color:#ffffffd1;vertical-align:-2px;place-items:center;min-width:14px;margin-left:3px;line-height:0;display:inline-grid}.ms-delivery svg{display:block}.ms-delivery.sending{opacity:.7}.ms-delivery.read{color:#6fd0ff}.ms-delivery.error{width:16px;height:16px;color:var(--danger);cursor:pointer;background:#fff;border-radius:50%;padding:0}.ms-bubble.media-only,.ms-row.own .ms-bubble.media-only,.gdm-bubble.media-only,.gdm-row.own .gdm-bubble.media-only{background:0 0;max-width:100%;padding:0;position:relative;overflow:clip}.ms-bubble.media-only .msg-gif-wrap,.gdm-bubble.media-only .msg-gif-wrap{margin-top:0}.ms-bubble img.msg-gif,.gdm-bubble img.msg-gif{max-height:260px}.ms-bubble img.msg-sticker,.gdm-bubble img.msg-sticker{max-width:min(160px,100%);max-height:160px}.ms-bubble.media-only .ms-time,.gdm-bubble.media-only .gdm-time{color:#ffffffeb;z-index:1;background:#0000008c;border-radius:9px;margin-left:0;padding:2px 7px;position:absolute;bottom:6px;right:6px}.ms-bubble.media-only:has(.ms-delivery) .ms-time{padding-right:25px}.ms-bubble.media-only .ms-delivery{z-index:2;margin-left:0;position:absolute;bottom:8px;right:11px}.gdm-bubble.media-only:has(>svg) .gdm-time{padding-right:25px}.gdm-bubble.media-only>svg{z-index:2;color:#ffffffeb;margin-left:0;position:absolute;bottom:9px;right:11px}.ms-bubble.emoji-only,.ms-row.own .ms-bubble.emoji-only,.gdm-bubble.emoji-only,.gdm-row.own .gdm-bubble.emoji-only{background:0 0;align-items:flex-end;gap:4px;padding:0;display:inline-flex}.ms-bubble.emoji-only .ms-time,.ms-bubble.emoji-only .ms-edited,.gdm-bubble.emoji-only .gdm-time{color:var(--text-muted);margin-left:0}.ms-bubble.emoji-only .ms-delivery:not(.read):not(.error),.gdm-bubble.emoji-only>svg{color:var(--text-muted)}.ms-reactions{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.ms-row.own .ms-reactions{justify-content:flex-end}.ms-reaction{border:1px solid var(--line-strong);border-radius:var(--r-pill);background:var(--surface);min-width:36px;height:27px;color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;gap:5px;padding:0 8px;transition:border-color .12s,background .12s,transform 80ms;display:inline-flex}.ms-reaction:hover{border-color:var(--brand);background:var(--surface-2)}.ms-reaction:active{transform:scale(.94)}.ms-reaction.mine{border-color:var(--brand);background:var(--brand-soft);color:var(--brand)}.ms-reaction span{font-size:15px;line-height:1}.ms-reaction .emoji-img{vertical-align:middle;width:16px;height:16px;margin:0}.ms-ctx-reactions .emoji-img{vertical-align:middle;width:21px;height:21px;margin:0}.ms-reaction b{font-size:11px;font-weight:700}.gdm-row{align-items:flex-end;gap:8px;display:flex}.gdm-row.own{justify-content:flex-end}.gdm-message{flex-direction:column;align-items:flex-start;min-width:0;max-width:min(620px,72%);display:flex}.gdm-row.own .gdm-message{align-items:flex-end}.gdm-author{color:var(--brand);margin:0 0 3px 5px;font-size:11px;font-weight:700}.gdm-bubble{box-sizing:border-box;background:var(--surface);max-width:100%;color:var(--text-bright);word-break:break-word;border-radius:14px 14px 14px 5px;padding:8px 12px;line-height:1.45}.gdm-row.own .gdm-bubble{background:var(--brand);color:#fff;border-radius:14px 14px 5px}.gdm-bubble.deleted{border:1px solid var(--line);background:var(--surface);color:var(--text-muted)}.gdm-row.own .ms-reactions{justify-content:flex-end}@media (hover:none),(width<=720px){.ms-message-more{opacity:1}}.gdm-bubble>svg{vertical-align:-2px;margin-left:4px}.gdm-bubble img{object-fit:contain;cursor:pointer;border-radius:10px;width:auto;max-width:min(320px,100%);height:auto;max-height:320px;margin-top:5px;display:block}.gdm-time{color:var(--text-muted);white-space:nowrap;margin-left:8px;font-size:10px}.gdm-row.own .gdm-time{color:#ffffffb8}.gdm-pinned{color:var(--brand);vertical-align:-2px;margin-left:6px;display:inline-flex}.gdm-row.own .gdm-pinned{color:#ffffffd1}.gdm-members{flex-direction:column;gap:4px;display:flex}.gdm-member{border-radius:var(--r-sm);align-items:center;gap:9px;padding:6px;display:flex}.gdm-member:hover{background:var(--surface-2)}.gdm-member-profile{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:8px;margin:0;padding:0;display:flex}.gdm-member-profile:focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:var(--r-sm)}.gdm-member-profile>span:not(.ui-avatar){flex:1;min-width:0}.gdm-member>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.gdm-member small{color:var(--brand);font-size:10px}.gdm-leave{width:100%;margin-top:var(--sp-5);border-radius:var(--r-sm);color:var(--danger);background:#f0436a1f;padding:9px 12px;font-weight:700}.gdm-leave:hover{background:var(--danger);color:#fff}@media (width<=768px){.ms-message,.gdm-message{max-width:84%}.ms-bubble.media-only:not(.sticker-only),.gdm-bubble.media-only:not(.sticker-only){width:min(260px,100vw - 96px)}.ms-bubble.media-only:not(.sticker-only) .msg-gif-wrap,.gdm-bubble.media-only:not(.sticker-only) .msg-gif-wrap,.ms-bubble.media-only:not(.sticker-only) .msg-gif,.gdm-bubble.media-only:not(.sticker-only) .msg-gif{width:100%;max-width:100%}.ms-bubble img,.gdm-bubble img{max-width:min(280px,100%)}}.ms-typing{padding:4px var(--sp-6);font-size:var(--fs-sm);color:var(--text-muted);font-style:italic}.ms-composer{gap:var(--sp-2);padding:var(--sp-3) var(--sp-5) var(--sp-5);flex-direction:column;flex:none;display:flex;position:relative}.ms-replying{border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--r-sm);background:var(--surface);color:var(--text-muted);align-items:center;gap:10px;padding:8px 12px;display:flex}.ms-replying>svg{color:var(--brand);flex:none}.ms-replying.editing{border-left-color:#f5a524}.ms-replying.editing>svg{color:#f5a524}.ms-replying span.error{color:#f5a3b2}.ms-replying>div{flex-direction:column;flex:1;min-width:0;display:flex}.ms-replying strong,.ms-replying span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ms-replying strong{color:var(--text-bright);font-size:var(--fs-sm)}.ms-replying span{font-size:var(--fs-xs)}.ms-replying button{border-radius:var(--r-sm);flex:none;place-items:center;width:28px;height:28px;display:grid}.ms-replying button:hover{background:var(--surface-2);color:var(--text-bright)}.ms-comp-row{align-items:flex-end;gap:var(--sp-2);display:flex}.ms-comp-ic{width:42px;height:42px;color:var(--text-muted);border-radius:50%;flex:none;place-items:center;transition:background .14s,color .14s;display:grid}.ms-comp-ic:hover{background:var(--surface-2);color:var(--text-bright)}.ms-comp-emoji{color:var(--text-muted);flex:none;place-items:center;transition:color .14s;display:grid}.ms-comp-emoji:hover{color:var(--text-bright)}.ms-attach{align-items:center;gap:var(--sp-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);align-self:flex-start;max-width:100%;padding:8px 10px;display:flex}.ms-attach-list{gap:var(--sp-2);scrollbar-width:thin;width:100%;min-width:0;padding-bottom:2px;display:flex;overflow-x:auto}.ms-attach-list .ms-attach{flex:none;max-width:min(320px,84vw)}.ms-attach-thumb{object-fit:cover;border-radius:6px;flex:none;width:34px;height:34px}.ms-attach-name{font-size:var(--fs-sm);color:var(--text-bright);text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}.ms-attach-size{font-size:var(--fs-xs);color:var(--text-muted)}.ms-attach-x{color:var(--text-muted);border-radius:4px;margin-left:4px;padding:3px}.ms-attach-x:hover{color:var(--danger);background:var(--surface-2)}.ms-attach-load{font-size:var(--fs-sm);color:var(--text-muted)}.ms-attach-err{font-size:var(--fs-sm);color:#f5a3b2}.ms-comp-field{align-items:flex-end;gap:var(--sp-2);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);flex:1;min-width:0;padding:10px 16px;transition:border-color .14s;display:flex}.ms-comp-field:focus-within{border-color:var(--brand)}.ms-comp-field.multiline{border-radius:var(--r-lg)}.ms-comp-field input,.ms-comp-field textarea{min-width:0;color:var(--text-bright);font-size:var(--fs-md);background:0 0;border:none;outline:none;flex:1}.ms-comp-field textarea{resize:none;max-height:140px;margin:0;padding:0;font-family:inherit;line-height:1.4;display:block}.ms-send{background:var(--brand);color:#fff;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;transition:background .14s,transform 80ms;display:grid}.ms-send:hover{background:var(--brand-hover)}.ms-send:active{transform:scale(.94)}.ms-send:disabled{opacity:.5;cursor:default}.ms-comp-ic:disabled{opacity:.4;cursor:default}.ms-scrollwrap{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.ms-scrolldown{z-index:5;background:var(--surface-3);width:42px;height:42px;color:var(--text-bright);border:1px solid var(--line-strong);box-shadow:var(--sh-lg);cursor:pointer;border-radius:50%;place-items:center;transition:background .14s,transform 80ms;display:grid;position:absolute;bottom:16px;right:20px}.ms-scrolldown:hover{background:var(--surface-2)}.ms-scrolldown:active{transform:scale(.92)}.ms-scrolldown-badge{border-radius:var(--r-pill);background:var(--brand);color:#fff;border:2px solid var(--bg-app);place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:700;display:grid;position:absolute;top:-4px;right:-4px}.ms-voice{align-items:center;gap:9px;width:232px;max-width:100%;margin-top:4px;display:flex}.ms-voice-play{background:var(--brand);color:#fff;cursor:pointer;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;transition:transform 80ms,filter .14s;display:grid}.ms-voice-play:hover{filter:brightness(1.1)}.ms-voice-play:active{transform:scale(.92)}.ms-row.own .ms-voice-play{color:var(--brand);background:#fff}.ms-voice-wave{cursor:pointer;flex:1;align-items:center;gap:2px;min-width:0;height:26px;display:flex}.ms-voice-bar{background:var(--text-muted);opacity:.45;border-radius:2px;flex:1;min-width:2px;height:30%;transition:background .1s,opacity .1s}.ms-voice-bar.played{background:var(--brand);opacity:1}.ms-row.own .ms-voice-bar{opacity:1;background:#ffffff80}.ms-row.own .ms-voice-bar.played{background:#fff}.ms-voice-time{text-align:right;min-width:30px;color:var(--text-muted);font-variant-numeric:tabular-nums;flex:none;font-size:11px}.ms-row.own .ms-voice-time{color:#fffc}.ms-rec-bar{align-items:center;gap:var(--sp-2);display:flex}.ms-rec-cancel{width:42px;height:42px;color:var(--text-muted);border-radius:50%;flex:none;place-items:center;transition:background .14s,color .14s;display:grid}.ms-rec-cancel:hover{background:var(--surface-2);color:var(--danger)}.ms-rec-info{align-items:center;gap:var(--sp-2);border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);min-width:0;height:44px;color:var(--text-bright);font-size:var(--fs-md);font-variant-numeric:tabular-nums;flex:1;padding:0 16px;display:flex}.ms-rec-dot{background:var(--danger);border-radius:50%;flex:none;width:11px;height:11px;animation:1.1s ease-in-out infinite msRecPulse}@keyframes msRecPulse{0%,to{opacity:1}50%{opacity:.25}}.ms-info-head{--dot-ring:var(--bg-app);text-align:center;padding-bottom:var(--sp-4);border-bottom:1px solid var(--line);flex-direction:column;align-items:center;display:flex}.ms-info-name{margin-top:var(--sp-3);font-size:var(--fs-lg);color:var(--text-bright);font-weight:700}.ms-info-status{font-size:var(--fs-sm);color:var(--text-muted)}.ms-info-status.online{color:var(--online)}.ms-info-nick{background:var(--surface-inset);border:1px solid var(--line-strong);border-radius:var(--r-sm);width:100%;color:var(--text-bright);font-size:var(--fs-md);outline:none;padding:9px 12px}.ms-info-nick:focus{border-color:var(--brand)}.ms-info-hint{font-size:var(--fs-xs);color:var(--text-muted);margin-top:4px}.ms-info-sec{margin-top:var(--sp-5);margin-bottom:var(--sp-2);font-size:var(--fs-sm);color:var(--text-bright);font-weight:700}.ms-info-list{gap:var(--sp-2);flex-direction:column;display:flex}.chat-media-gallery{width:100%;min-width:0}.chat-media-tabs-rail{background:#ffffff08;border:1px solid #ffffff12;border-radius:18px;min-width:0;margin-bottom:4px;padding:4px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff08}.chat-media-tabs{scroll-behavior:smooth;scrollbar-width:none;border-radius:14px;gap:4px;width:100%;min-width:0;scroll-padding-inline:4px;display:flex;overflow-x:auto}.chat-media-tabs::-webkit-scrollbar{display:none}.chat-media-tabs-arrow{z-index:3;background:var(--brand-grad);color:#fff;width:26px;height:26px;box-shadow:0 0 0 4px #12131ce6, 0 10px 18px var(--brand-glow,#7c5cff3d);border:1px solid #ffffff1f;border-radius:999px;place-items:center;transition:filter .14s,border-color .14s,opacity .14s,transform .14s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.chat-media-tabs-arrow.prev{left:5px}.chat-media-tabs-arrow.next{right:5px}.chat-media-tabs-arrow:not(:disabled):hover,.chat-media-tabs-arrow:not(:disabled):active{filter:brightness(1.1);border-color:var(--brand-ring,#8f7aff80)}.chat-media-tabs-arrow:not(:disabled):active{transform:translateY(-50%)scale(.94)}.chat-media-tabs-arrow:disabled{visibility:hidden;opacity:0;pointer-events:none}.chat-media-tab{min-height:32px;color:var(--text-muted);font-size:var(--fs-xs);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:14px;flex:none;align-items:center;gap:6px;padding:7px 11px;font-weight:700;transition:background .14s,color .14s;display:inline-flex}.chat-media-tab:hover{color:var(--text-bright);background:#ffffff08}.chat-media-tab.active{background:var(--brand-soft);color:var(--brand)}.chat-media-tab b{border-radius:var(--r-pill);background:var(--surface-3);min-width:17px;color:inherit;text-align:center;font-variant-numeric:tabular-nums;padding:1px 4px;font-size:10px;line-height:15px}.chat-media-state,.chat-media-empty{min-height:74px;color:var(--text-muted);font-size:var(--fs-sm);text-align:center;justify-content:center;align-items:center;gap:8px;padding:12px;display:flex}.chat-media-state.error{color:var(--danger);flex-direction:column}.chat-media-state.error button{border-radius:var(--r-pill);background:var(--surface-3);color:var(--text-bright);font-size:var(--fs-xs);padding:5px 10px}.chat-media-spinner{border:2px solid var(--line-strong);border-top-color:var(--brand);border-radius:50%;flex:none;width:15px;height:15px;animation:.75s linear infinite chatMediaSpin}@keyframes chatMediaSpin{to{transform:rotate(360deg)}}.chat-media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px;display:grid}.chat-media-tile{aspect-ratio:1;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-inset);cursor:zoom-in;min-width:0;padding:0;position:relative;overflow:hidden}.chat-media-tile:after{content:"";pointer-events:none;background:linear-gradient(#0000,#000000b8);position:absolute;inset:55% 0 0}.chat-media-tile img,.chat-media-tile video{object-fit:cover;width:100%;height:100%;transition:transform .18s;display:block}.chat-media-tile:hover img,.chat-media-tile:hover video{transform:scale(1.035)}.chat-media-tile small{z-index:1;color:#fff;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 4px #000c;font-size:9px;position:absolute;bottom:5px;left:6px;right:6px;overflow:hidden}.chat-media-play{z-index:2;color:#fff;background:#0000009e;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.chat-media-list{flex-direction:column;gap:8px;margin-top:8px;display:flex}.chat-media-voice-card,.chat-media-file-card,.chat-media-link-card,.chat-media-loading-card,.chat-media-error-card{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-inset);min-width:0;padding:10px}.chat-media-item-head{flex-direction:column;gap:3px;margin-bottom:7px;display:flex}.chat-media-item-head>span{color:var(--text-bright);font-size:var(--fs-sm);align-items:center;gap:5px;font-weight:700;display:flex}.chat-media-item-head small,.chat-media-file-body small{color:var(--text-muted);font-size:10px}.chat-media-voice-card .ms-voice{width:100%;margin-top:0}.chat-media-file-card,.chat-media-link-card{color:var(--text);align-items:center;gap:9px;text-decoration:none;transition:border-color .14s,background .14s;display:flex}.chat-media-file-card:hover,.chat-media-link-card:hover{border-color:color-mix(in srgb, var(--brand) 50%, var(--line));background:var(--surface-2)}.chat-media-file-icon{border-radius:var(--r-sm);background:color-mix(in srgb, var(--brand) 14%, var(--surface-2));width:34px;height:34px;color:var(--brand);flex:none;place-items:center;display:grid}.chat-media-file-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.chat-media-file-body b,.chat-media-file-body small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-media-file-body b{color:var(--text-bright);font-size:var(--fs-sm)}.chat-media-link-card .chat-media-file-body b{line-height:1.25}.chat-media-file-card>svg{color:var(--text-muted);flex:none}.chat-media-loading-card,.chat-media-error-card{min-height:70px;color:var(--text-muted);font-size:var(--fs-xs);text-align:center;place-items:center;display:grid}.chat-media-error-card{color:var(--danger)}.chat-media-viewer-video{border-radius:var(--r-md);max-width:min(92vw,1100px);max-height:88vh;box-shadow:var(--sh-lg);background:#000}.ms-info-sheet-body .chat-media-grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr))}.ms-dot{background:var(--brand);border-radius:50%;flex:none;width:9px;height:9px}.cs-root{background:var(--bg-app);color:var(--text-bright)}html.call-screen-open .page-right-toggle,html.call-screen-open .page-right-backdrop,html.call-screen-open .page-right.open{display:none!important}.cs-desktop{inset:var(--topnav-h) 0 0 0;z-index:30;grid-template-columns:var(--sidebar-w) minmax(0, 1fr);display:grid;position:fixed}.cs-mobile{z-index:60;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);flex-direction:column;display:flex;position:fixed;inset:0}.cs-stage{justify-content:flex-start;align-items:center;gap:var(--sp-3);min-height:0;padding:10px var(--sp-4);flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.cs-status-row{top:var(--sp-4);left:var(--sp-4);right:var(--sp-4);justify-content:space-between;align-items:center;gap:var(--sp-3);pointer-events:none;display:flex;position:absolute}.cs-pill{border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);font-size:var(--fs-sm);color:var(--text-bright);align-items:center;gap:7px;padding:6px 12px;font-weight:600;display:inline-flex}.cs-pill.ghost{color:var(--online);background:0 0;border-color:#0000}.cs-pill.warn{color:var(--idle)}.cs-feedback-warn{z-index:5;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--idle);max-width:min(520px,100% - 32px);color:var(--text-bright);font-size:var(--fs-sm);box-shadow:var(--shadow-md,0 6px 20px #00000059);align-items:center;gap:9px;padding:10px 14px;line-height:1.35;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.cs-feedback-warn svg{color:var(--idle);flex:none}.cs-pill .cs-dot{background:var(--online);border-radius:50%;width:8px;height:8px}.cs-pill.warn .cs-dot{background:var(--idle)}.cs-eq{color:var(--online);animation:1.1s ease-in-out infinite csEq}@keyframes csEq{0%,to{opacity:.55}50%{opacity:1}}@keyframes csPulse{0%{opacity:.55;transform:scale(.7)}to{opacity:0;transform:scale(1.25)}}.cs-gallery{gap:var(--sp-4);width:100%;min-height:0;padding:46px var(--sp-4) var(--sp-4);flex:1;place-content:center;place-items:stretch stretch;display:grid}.cs-focus{gap:var(--sp-3);width:100%;min-height:0;padding:46px var(--sp-3) var(--sp-3);flex-direction:column;flex:1;display:flex}.cs-strip{justify-content:center;gap:var(--sp-2);flex-wrap:wrap;flex:none;display:flex}.cs-tile{border-radius:var(--r-lg);background:var(--surface-2);border:1px solid var(--line);cursor:pointer;place-items:center;min-width:0;min-height:0;transition:border-color .15s,transform 80ms,box-shadow .15s;display:grid;position:relative;overflow:hidden}.cs-tile:hover{border-color:var(--brand)}.cs-tile.self{border-color:var(--brand-soft)}.cs-tile.novideo.speaking{border-color:var(--online);box-shadow:0 0 0 2px var(--online)}.cs-gallery{place-items:center;gap:16px;width:100%;max-width:100%;margin:auto;display:grid}.cs-focus{flex-direction:column;align-items:center;gap:12px;width:100%;height:100%;margin:auto;display:flex}.cs-gallery .cs-tile{width:100%;height:100%;min-height:50px;animation:.2s csTileIn}.cs-gallery .cs-tile:active{transform:scale(.99)}.cs-tile.focus{flex:1;width:100%;min-height:0}.cs-tile.strip{flex:none;width:124px;height:74px}.cs-mobile .cs-tile.strip{width:96px;height:60px}@keyframes csTileIn{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}.cs-vfit{place-items:center;display:grid;position:absolute;inset:0}.cs-vframe{border-radius:var(--r-lg);border:1px solid var(--line);background:#000;width:100%;max-width:100%;height:100%;max-height:100%;transition:border-color .15s;position:relative;overflow:hidden}.cs-tile-video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.cs-tile-video.mirror{transform:scaleX(-1)}.cs-tile.hasvideo,.cs-tile.hasvideo:hover{background:0 0;border-color:#0000}.cs-tile.hasvideo:hover .cs-vframe{border-color:var(--brand)}.cs-tile.self.hasvideo .cs-vframe{border-color:var(--brand-soft)}.cs-tile.hasvideo.speaking .cs-vframe{border-color:var(--online);box-shadow:0 0 0 2px var(--online)}.cs-video-fullscreen{z-index:4;border-radius:var(--r-md);color:#fff;opacity:.82;background:#080a0fb8;border:1px solid #ffffff2e;place-items:center;width:38px;height:38px;transition:opacity .14s,background .14s;display:grid;position:absolute;top:9px;right:9px}.cs-video-fullscreen:hover,.cs-video-fullscreen:focus-visible{opacity:1;background:#080a0feb}.cs-vframe:fullscreen{background:#000;border:0;border-radius:0;max-width:none;max-height:none;width:100vw!important;height:100vh!important}.cs-vframe:fullscreen .cs-tile-video{object-fit:contain}.cs-tile-av{place-items:center;line-height:0;display:grid}.cs-tile-av .ui-avatar{box-shadow:0 8px 26px #0006}.cs-tile-bar{pointer-events:none;align-items:center;gap:6px;display:flex;position:absolute;bottom:8px;left:8px;right:8px}.cs-tile.strip .cs-tile-bar{bottom:5px;left:5px;right:5px}.cs-tile-name{min-width:0;font-size:var(--fs-sm);color:#fff;text-shadow:0 1px 4px #000000d9;white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.cs-tile.strip .cs-tile-name{font-size:var(--fs-xs)}.cs-tile-mute{background:var(--danger);color:#fff;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid}.cs-tile.strip .cs-tile-mute{width:18px;height:18px}.cs-ctl-wrap{flex-direction:column;align-items:center;gap:6px;display:flex;position:relative}.cs-ctl{border-radius:var(--r-lg);background:var(--surface-2);width:58px;height:58px;color:var(--text-bright);place-items:center;transition:background .14s,transform 80ms,color .14s;display:grid}.cs-ctl:hover{background:var(--surface-3)}.cs-ctl:active{transform:scale(.93)}.cs-ctl:disabled{opacity:.5;cursor:default}.cs-ctl.off{color:var(--danger);background:#f0436a29}.cs-ctl.danger{background:var(--danger);color:#fff}.cs-ctl.danger:hover{filter:brightness(1.08);background:var(--danger)}.cs-ctl-label,.cs-ctl-caret{font-size:var(--fs-xs);color:var(--text-muted);font-weight:600}.cs-ctl-caret{align-items:center;gap:3px;transition:color .14s;display:inline-flex}.cs-ctl-caret:hover{color:var(--text-bright)}.cs-devmenu-backdrop{z-index:25;position:fixed;inset:0}.cs-devmenu{z-index:26;width:max(220px,100%);max-width:280px;padding:var(--sp-1);background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--sh-lg);animation:.15s csDevmenuPop;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}@keyframes csDevmenuPop{0%{opacity:0;transform:translate(-50%)translateY(6px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.cs-devmenu-item{text-align:left;border-radius:var(--r-sm);width:100%;font-size:var(--fs-sm);color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;padding:8px 10px;display:block;overflow:hidden}.cs-devmenu-item:hover{background:var(--surface-2)}.cs-devmenu-item.active{color:var(--brand);font-weight:700}.cs-devmenu-empty{font-size:var(--fs-sm);color:var(--text-muted);padding:8px 10px}.cs-side{border-right:1px solid var(--line);padding:var(--sp-4);gap:var(--sp-2);flex-direction:column;display:flex;overflow-y:auto}.cs-side-back{color:var(--brand);font-weight:700;font-size:var(--fs-sm);align-self:flex-start;align-items:center;gap:6px;padding:6px 4px;display:inline-flex}.cs-side-list{flex-direction:column;gap:2px;display:flex}.cs-convo{align-items:center;gap:var(--sp-3);border-radius:var(--r-md);text-align:left;padding:8px;transition:background .14s;display:flex}.cs-convo:hover{background:var(--surface)}.cs-convo.active{background:var(--brand-soft)}.cs-convo-info{min-width:0}.cs-convo-name{color:var(--text-bright);text-overflow:ellipsis;white-space:nowrap;font-weight:600;display:block;overflow:hidden}.cs-convo-sub{font-size:var(--fs-sm);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.cs-center{flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.cs-chead{align-items:center;gap:var(--sp-3);padding:12px var(--sp-5);border-bottom:1px solid var(--line);background:var(--bg-app);z-index:5;flex:none;display:flex}.cs-chead-meta{flex:1;min-width:0}.cs-chead-top{align-items:center;gap:var(--sp-2);display:flex}.cs-chead-name{font-size:var(--fs-lg);font-weight:800}.cs-chead-sub{font-size:var(--fs-sm);color:var(--text-muted);align-items:center;gap:6px;display:flex}.cs-dotsep{opacity:.6}.cs-chead-signal.good{color:var(--online)}.cs-chead-signal.ok{color:var(--text-muted)}.cs-chead-signal.bad{color:var(--idle)}.cs-chead-actions{align-items:center;gap:var(--sp-3);flex:none;display:flex}.cs-chead-actions .cs-iconbtn{flex:none}.cs-badge{border-radius:var(--r-pill);background:var(--brand-soft);color:var(--brand);font-size:var(--fs-xs);padding:2px 9px;font-weight:700}.cs-iconbtn{border-radius:var(--r-md);background:var(--surface-2);width:40px;height:40px;color:var(--text-muted);place-items:center;transition:background .14s,color .14s;display:grid}.cs-iconbtn:hover{background:var(--surface-3);color:var(--text-bright)}.cs-iconbtn.active{background:var(--brand);color:#fff}.cs-iconbtn:focus{outline:none}.cs-iconbtn:focus-visible{box-shadow:0 0 0 2px var(--brand) inset;outline:none}.cs-dctls{z-index:90;justify-content:center;align-items:flex-start;gap:clamp(8px, 1.2vw, var(--sp-4));padding:var(--sp-4) 12px var(--sp-6);flex:none;display:flex;position:relative}.cs-params{top:var(--topnav-h);z-index:105;border-left:1px solid var(--line);width:min(360px,100vw - 56px);padding:var(--sp-5);background:var(--bg-app);opacity:0;visibility:hidden;transition:transform .24s cubic-bezier(.22,.82,.28,1),opacity .18s,visibility 0s linear .24s;position:fixed;bottom:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-18px 0 40px #0000005c}.cs-params.open{opacity:1;visibility:visible;transition-delay:0s;transform:translate(0)}.cs-params-head{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);display:flex}.cs-params-title{font-size:var(--fs-lg);margin-bottom:0;font-weight:800}.cs-params-toggle{display:grid}.cs-params-backdrop{inset:var(--topnav-h) 0 0;z-index:104;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000007a;animation:.18s csParamsBackdropIn;display:block;position:fixed}.cs-params-close{border-radius:var(--r-md);background:var(--surface-2);width:36px;height:36px;color:var(--text-muted);flex:none;place-items:center;transition:background .14s,color .14s;display:grid}.cs-params-close:hover{background:var(--surface-3);color:var(--text-bright)}.cs-sec-h{font-size:var(--fs-sm);color:var(--text-muted);margin:var(--sp-4) 0 var(--sp-2);font-weight:700}.cs-sec-h:first-of-type{margin-top:0}.cs-sec-h span{color:var(--text-faint,var(--text-muted))}.cs-roster{gap:var(--sp-1);flex-direction:column;display:flex}.cs-rrow{align-items:center;gap:var(--sp-3);border-radius:var(--r-md);padding:6px;display:flex}.cs-rrow-info{min-width:0}.cs-rrow-name{color:var(--text-bright);align-items:center;gap:6px;font-weight:600;display:flex}.cs-you{color:var(--text-muted);font-weight:500}.cs-admin{border-radius:var(--r-sm);color:var(--danger);letter-spacing:.03em;background:#f0436a29;padding:1px 6px;font-size:10px;font-weight:800}.cs-rrow-sub{font-size:var(--fs-sm);color:var(--text-muted)}.cs-rrow-vol{color:var(--text-muted);align-items:center;gap:6px;display:flex}.cs-rrow-vol input[type=range]{flex:1;min-width:0}.cs-rrow-vol b{color:var(--text-bright);font-size:var(--fs-xs);text-align:right;flex:none;min-width:32px}.cs-share{align-items:center;gap:var(--sp-3);padding:var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);display:flex}.cs-share-ic{border-radius:var(--r-sm);background:var(--surface-2);width:38px;height:38px;color:var(--text-muted);flex:none;place-items:center;display:grid}.cs-share-txt{min-width:0;font-size:var(--fs-sm);color:var(--text-muted);flex:1}.cs-share-btn{border-radius:var(--r-md);background:var(--brand);color:#fff;font-weight:700;font-size:var(--fs-sm);flex:none;padding:8px 14px;transition:background .14s}.cs-share-btn:hover{background:var(--brand-hover)}.cs-share-btn.on{background:var(--danger)}.cs-quality{align-items:center;gap:var(--sp-3);display:flex}.cs-q-ic.good{color:var(--online)}.cs-q-ic.ok{color:var(--text-muted)}.cs-q-ic.bad{color:var(--idle)}.cs-q-label{font-weight:700}.cs-q-label.good{color:var(--online)}.cs-q-label.bad{color:var(--idle)}.cs-q-sub{font-size:var(--fs-sm);color:var(--text-muted)}.cs-tip{margin-top:var(--sp-3);padding:var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);font-size:var(--fs-sm);color:var(--text-muted);align-items:flex-start;gap:8px;display:flex}.cs-tip svg{color:var(--idle);flex:none;margin-top:2px}.cs-dev{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:var(--sp-2);transition:border-color .15s,background .15s;position:relative}.cs-dev:hover{background:var(--surface-2)}.cs-dev.open{border-color:var(--brand)}.cs-dev-head{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-2) var(--sp-3);text-align:left;cursor:pointer;background:0 0;border:none;display:flex}.cs-dev-ic{color:var(--brand);flex:none;place-items:center;display:grid}.cs-dev-body{flex-direction:column;flex:1;min-width:0;display:flex}.cs-dev-label{font-size:var(--fs-xs);color:var(--text-muted);font-weight:600}.cs-dev-cur{font-size:var(--fs-sm);color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.cs-dev-caret{color:var(--text-muted);flex:none;transition:transform .2s,color .2s}.cs-dev.open .cs-dev-caret{color:var(--brand);transform:rotate(180deg)}.cs-dev-menu{padding:var(--sp-1);border-top:1px solid var(--line);transform-origin:top;animation:.16s csDevMenuIn}@keyframes csDevMenuIn{0%{opacity:0;transform:translateY(-6px)scaleY(.96)}to{opacity:1;transform:translateY(0)scaleY(1)}}.cs-mhead{align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-3);border-bottom:1px solid var(--line);flex:none;display:flex}.cs-mback{border-radius:var(--r-md);background:var(--brand-soft);color:var(--brand);font-weight:700;font-size:var(--fs-sm);flex:none;align-items:center;gap:2px;padding:6px 10px 6px 4px;display:inline-flex}.cs-mhead-peer{align-items:center;gap:var(--sp-2);flex:1;justify-content:center;min-width:0;display:flex}.cs-mhead-meta{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.cs-mhead-time{font-size:var(--fs-xs);color:var(--text-muted)}.cs-mhead-actions{flex:none;gap:6px;display:flex}.cs-quick{margin:var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);flex:none;overflow:hidden}.cs-quick-head{width:100%;padding:var(--sp-3) var(--sp-4);color:var(--text-bright);justify-content:space-between;align-items:center;font-weight:700;display:flex}.cs-quick-chev{transition:transform .18s}.cs-quick-chev.open{transform:rotate(180deg)}.cs-quick-item{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--line);text-align:left;color:var(--text-bright);font-weight:600;display:flex}.cs-quick-item>span:nth-child(2){flex:1;min-width:0}.cs-quick-ic{border-radius:var(--r-md);background:var(--brand-soft);width:40px;height:40px;color:var(--brand);flex:none;place-items:center;display:grid}.cs-quick-item.accent .cs-quick-ic{background:var(--brand);color:#fff}.cs-mctls{z-index:90;justify-content:center;align-items:flex-start;gap:clamp(6px, 2vw, var(--sp-4));padding:var(--sp-4) 8px calc(var(--sp-3) + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg-app);flex:none;display:flex;position:relative}.cs-sheet-overlay{z-index:140;padding:12px max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000094;justify-content:center;align-items:flex-end;animation:.18s csSheetBackdropIn;display:flex;position:fixed;inset:0}@keyframes csSheetBackdropIn{0%{opacity:0}to{opacity:1}}.cs-sheet{width:min(560px,100%);max-height:calc(100dvh - 24px - env(safe-area-inset-top));background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:22px;flex-direction:column;animation:.26s cubic-bezier(.22,.82,.28,1) csSheetIn;display:flex;overflow:hidden;box-shadow:0 22px 60px #00000085}@keyframes csSheetIn{0%{opacity:0;transform:translateY(36px)scale(.985)}to{opacity:1;transform:translateY(0)}}.cs-sheet-grab{background:var(--line-strong);border-radius:2px;flex:none;width:40px;height:4px;margin:10px auto 4px}.cs-sheet-head{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:10px 18px 14px;display:flex}.cs-sheet-title{font-weight:800;font-size:var(--fs-lg)}.cs-sheet-subtitle{color:var(--text-muted);font-size:var(--fs-xs);margin-top:2px}.cs-sheet-close{border-radius:var(--r-md);width:36px;height:36px;color:var(--text-muted);background:var(--surface-2);flex:none;place-items:center;transition:color .14s,background .14s;display:grid}.cs-sheet-close:hover{color:var(--text-bright);background:var(--surface-3)}.cs-sheet-body{overscroll-behavior:contain;scrollbar-width:thin;min-height:0;padding:0 18px 18px;overflow-y:auto}.cs-settings-section{padding-top:16px}.cs-settings-section+.cs-settings-section{border-top:1px solid var(--line);margin-top:16px}.cs-settings-section-title{color:var(--text-bright);font-size:var(--fs-md);margin-bottom:10px;font-weight:800}.cs-filter-label{color:var(--text-muted);font-size:var(--fs-xs);margin-bottom:8px;font-weight:700}.cs-filter-modes{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-inset);grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:4px;display:grid}.cs-filter-mode{min-width:0;min-height:34px;color:var(--text-muted);font-size:var(--fs-xs);border-radius:9px;padding:6px 8px;font-weight:700;transition:color .14s,background .14s,box-shadow .14s}.cs-filter-mode:hover:not(:disabled){color:var(--text-bright);background:var(--surface-2)}.cs-filter-mode.active{color:var(--brand);background:var(--brand-soft);box-shadow:0 0 0 1px color-mix(in srgb, var(--brand) 45%, transparent)}.cs-filter-modes>.cs-filter-mode:only-child{grid-column:1/-1}.cs-filter-hint{color:var(--text-muted);font-size:var(--fs-xs);margin:8px 2px 12px;line-height:1.45}.cs-filter-toggle{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);text-align:left;justify-content:space-between;align-items:center;gap:14px;width:100%;min-height:58px;margin-top:8px;padding:10px 12px;transition:border-color .14s,background .14s;display:flex}.cs-filter-toggle:hover:not(:disabled){border-color:color-mix(in srgb, var(--brand) 55%, var(--line));background:var(--surface-2)}.cs-filter-toggle>span:first-child{flex-direction:column;gap:3px;min-width:0;display:flex}.cs-filter-toggle strong{color:var(--text-bright);font-size:var(--fs-sm)}.cs-filter-toggle small{color:var(--text-muted);font-size:var(--fs-xs);line-height:1.35}.cs-filter-toggle:disabled{cursor:default;opacity:.72}.cs-filter-switch{border-radius:var(--r-pill);background:var(--surface-3);flex:none;width:38px;height:22px;padding:3px;transition:background .18s}.cs-filter-switch i{background:var(--text-muted);border-radius:50%;width:16px;height:16px;transition:transform .18s,background .18s;display:block}.cs-filter-switch.on{background:var(--brand)}.cs-filter-switch.on i{background:#fff;transform:translate(16px)}@media (width<=520px){.cs-mobile .cs-ctl-wrap{width:clamp(44px,11.5vw,58px);min-width:0}.cs-mobile .cs-ctl{width:100%;height:clamp(46px,11.5vw,58px)}.cs-mobile .cs-ctl-label,.cs-mobile .cs-ctl-caret{text-overflow:ellipsis;white-space:nowrap;justify-content:center;align-items:center;width:100%;min-width:0;max-width:100%;height:14px;font-size:10px;line-height:14px;display:flex;overflow:hidden}.cs-sheet-overlay{padding-inline:6px;padding-bottom:max(6px, env(safe-area-inset-bottom))}.cs-sheet{max-height:calc(100dvh - 12px - env(safe-area-inset-top));border-radius:20px}.cs-sheet-head,.cs-sheet-body{padding-inline:14px}}@media (width<=420px){.cs-mobile .cs-ctl-label,.cs-mobile .cs-ctl-caret{display:none}.cs-mctls{padding-block:10px calc(10px + env(safe-area-inset-bottom));align-items:center}.cs-filter-modes{grid-template-columns:repeat(2,minmax(0,1fr))}}.cs-chat-inline{visibility:hidden;pointer-events:none;background:var(--surface-pop);opacity:0;transform-origin:top;will-change:max-height, opacity, transform;border:1px solid #0000;border-radius:20px;flex-direction:column;flex:none;max-height:0;margin:0 16px;transition:max-height .36s cubic-bezier(.22,.82,.28,1),margin .32s,opacity .24s,transform .3s cubic-bezier(.22,.82,.28,1),border-color .22s,visibility .36s;display:flex;position:relative;overflow:hidden;transform:translateY(-12px)scale(.985);box-shadow:0 12px 36px #00000073;container:call-chat/inline-size}.cs-chat-inline.open{visibility:visible;pointer-events:auto;opacity:1;will-change:auto;border-color:#ffffff1f;max-height:min(600px,45dvh);margin:8px 16px 16px;overflow:visible;transform:none}.cs-chat-inline.picker-open{z-index:120}.cs-chat-inline.picker-open .cs-chat-layout{overflow:visible}.cs-ctl.accent{background:var(--brand);color:#fff}.cs-chat-arrow{top:-7px;left:var(--chat-arrow-x,calc(50% + 74px));background:var(--surface-pop);z-index:5;pointer-events:none;border-top:1px solid #ffffff24;border-left:1px solid #ffffff24;width:12px;height:12px;position:absolute;transform:translate(-50%)rotate(45deg)}.cs-chat-grab{z-index:6;border-radius:var(--r-pill);cursor:ns-resize;touch-action:none;background:#ffffff40;width:58px;height:6px;margin:0;transition:background .15s,transform .15s;position:absolute;top:10px;left:50%;transform:translate(-50%)}.cs-chat-grab:hover,.cs-chat-grab:active{background:var(--brand);transform:translate(-50%)scaleY(1.4)}.cs-chat-head{border-bottom:1px solid var(--line);flex:none;align-items:center;min-height:48px;padding:8px 18px 0;display:flex}.cs-chat-nav{align-self:stretch;align-items:flex-end;gap:18px;display:flex}.cs-chat-search-btn{border-radius:var(--r-sm);width:30px;height:30px;color:var(--text-muted);flex:none;place-items:center;margin-bottom:6px;margin-left:auto;transition:background .14s,color .14s;display:grid}.cs-chat-search-btn:hover,.cs-chat-search-btn.active{background:var(--surface-3);color:var(--text-bright)}.cs-chat-search-bar{padding-inline:18px}.cs-chat-search-results .ms-search-list{max-height:160px}.cs-chat-nav-tab{min-height:40px;color:var(--text-muted);font-size:var(--fs-sm);padding:8px 2px 11px;font-weight:700;transition:color .18s;position:relative}.cs-chat-nav-tab:after{content:"";border-radius:var(--r-pill);background:var(--brand);opacity:0;height:2px;transition:opacity .18s,transform .26s cubic-bezier(.22,.82,.28,1);position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(.35)}.cs-chat-nav-tab:hover,.cs-chat-nav-tab.active{color:var(--text-bright)}.cs-chat-nav-tab.active:after{opacity:1;transform:scaleX(1)}.cs-chat-nav-tab:focus{outline:none}.cs-chat-nav-tab:focus-visible{color:var(--brand);box-shadow:0 0 0 2px var(--brand) inset;border-radius:8px 8px 0 0}.cs-chat-layout{opacity:0;border-radius:0 0 19px 19px;flex:1;grid-template-columns:minmax(0,1fr);min-width:0;min-height:0;transition:opacity .18s,transform .26s cubic-bezier(.22,.82,.28,1);display:grid;position:relative;overflow:hidden;transform:translateY(-8px)}.cs-chat-inline.open .cs-chat-layout{opacity:1;transition-delay:55ms;transform:none}.cs-chat-conversation,.cs-chat-materials{opacity:0;pointer-events:none;will-change:opacity, transform;grid-area:1/1;width:100%;min-width:0;height:100%;min-height:0;transition:opacity .2s,transform .3s cubic-bezier(.22,.82,.28,1)}.cs-chat-conversation{flex-direction:column;display:flex;position:relative;transform:translate(-36px)}.cs-chat-materials{background:color-mix(in srgb, var(--surface-inset) 45%, transparent);border-radius:0 0 19px 19px;overflow:hidden;transform:translate(36px)}.cs-chat-layout[data-view=chat] .cs-chat-conversation,.cs-chat-layout[data-view=materials] .cs-chat-materials{z-index:1;opacity:1;pointer-events:auto;will-change:auto;transform:none}.cs-chat-materials-inner{scrollbar-width:thin;width:100%;height:100%;min-height:0;padding:12px 18px 16px;overflow-y:auto}.cs-chat-materials .chat-media-tab{gap:4px;padding-inline:8px}.cs-chat-materials .chat-media-tab b{min-width:15px;padding-inline:3px}.cs-chat-materials .chat-media-list{flex-flow:wrap;align-content:flex-start;align-items:flex-start}.cs-chat-materials .chat-media-list>*{width:min(100%,300px)}.cs-chat-materials .chat-media-grid{grid-template-columns:repeat(auto-fit,minmax(160px,180px));place-content:flex-start;width:100%}.cs-chat-materials .chat-media-tile{aspect-ratio:16/10}.cs-chat-materials .chat-media-grid,.cs-chat-materials .chat-media-list,.cs-chat-materials .chat-media-empty,.cs-chat-materials .chat-media-state{animation:.24s cubic-bezier(.22,.82,.28,1) csChatPaneIn}@keyframes csChatPaneIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.cs-chat-messages{flex-direction:column;flex:1;gap:12px;min-height:96px;padding:10px 18px;display:flex;overflow-y:auto}.cs-chat-state{color:var(--text-muted);font-size:var(--fs-sm);margin:auto}.cs-chat-msg-row{border-radius:18px;align-self:flex-start;align-items:flex-start;gap:12px;width:fit-content;max-width:min(100%,600px);transition:background .16s,box-shadow .16s;display:flex}.cs-chat-msg-row.pinned{box-shadow:inset 3px 0 0 color-mix(in srgb, var(--brand) 70%, transparent)}.cs-chat-msg-row.flash{background:color-mix(in srgb, var(--brand) 16%, transparent)}.cs-chat-msg-av{flex:none;align-self:flex-end}.cs-chat-msg-row:has(.ms-reactions) .cs-chat-msg-av{margin-bottom:31px}.cs-chat-msg-col{flex-direction:column;flex:0 auto;gap:4px;min-width:0;display:flex}.cs-chat-msg-foot{float:right;align-items:center;gap:6px;margin:7px 0 0 10px;line-height:1;display:flex}.cs-chat-msg-foot>svg{color:var(--brand)}.cs-chat-msg-time,.cs-chat-msg-status{color:var(--text-muted);font-size:11px}.cs-chat-msg-status.error{color:var(--danger)}.cs-chat-bubble{background:var(--surface-2);max-width:100%;color:var(--text-bright);font-size:var(--fs-md);overflow-wrap:anywhere;white-space:pre-wrap;-webkit-user-select:text;user-select:text;border-radius:16px;align-self:flex-start;padding:10px 16px;line-height:1.4;display:inline-block}.cs-chat-msg-row.mine .cs-chat-bubble{background:var(--surface-3);border-bottom-left-radius:3px;position:relative}.cs-chat-msg-row.mine .cs-chat-bubble:after{content:"";background:var(--surface-3);width:9px;height:15px;clip-path:path("M9,0 C9,8 5,15 0,15 L9,15 Z");position:absolute;bottom:0;left:-8px}.cs-chat-bubble span,.cs-chat-bubble .msg-link{-webkit-user-select:text;user-select:text}.cs-chat-bubble .ms-reply-quote{border-left-color:var(--brand);margin:0 0 7px}.cs-chat-bubble .ms-reply-quote strong{color:var(--brand)}.cs-chat-edited{color:var(--text-muted);margin-left:7px;font-size:10px;font-style:normal}.cs-chat-msg-row.mine .ms-reactions{justify-content:flex-start}.cs-chat-msg-col .ms-reactions{margin-top:0}.cs-chat-message-more{align-self:flex-end;margin-top:0;margin-bottom:2px}.cs-chat-msg-row:hover .cs-chat-message-more{opacity:1}.cs-chat-actions-backdrop{z-index:160}.cs-chat-actions-menu{z-index:161}.cs-chat-copy-action{border:1px solid color-mix(in srgb, var(--brand) 45%, var(--line));border-radius:var(--r-sm);background:var(--brand-soft);min-height:28px;color:var(--brand);align-self:flex-start;align-items:center;gap:6px;padding:5px 9px;font-size:11px;font-weight:700;transition:background .14s,color .14s,border-color .14s;display:inline-flex}.cs-chat-copy-action:hover{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 22%, var(--surface-2))}.cs-chat-copy-action.copied{border-color:color-mix(in srgb, var(--online) 55%, var(--line));background:color-mix(in srgb, var(--online) 14%, var(--surface-2));color:var(--online)}.cs-chat-bubble small,.cs-chat-bubble i{opacity:.76}.cs-chat-bubble>img{border-radius:var(--r-md);object-fit:contain;cursor:zoom-in;width:auto;max-width:min(280px,100%);max-height:220px;margin-top:6px;display:block}.cs-chat-bubble .msg-gif-wrap,.cs-chat-bubble .ms-file,.cs-chat-bubble .ms-voice,.cs-chat-bubble .ms-attach-load,.cs-chat-bubble .ms-attach-err{margin-top:6px}.cs-chat-bubble .msg-gif-wrap{border-radius:var(--r-md);width:fit-content;max-width:min(260px,100%);line-height:0;overflow:visible}.cs-chat-bubble img.msg-gif{object-fit:contain;width:100%;max-width:100%;height:auto;max-height:220px;display:block;transform:translateZ(0)}.cs-chat-bubble .ms-file,.cs-chat-bubble .ms-voice{max-width:100%}.cs-chat-error{color:var(--danger);font-size:var(--fs-xs);background:#f0436a1f;flex:none;padding:7px 18px}.cs-chat-compose{gap:var(--sp-2);padding:10px 16px calc(12px + env(safe-area-inset-bottom));flex-direction:column;flex:none;display:flex;position:static}.cs-chat-compose .ms-replying{flex:none}.cs-comp-attach{width:44px;height:44px;color:var(--text-muted);background:var(--surface-2);border:1px solid var(--line);border-radius:50%;flex:none;place-items:center;transition:background .14s,color .14s;display:grid}.cs-comp-attach:hover{background:var(--surface-3);color:var(--text-bright)}.cs-chat-compose .gif-picker{top:auto;bottom:calc(60px + env(safe-area-inset-bottom));z-index:120;width:420px;height:min(420px, calc(100dvh - 84px - env(safe-area-inset-bottom)));max-width:calc(100% - 24px);max-height:calc(100dvh - 84px - env(safe-area-inset-bottom));transform-origin:100% 100%;animation:.18s cubic-bezier(.22,.82,.28,1) csCallPickerIn;position:absolute;right:12px}.cs-chat-compose .gif-picker-tabs,.cs-chat-compose .gif-picker-search{flex:none}.cs-chat-compose .gif-picker-body{overscroll-behavior:contain;flex:1;height:auto;min-height:0}@keyframes csCallPickerIn{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.cs-comp-row{align-items:flex-end;gap:var(--sp-2);display:flex}.cs-comp-field{align-items:flex-end;gap:var(--sp-2);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);flex:1;min-width:0;padding:10px 14px;transition:border-color .14s;display:flex}.cs-comp-field:focus-within{border-color:var(--brand)}.cs-comp-field textarea{min-width:0;color:var(--text-bright);font-size:var(--fs-md);resize:none;background:0 0;border:none;outline:none;flex:1;max-height:120px;margin:0;padding:0;font-family:inherit;line-height:1.4;display:block}.cs-comp-emoji{color:var(--text-muted);flex:none;place-items:center;transition:color .14s;display:grid}.cs-comp-emoji:hover{color:var(--text-bright)}.cs-comp-emoji.active{color:var(--brand)}.cs-comp-send{background:var(--brand);color:#fff;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;transition:background .14s,transform 80ms;display:grid}.cs-comp-send:hover{background:var(--brand-hover)}.cs-comp-send:active{transform:scale(.94)}.cs-comp-send:disabled{opacity:.5;cursor:default}.cs-rec-bar{align-items:center;gap:var(--sp-2);display:flex}.cs-rec-cancel{width:42px;height:42px;color:var(--text-muted);border-radius:50%;flex:none;place-items:center;transition:background .14s,color .14s;display:grid}.cs-rec-cancel:hover{background:var(--surface-2);color:var(--danger)}.cs-rec-info{align-items:center;gap:var(--sp-2);border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);min-width:0;height:44px;color:var(--text-bright);font-size:var(--fs-md);font-variant-numeric:tabular-nums;flex:1;padding:0 16px;display:flex}.cs-rec-dot{background:var(--danger);border-radius:50%;flex:none;width:11px;height:11px;animation:1.1s ease-in-out infinite csRecPulse}@keyframes csRecPulse{0%,to{opacity:1}50%{opacity:.25}}.cs-chat-voice-sending{font-size:var(--fs-sm);color:var(--text-muted);flex:none;align-items:center;gap:6px;padding:6px 12px;display:flex}.cs-chat-trigger{position:relative}.cs-chat-author{font-size:var(--fs-xs);color:var(--text-muted);margin-bottom:3px;font-weight:700;display:block}.cs-chat-badge{z-index:3;border:2px solid var(--bg-app);border-radius:var(--r-pill);background:var(--danger);color:#fff;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:10px;font-weight:850;line-height:1;animation:.18s ease-out csChatBadgeIn;display:inline-grid;position:absolute;top:-6px;right:-7px;box-shadow:0 4px 12px #f0436a61}@keyframes csChatBadgeIn{0%{opacity:0;transform:translateY(4px)scale(.7)}to{opacity:1;transform:translateY(0)scale(1)}}.voice-float-main{align-items:center;gap:var(--sp-3);text-align:left;flex:1;min-width:0;display:flex}@media (width<=1140px){.cs-desktop{grid-template-columns:minmax(0,1fr)}.cs-side{display:none}}@media (width>=769px) and (width<=1180px){.cs-desktop{grid-template-columns:minmax(0,1fr)}.cs-side{display:none}}@keyframes csParamsBackdropIn{0%{opacity:0}to{opacity:1}}@container call-chat (width<=620px){.cs-chat-head{padding-inline:14px}.cs-chat-nav{flex:1;gap:0;min-width:0}.cs-chat-search-bar{padding-inline:14px}.cs-chat-search-results .ms-search-list{max-height:130px}.cs-chat-nav-tab{flex:1;justify-content:center;padding-inline:6px}.cs-chat-materials-inner{padding:10px 12px 12px}.cs-chat-materials .chat-media-list{justify-content:center}.cs-chat-materials .chat-media-list>*{width:min(100%,360px)}.cs-chat-materials .chat-media-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));width:100%}.cs-chat-materials .chat-media-tab{padding-inline:8px}}@container call-chat (width>=621px) and (width<=820px){.cs-chat-materials .chat-media-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));width:100%}}@container call-chat (width<=420px){.cs-chat-nav-tab{padding-inline:4px;font-size:11px}}@media (prefers-reduced-motion:reduce){.cs-chat-layout,.cs-chat-conversation,.cs-chat-materials,.cs-chat-nav-tab:after{transition-duration:.01ms}.cs-chat-materials .chat-media-grid,.cs-chat-materials .chat-media-list,.cs-chat-materials .chat-media-empty,.cs-chat-materials .chat-media-state,.cs-chat-compose .gif-picker{animation:none}}@media (width<=440px){.cs-mhead{gap:6px;padding-inline:8px}.cs-mback{justify-content:center;width:40px;height:40px;padding:0}.cs-mback span{display:none}.cs-mhead-peer{justify-content:flex-start}.cs-mhead-meta{min-width:0}.cs-mhead .cs-chead-name{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.cs-mhead-actions .cs-iconbtn:first-child{display:none}}:root{--m-nav-h:62px;--m-fab-size:58px}.app-root.mobile{height:100dvh}.app-root.mobile .app-main{background:0 0}.app-root.mobile:has(>.voice-float) .app-main{padding-bottom:68px}.app-root.mobile>.voice-float{right:8px;bottom:calc(var(--m-nav-h) + env(safe-area-inset-bottom) + 8px);max-width:calc(100vw - 16px)}@media (width<=360px){.app-root.mobile>.voice-float{gap:8px;padding:8px 10px}.app-root.mobile>.voice-float .voice-float-label{max-width:132px}.app-root.mobile>.voice-float .voice-float-btn{width:36px;height:36px}}.m-header{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);padding-top:calc(env(safe-area-inset-top) + 16px);padding-bottom:var(--sp-4);display:flex}.m-header-lg{align-items:stretch;gap:var(--sp-3);flex-direction:column}.m-header-lg .m-header-actions{justify-content:space-between;gap:var(--sp-2)}.m-header-titles{min-width:0}.m-header-titles h1{font-size:var(--fs-xl);color:var(--text-bright);font-weight:800;line-height:1.2}.m-header-lg .m-header-titles h1{font-size:24px}.m-header-titles p{font-size:var(--fs-sm);color:var(--text-muted);margin-top:3px}.m-header-actions{flex:none;align-items:center;gap:6px;display:flex}.m-iconbtn{border-radius:var(--r-md);width:40px;height:40px;color:var(--text-muted);place-items:center;transition:background .14s,color .14s;display:grid;position:relative}.m-iconbtn:active{background:var(--surface-2);color:var(--text-bright)}.m-iconbtn.download{text-decoration:none}.m-iconbtn .notif-badge{box-shadow:0 0 0 2px var(--bg-app)}.m-avatar-btn{--dot-ring:var(--bg-app);place-items:center;margin-left:2px;display:grid}.app-root.mobile .theme-menu{width:min(208px,100vw - 24px);left:0;right:auto}.m-nav{z-index:40;min-height:var(--m-nav-h);padding:8px 10px 0;padding-bottom:env(safe-area-inset-bottom);background:var(--bg-topnav);border-top:1px solid var(--line);flex:none;justify-content:space-between;align-items:flex-start;gap:4px;display:flex;position:relative;overflow:visible}.m-tab{min-width:0;color:var(--text-muted);flex-direction:column;flex:1;align-items:center;gap:3px;padding-top:2px;text-decoration:none;transition:color .14s;display:flex}.m-tab.active{color:var(--brand)}.m-tab-ic{place-items:center;display:grid;position:relative}.m-tab-label{white-space:nowrap;font-size:11px;font-weight:600}.m-tab-badge{border-radius:var(--r-pill);background:var(--brand);color:#fff;min-width:17px;height:17px;box-shadow:0 0 0 2px var(--bg-topnav);justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-weight:700;display:inline-flex;position:absolute;top:-5px;right:-9px}.m-fab{width:var(--m-fab-size);height:var(--m-fab-size);background:var(--brand-grad);color:#fff;box-shadow:0 8px 22px var(--brand-glow);border-radius:50%;flex:none;place-items:center;margin:0 6px;transition:transform .18s,filter .14s;display:grid;transform:translateY(-16px)}.m-fab:active{filter:brightness(1.08)}.m-fab.open{transform:translateY(-16px)rotate(90deg)}.m-sheet-overlay{z-index:200;background:#0000008c;align-items:flex-end;animation:.18s mSheetFade;display:flex;position:fixed;inset:0}@keyframes mSheetFade{0%{opacity:0}to{opacity:1}}.m-sheet{width:100%;max-height:86vh;padding:10px var(--sp-4) calc(env(safe-area-inset-bottom) + var(--sp-5));background:var(--surface-pop);border-top-left-radius:var(--r-xl);border-top-right-radius:var(--r-xl);border-top:1px solid var(--line-strong);box-shadow:var(--sh-lg);animation:.24s cubic-bezier(.16,1,.3,1) mSheetUp;position:relative;overflow-y:auto}.m-sheet-x{border-radius:var(--r-md);background:var(--surface-2);width:36px;height:36px;color:var(--text-muted);place-items:center;display:grid;position:absolute;top:12px;right:12px}.m-sheet-x:active{background:var(--surface-3);color:var(--text-bright)}@keyframes mSheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.m-sheet-grab{border-radius:var(--r-pill);background:var(--surface-3);width:40px;height:4px;margin:4px auto 14px}.m-sheet-head{margin-bottom:var(--sp-4)}.m-sheet-head h2{font-size:var(--fs-2xl);color:var(--text-bright);font-weight:800}.m-sheet-head p{font-size:var(--fs-base);color:var(--text-muted);margin-top:2px}.m-sheet-group{margin:var(--sp-4) 0 var(--sp-2);font-size:var(--fs-md);color:var(--brand);align-items:center;gap:8px;font-weight:700;display:flex}.m-sheet-group-ic{place-items:center;display:grid}.m-sheet-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.m-sheet-item{align-items:center;gap:var(--sp-3);text-align:left;width:100%;padding:14px;transition:background .14s;display:flex}.m-sheet-item+.m-sheet-item{border-top:1px solid var(--line)}.m-sheet-item:active{background:var(--surface-2)}.m-sheet-ic{border-radius:var(--r-md);background:var(--brand-soft);width:46px;height:46px;color:var(--brand);flex:none;place-items:center;display:grid}.m-sheet-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.m-sheet-text b{font-size:var(--fs-md);color:var(--text-bright);font-weight:700}.m-sheet-text i{font-style:normal;font-size:var(--fs-sm);color:var(--text-muted)}.m-sheet-arrow{color:var(--text-muted);flex:none}.m-sheet-foot{margin-top:var(--sp-4);padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-md);font-size:var(--fs-sm);color:var(--text-muted);align-items:center;gap:8px;display:flex}.m-sheet-foot>svg{flex:none}.app-root.mobile .page-3col{grid-template-columns:minmax(0,1fr)!important}.app-root.mobile .page-sidebar,.app-root.mobile .page-right{display:none}.app-root.mobile .page-center{padding:var(--sp-4) var(--sp-4) calc(var(--sp-8) + env(safe-area-inset-bottom))}.app-root.mobile .page-center.ms-center{padding:0}.app-root.mobile .ms-dlg-head{padding-top:calc(env(safe-area-inset-top) + var(--sp-3))}.app-root.mobile .ms-back{border-radius:var(--r-md);width:38px;height:38px;color:var(--text-muted);flex:none;place-items:center;margin-left:-6px;display:grid}.app-root.mobile .ms-back:active{background:var(--surface-2);color:var(--text-bright)}.ms-peer-avatar-btn{border-radius:50%;flex:none;place-items:center;display:grid}.app-root.mobile .ms-peer-avatar-btn:active{transform:scale(.94)}.app-root.mobile .ms-composer{padding:var(--sp-3) var(--sp-3) calc(var(--sp-3) + env(safe-area-inset-bottom))}.app-root.mobile .th-composer{flex-direction:column;display:flex}.app-root.mobile .ms-composer .gif-picker,.app-root.mobile .th-composer .gif-picker{width:100%;max-width:none;height:min(42dvh,340px);min-height:0;box-shadow:none;order:100;margin-top:4px;position:static}.app-root.mobile .ms-composer .gif-picker-body,.app-root.mobile .th-composer .gif-picker-body{flex:1;height:auto;min-height:0}.ms-info-sheet{z-index:150;background:var(--bg-app);flex-direction:column;animation:.22s cubic-bezier(.16,1,.3,1) msInfoIn;display:flex;position:fixed;inset:0}@keyframes msInfoIn{0%{transform:translate(100%)}to{transform:translate(0)}}.ms-info-sheet-head{align-items:center;gap:var(--sp-2);padding:calc(env(safe-area-inset-top) + 10px) var(--sp-3) 10px;border-bottom:1px solid var(--line);font-size:var(--fs-lg);color:var(--text-bright);flex:none;font-weight:800;display:flex}.ms-info-sheet-body{min-height:0;padding:var(--sp-4) var(--sp-4) calc(var(--sp-8) + env(safe-area-inset-bottom));flex:1;overflow-y:auto}.app-root.mobile .ui-modal-overlay{z-index:190}.app-root.mobile .ui-modal-overlay.settings-overlay{z-index:220}.app-root.mobile .ui-modal-overlay.avatar-crop-overlay{z-index:230}.ob-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--sp-4);margin-bottom:var(--sp-5)}.ob-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ob-title{color:var(--text-bright);font-size:15px;font-weight:700}.ob-sub{color:var(--text-muted);margin-top:2px;font-size:12px}.ob-hide{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:none;padding:2px 4px;font-size:12px}.ob-hide:hover{color:var(--text-bright)}.ob-progress{background:var(--surface-2);border-radius:4px;height:4px;margin:12px 0 4px;overflow:hidden}.ob-progress i{background:var(--brand);border-radius:4px;height:100%;transition:width .25s;display:block}.ob-steps{margin:0;padding:0;list-style:none}.ob-step{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:10px 0;display:flex}.ob-step:last-child{border-bottom:none;padding-bottom:0}.ob-check{width:22px;height:22px;color:var(--brand-contrast);background:var(--surface-2);border-radius:50%;flex:none;place-items:center;display:grid}.ob-check i{border:2px solid var(--text-muted);border-radius:50%;width:8px;height:8px}.ob-step.done .ob-check{background:var(--brand)}.ob-step-main{flex:1;min-width:0}.ob-step-title{color:var(--text-bright);font-size:13px;font-weight:600}.ob-step.done .ob-step-title{color:var(--text-muted);text-decoration:line-through}.ob-step-hint{color:var(--text-muted);font-size:12px}.ob-step-btn{border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface-2);color:var(--text-bright);cursor:pointer;transition:border-color var(--t-base) var(--ease), color var(--t-base) var(--ease);flex:none;align-items:center;gap:4px;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex}.ob-step-btn:hover{border-color:var(--brand);color:var(--brand)}@media (width<=520px){.ob-step{flex-wrap:wrap}.ob-step-btn{margin-left:32px}}.m-search-box{background:var(--surface-inset);border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:var(--sp-2);color:var(--text-muted);align-items:center;gap:8px;padding:10px 12px;display:flex}.m-search-box input{min-width:0;color:var(--text-bright);background:0 0;border:none;outline:none;flex:1;font-size:16px}.m-search-box input::placeholder{color:var(--text-muted)}.m-search-clear{color:var(--text-muted);flex:none;display:flex}.m-search-hint{padding:var(--sp-6) var(--sp-4);text-align:center;color:var(--text-muted);font-size:var(--fs-sm)}.m-screen{-webkit-overflow-scrolling:touch;height:100%;padding:0 var(--sp-4) calc(var(--sp-8) + env(safe-area-inset-bottom));overflow-y:auto}.m-sec-head{justify-content:space-between;align-items:center;gap:var(--sp-2);margin:var(--sp-6) 0 var(--sp-3);display:flex}.m-sec-head h2{color:var(--text-bright);font-size:18px;font-weight:800}.m-sec-link{color:var(--brand);font-size:var(--fs-sm);white-space:nowrap;flex:none;align-items:center;gap:3px;font-weight:600;display:inline-flex}.m-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.m-empty{padding:var(--sp-5);text-align:center;color:var(--text-muted);font-size:var(--fs-sm);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg)}.m-badge{border-radius:var(--r-pill);background:var(--brand);color:#fff;flex:none;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.m-chips{gap:var(--sp-2);scrollbar-width:none;margin:0 calc(-1 * var(--sp-4)) var(--sp-2);padding:0 var(--sp-4) 4px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 24px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 24px),#0000)}.m-chips::-webkit-scrollbar{display:none}.m-chip{border-radius:var(--r-pill);background:var(--surface-2);color:var(--text);font-size:var(--fs-sm);white-space:nowrap;flex:none;align-items:center;gap:6px;padding:8px 14px;font-weight:600;display:inline-flex}.m-chip.active{background:var(--brand);color:#fff}.m-chip-count{border-radius:var(--r-pill);background:#ffffff2e;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.m-chip:not(.active) .m-chip-count{background:var(--surface-3);color:var(--text-muted)}.m-stats{gap:var(--sp-3);grid-template-columns:1fr 1fr;display:grid}.m-stat{align-items:flex-start;gap:var(--sp-3);padding:var(--sp-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);text-align:left;flex-direction:column;transition:background .14s,border-color .14s;display:flex}.m-stat:active{background:var(--surface-2)}.m-stat-ic{border-radius:var(--r-md);flex:none;place-items:center;width:44px;height:44px;display:grid}.m-stat-ic.purple,.m-stat-ic.blue{background:var(--brand-soft);color:var(--brand)}.m-stat-head{align-items:center;gap:var(--sp-3);width:100%;display:flex}.m-stat-num{color:var(--text-bright);font-size:30px;font-weight:800;line-height:1}.m-stat-desc{width:100%;font-size:var(--fs-sm);color:var(--text-muted);line-height:1.3}.m-stat-go{justify-content:space-between;align-items:center;gap:var(--sp-2);width:100%;padding-top:var(--sp-3);border-top:1px solid var(--line);color:var(--brand);font-size:var(--fs-xs);margin-top:auto;font-weight:600;display:flex}.m-stat-go>svg{flex:none}.m-convo{--dot-ring:var(--surface);align-items:flex-start;gap:var(--sp-3);width:100%;padding:var(--sp-3) var(--sp-4);text-align:left;transition:background .14s;display:flex}.m-convo+.m-convo,.m-disc+.m-disc,.m-today+.m-today{border-top:1px solid var(--line)}.m-convo:active{background:var(--surface-2);--dot-ring:var(--surface-2)}.m-convo.unread{background:linear-gradient(90deg, var(--brand-soft), transparent 60%);box-shadow:inset 3px 0 0 var(--brand)}.m-convo.unread .m-convo-last{color:var(--text)}.m-new-badge{border-radius:var(--r-pill);background:var(--brand);color:#fff;flex:none;padding:1px 7px;font-size:10px;font-weight:700}.m-convo-body{flex:1;min-width:0}.m-convo-top{align-items:center;gap:var(--sp-2);display:flex}.m-convo-name{color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.m-convo-time{font-size:var(--fs-xs);color:var(--text-muted);flex:none;margin-left:auto}.m-convo-text{align-items:center;gap:var(--sp-2);margin-top:2px;display:flex}.m-convo-last{min-width:0;font-size:var(--fs-sm);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.m-convo-tag{font-size:var(--fs-xs);color:var(--text-muted);align-items:center;gap:5px;margin-top:8px;display:inline-flex}.m-convo-tag-arrow{margin-left:2px}.m-disc{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3) var(--sp-4);text-align:left;transition:background .14s;display:flex}.m-disc:active{background:var(--surface-2)}.m-disc-ic{border-radius:var(--r-md);background:var(--surface-3);width:44px;height:44px;color:var(--brand);flex:none;place-items:center;display:grid}.m-disc-body{flex:1;min-width:0}.m-disc-top{align-items:center;gap:var(--sp-2);display:flex}.m-disc-title{color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;font-weight:700;display:inline-flex;overflow:hidden}.m-disc-pin{color:var(--brand);flex:none}.m-disc-time{font-size:var(--fs-xs);color:var(--text-muted);flex:none;margin-left:auto}.m-disc-sub{font-size:var(--fs-sm);color:var(--text-muted);align-items:center;gap:5px;margin-top:3px;display:flex}.m-disc-sub>svg{flex:none}.m-disc-arrow{color:var(--text-muted);flex:none}.m-today{--dot-ring:var(--surface);align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);display:flex}.m-today-user{text-align:left;width:100%}.m-today-user:active{background:var(--surface-2)}.m-today-arrow{color:var(--text-muted);flex:none}.m-today-ic{border-radius:var(--r-md);background:var(--brand-soft);width:44px;height:44px;color:var(--brand);flex:none;place-items:center;display:grid}.m-today-body{flex:1;min-width:0}.m-today-name{color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.m-today-meta{font-size:var(--fs-sm);color:var(--text-muted);margin-top:2px}.m-today-meta.m-online{color:var(--online);align-items:center;gap:6px;display:flex}.m-dot{background:var(--online);border-radius:50%;width:8px;height:8px}.m-today-join{border-radius:var(--r-sm);background:var(--brand);color:#fff;font-size:var(--fs-sm);flex:none;padding:8px 18px;font-weight:700;transition:background .14s}.m-today-join:active{background:var(--brand-hover)}.m-today-here{border-radius:var(--r-sm);background:color-mix(in srgb, var(--success) 16%, transparent);color:var(--success);font-size:var(--fs-sm);white-space:nowrap;flex:none;padding:8px 14px;font-weight:700}.m-today-empty{padding:var(--sp-5);text-align:center;font-size:var(--fs-sm);color:var(--text-muted)}.m-home-profile{text-align:center;flex-direction:column;align-items:center;display:flex}.m-home-profile-name{margin-top:var(--sp-3);color:var(--text-bright);font-size:var(--fs-xl);font-weight:800}.m-home-profile-status{color:var(--text-muted);font-size:var(--fs-sm);margin-top:4px}.m-home-profile-status.online{color:var(--online)}.m-home-profile-action{width:100%;min-height:42px;margin-top:var(--sp-4);border-radius:var(--r-sm);background:var(--brand);color:#fff;font-size:var(--fs-sm);justify-content:center;align-items:center;gap:7px;font-weight:700;display:inline-flex}.m-calendar{justify-content:center;align-items:center;gap:var(--sp-2);width:100%;margin-top:var(--sp-4);padding:var(--sp-4);background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--r-lg);color:var(--text-muted);font-size:var(--fs-sm);font-weight:600;display:flex}.m-calendar:disabled{cursor:default}.page-3col.no-left.hm-shell{grid-template-columns:minmax(0,1fr) clamp(340px,24.2vw,418px)}@media (width<=1080px){.page-3col.no-left.hm-shell{grid-template-columns:minmax(0,1fr)}}.page-center.hm-center{padding:44px 76px 40px 52px}.hm-shell .page-right{padding:var(--sp-5);margin:20px 0 28px}.hm-shell .page-right:not(.open){background:0 0;border:0;border-radius:0}:root:not([data-theme=light]) .hm-shell .page-right:not(.open){box-shadow:none;background:0 0}.hm-greet h1{color:var(--text-bright);font-size:38px;font-weight:800;line-height:1.1}.hm-greet p{margin:6px 0 var(--sp-6);font-size:var(--fs-md);color:var(--text-muted)}.emoji-img.hm-greet-wave{vertical-align:-.08em;width:32px;height:32px;margin-left:5px}.hm-cards{gap:var(--sp-5);grid-template-columns:1fr 1fr;display:grid}.hm-card{align-items:center;gap:var(--sp-2) var(--sp-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);text-align:left;grid-template-columns:auto 1fr;grid-template-areas:"ic main""go go";min-height:170px;padding:22px;transition:border-color .14s,background .14s;display:grid}:root:not([data-theme=light]) .hm-card,:root:not([data-theme=light]) .hm-convo,:root:not([data-theme=light]) .hm-comm,:root:not([data-theme=light]) .hm-disc,:root:not([data-theme=light]) .hm-rp-card,:root:not([data-theme=light]) .hm-quick button{background:var(--surface);box-shadow:inset 0 1px #ffffff06}.hm-card:hover{border-color:var(--line-strong);background:var(--surface-2)}.hm-card-ic{border:1px solid var(--brand-ring);border-radius:var(--r-md);grid-area:ic;place-items:center;width:52px;height:52px;display:grid}.hm-card-ic.purple,.hm-card-ic.blue{background:var(--brand-soft);color:var(--brand)}.hm-card-main{grid-area:main}.hm-card-label{font-size:var(--fs-sm);color:var(--text-muted)}.hm-card-num{font-size:var(--fs-3xl);color:var(--text-bright);font-weight:800;line-height:1.05}.hm-card-sub{font-size:var(--fs-sm);color:var(--text-muted)}.hm-card-go{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--line);color:var(--brand);font-size:var(--fs-sm);grid-area:go;justify-content:space-between;align-items:center;font-weight:600;display:flex}.hm-sec-head{justify-content:space-between;align-items:center;margin:30px 0 12px;display:flex}.hm-sec-head h2{font-size:var(--fs-xl);color:var(--text-bright);font-weight:800}.hm-sec-link{color:var(--brand);font-size:var(--fs-sm);align-items:center;gap:4px;font-weight:600;display:inline-flex}.hm-sec-link:hover{text-decoration:underline}.hm-list{gap:var(--sp-2);flex-direction:column;display:flex}.hm-empty{padding:var(--sp-6);text-align:center;color:var(--text-muted);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg)}.hm-convo{--dot-ring:var(--surface);align-items:center;gap:var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);text-align:left;min-height:72px;padding:10px 12px;transition:border-color .14s,background .14s;display:flex}.hm-convo:hover{border-color:var(--line-strong);background:var(--surface-2);--dot-ring:var(--surface-2)}.hm-convo.unread{--dot-ring:var(--surface);background:linear-gradient(90deg, var(--brand-soft), var(--surface));box-shadow:inset 3px 0 0 var(--brand);border-color:#0000}.hm-convo.unread:hover{background:linear-gradient(90deg, var(--brand-soft), var(--surface-2))}.hm-convo-info{flex:1;min-width:0}.hm-convo-top{align-items:center;gap:var(--sp-2);display:flex}.hm-convo-name{color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.hm-convo.unread .hm-convo-name{font-weight:700}.hm-new-badge{border-radius:var(--r-pill);background:var(--brand);color:#fff;flex:none;padding:1px 7px;font-size:10px;font-weight:700}.hm-convo-time{font-size:var(--fs-xs);color:var(--text-muted);margin-left:auto}.hm-convo-bottom{align-items:center;gap:var(--sp-2);margin-top:2px;display:flex}.hm-unread{border-radius:var(--r-pill);background:var(--brand);color:#fff;flex:none;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.hm-convo-last{min-width:0;font-size:var(--fs-sm);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.hm-convo.unread .hm-convo-last{color:var(--text)}.hm-tag{border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-muted);font-size:var(--fs-sm);flex:none;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.hm-comm{align-items:center;gap:var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);text-align:left;min-height:76px;padding:10px 12px;transition:border-color .14s,background .14s;display:flex}.hm-comm:hover{border-color:var(--line-strong);background:var(--surface-2)}.hm-comm-info{flex:1;min-width:0}.hm-comm-title-row{align-items:center;gap:var(--sp-2);min-width:0;display:flex}.hm-comm-name{color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.hm-comm-sub{font-size:var(--fs-sm);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;overflow:hidden}.hm-role-badge{border-radius:var(--r-xs);background:var(--brand-soft);color:var(--brand);flex:none;padding:2px 7px;font-size:11px;font-weight:700}.hm-comm-members,.hm-comm-last{width:140px;color:var(--text-muted);font-size:var(--fs-sm);text-align:left;flex-direction:column;flex:none;gap:3px;display:flex}.hm-comm-online{align-items:center;gap:7px;display:inline-flex}.hm-comm-online i{background:var(--online);border-radius:50%;width:8px;height:8px;box-shadow:0 0 10px #2dd46f47}.hm-comm-last strong{color:var(--text);font-weight:500}.hm-comm-arrow{color:var(--text-muted);flex:none}.hm-disc{align-items:center;gap:var(--sp-3);padding:var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);text-align:left;cursor:pointer;transition:background .14s,border-color .14s;display:flex}.hm-disc:hover{border-color:var(--line-strong);background:var(--surface-2)}.hm-disc-ic{border-radius:var(--r-md);background:var(--surface-3);width:44px;height:44px;color:var(--brand);flex:none;place-items:center;display:grid}.hm-disc-info{flex:1;min-width:0}.hm-disc-title{color:var(--text-bright);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;font-weight:700;display:flex;overflow:hidden}.hm-disc-pin{color:var(--brand);flex:none}.hm-disc-sub{font-size:var(--fs-sm);color:var(--text-muted)}.hm-rp-title{margin:0 0 var(--sp-3);font-size:var(--fs-xl);color:var(--text-bright);font-weight:800}.hm-rp-title:not(:first-child){margin-top:var(--sp-5)}.hm-rp-card{--dot-ring:var(--surface);margin-bottom:var(--sp-3);padding:var(--sp-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg)}.hm-today{align-items:center;gap:var(--sp-3);display:flex}.hm-today-ic{border-radius:var(--r-md);background:var(--brand-soft);width:42px;height:42px;color:var(--brand);flex:none;place-items:center;display:grid}.hm-today-name{color:var(--text-bright);font-weight:700}.hm-today-sub{font-size:var(--fs-sm);color:var(--text-muted)}.hm-event-head{align-items:center;gap:var(--sp-3);display:flex}.hm-event-tag{font-size:var(--fs-xs);color:var(--text-muted)}.hm-event-meta{margin-top:var(--sp-3);font-size:var(--fs-sm);color:var(--text-muted)}.hm-event-foot{margin-top:var(--sp-3);justify-content:space-between;align-items:center;display:flex}.hm-event-going{font-size:var(--fs-sm);color:var(--text-muted)}.hm-event-join{border-radius:var(--r-sm);background:var(--brand);color:#fff;font-size:var(--fs-sm);padding:8px 18px;font-weight:700;transition:background .14s}.hm-event-join:hover{background:var(--brand-hover)}.hm-rp-head{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-3);font-size:var(--fs-sm);color:var(--text-muted);font-weight:700;display:flex}.hm-rp-item{align-items:center;gap:var(--sp-2);padding:6px 0;display:flex}.hm-rp-item-info{flex:1;min-width:0}.hm-rp-item-name{font-size:var(--fs-sm);color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.hm-rp-item-sub{font-size:var(--fs-xs);color:var(--online)}.hm-rp-item-sub.voice{color:var(--brand);align-items:center;gap:4px;display:flex}.hm-rp-join{border-radius:var(--r-sm);background:var(--brand);color:#fff;font-size:var(--fs-xs);cursor:pointer;border:none;flex:none;padding:5px 12px;font-weight:700;transition:filter .14s}.hm-rp-join:hover{filter:brightness(1.1)}.hm-rp-here{border-radius:var(--r-sm);background:color-mix(in srgb, var(--success) 16%, transparent);color:var(--success);font-size:var(--fs-xs);white-space:nowrap;flex:none;padding:5px 12px;font-weight:700}.hm-rp-empty{padding:var(--sp-2) 0;font-size:var(--fs-sm);color:var(--text-muted)}.hm-rp-link{margin-top:var(--sp-2);color:var(--brand);font-size:var(--fs-sm);font-weight:600}.hm-rp-link:hover{text-decoration:underline}.hm-me{gap:var(--sp-3);flex-direction:column;display:flex}.hm-me-top{align-items:center;gap:var(--sp-3);display:flex}.hm-me-id{min-width:0}.hm-me-name{color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;-webkit-user-select:text;user-select:text;cursor:text;font-weight:700;overflow:hidden}.hm-me-presence{font-size:var(--fs-sm);color:var(--text-muted);align-items:center;gap:6px;margin-top:2px;display:inline-flex}.hm-me-presence>i{background:var(--online);border-radius:50%;width:8px;height:8px;box-shadow:0 0 8px #2dd46f66}.hm-me-presence.dnd{color:var(--dnd)}.hm-me-presence.dnd>i{background:var(--dnd);box-shadow:0 0 8px #f0436a66}.hm-me-status{align-items:center;gap:var(--sp-2);background:var(--surface-inset);border:1px solid var(--line);border-radius:var(--r-md);padding:0 8px 0 10px;display:flex}.hm-me-status:focus-within{border-color:var(--brand-ring)}.hm-me-status>svg{color:var(--text-muted);flex:none}.hm-me-status-input{min-width:0;color:var(--text);font-size:var(--fs-sm);background:0 0;border:none;outline:none;flex:1;padding:9px 0}.hm-me-status-input::placeholder{color:var(--text-muted)}.hm-me-status-save{border-radius:var(--r-sm);width:26px;height:26px;color:var(--brand);flex:none;place-items:center;display:grid}.hm-me-status-save:hover{background:var(--surface-2)}.hm-me-dnd{justify-content:space-between;align-items:center;gap:var(--sp-3);cursor:pointer;display:flex}.hm-me-dnd-text{align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--text);display:inline-flex}.hm-me-dnd-text>svg{color:var(--text-muted);flex:none}.hm-card,.hm-convo,.hm-comm,.hm-disc{transition:background var(--t-base) var(--ease), border-color var(--t-base) var(--ease), box-shadow var(--t-base) var(--ease), transform var(--t-fast) var(--ease)}:root:not([data-theme=light]) .hm-card:hover,:root:not([data-theme=light]) .hm-convo:not(.unread):hover,:root:not([data-theme=light]) .hm-comm:hover,:root:not([data-theme=light]) .hm-disc:hover{background:var(--surface-2);border-color:var(--brand-ring);transform:translateY(-1px);box-shadow:0 8px 22px #00000080,inset 0 1px #ffffff0a}@media (width<=1360px){.page-center.hm-center{padding-right:var(--sp-8);padding-left:var(--sp-8)}.hm-comm-members,.hm-comm-last{width:126px}}@media (width<=1200px){.hm-comm-last{display:none}}*{box-sizing:border-box;margin:0;padding:0}:root{--bg-rail:#101010;--bg-channels:#141414;--bg-main:#181818;--bg-input:#222;--card:#1e1e1e;--card-hover:#262626;--border:#ffffff1a;--text:#c6ccdc;--text-muted:#8992aa;--text-bright:#eef2ff;--accent:#6b4ed6;--accent-hover:#5f42c8;--accent-soft:#6b4ed61f;--active:#2c2c2c;--danger:#f0436a;--online:#2dd46f}body{background:var(--bg-main);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;height:100dvh;font-family:Segoe UI,system-ui,-apple-system,sans-serif;overflow:hidden}#root{height:100dvh}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input{font-family:inherit}*,:before,:after{transition:background-color var(--t-base) var(--ease), color var(--t-base) var(--ease), border-color var(--t-base) var(--ease), outline-color var(--t-base) var(--ease), box-shadow var(--t-base) var(--ease), fill var(--t-base) var(--ease), stroke var(--t-base) var(--ease), opacity var(--t-base) var(--ease)}button,a,select,input,textarea,summary,[role=button],.member,.cm-arrow{transition:background-color var(--t-base) var(--ease), color var(--t-base) var(--ease), border-color var(--t-base) var(--ease), box-shadow var(--t-base) var(--ease), opacity var(--t-base) var(--ease), filter var(--t-base) var(--ease), transform var(--t-fast) var(--ease)}.cm-item:hover .cm-arrow{transform:translate(3px)}*{scrollbar-width:thin;scrollbar-color:var(--line-strong,#ffffff1f) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--line-strong,#ffffff1f);border-radius:var(--r-pill,999px);background-clip:padding-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--brand-ring,#7c5cff73);background-clip:padding-box}::-webkit-scrollbar-corner{background:0 0}.center{justify-content:center;align-items:center;height:100dvh;display:flex}.auth-page{-webkit-overflow-scrolling:touch;background:radial-gradient(circle at 22% 35%, #6b4ed629, transparent 34%), var(--bg-main);grid-template-columns:minmax(0,600px) 380px;justify-content:center;align-items:center;gap:clamp(36px,6vw,88px);height:100dvh;padding:44px clamp(24px,5vw,72px);display:grid;overflow-y:auto}.auth-page--compact{justify-content:center;align-items:center;padding:24px;display:flex}.auth-intro{max-width:600px}.auth-intro-logo{filter:drop-shadow(0 10px 26px #6b4ed65c);margin-bottom:20px;display:block}.auth-eyebrow{color:#9f8cff;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;font-size:13px;font-weight:700}.auth-intro h1{max-width:590px;color:var(--text-bright);letter-spacing:-.035em;font-size:clamp(34px,4vw,54px);line-height:1.08}.auth-intro-lead{max-width:560px;color:var(--text);margin-top:18px;font-size:18px;line-height:1.55}.auth-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px;list-style:none;display:grid}.auth-features li{border:1px solid var(--border);background:#1e1e1ec2;border-radius:12px;min-height:104px;padding:16px}.auth-features strong,.auth-features span{display:block}.auth-features strong{color:var(--text-bright);margin-bottom:6px;font-size:15px}.auth-features span{color:var(--text-muted);font-size:13px;line-height:1.45}.auth-more{color:#a998ff;margin-top:22px;font-size:14px;font-weight:600;text-decoration:none;display:inline-block}.auth-more:hover{color:#c5baff;text-decoration:underline}.auth-card{background:var(--bg-channels);border-radius:12px;flex-direction:column;width:380px;padding:32px;display:flex;box-shadow:0 8px 24px #00000059}.auth-recovery{text-align:center;align-items:stretch;gap:14px}.auth-recovery h1{margin:0;font-size:21px}.auth-recovery-lead{color:var(--text-muted);text-align:left;margin:0;font-size:14px;line-height:1.5}.auth-recovery-code{letter-spacing:.04em;word-break:normal;overflow-wrap:break-word;-webkit-user-select:all;user-select:all;background:#1e1f22;border-radius:10px;padding:14px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;display:block}.auth-recovery-actions{gap:10px;display:flex}.auth-recovery-actions>*{flex:1}.auth-mobile-heading{display:none}.auth-logo{filter:drop-shadow(0 8px 22px #7c5cff66);width:108px;height:108px;margin:0 auto 4px;animation:4s ease-in-out infinite ghostFloat;display:block}@keyframes ghostFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.auth-card .logo{text-align:center;background:linear-gradient(100deg,#5865f2,#8a5cf6,#c08cff,#8a5cf6,#5865f2) 0 0/220%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:4px;font-size:32px;animation:6s linear infinite logoShimmer}@keyframes logoShimmer{to{background-position:220%}}.auth-card .subtitle{text-align:center;color:var(--text-muted);margin-bottom:24px}.auth-card label{text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;font-size:12px;font-weight:700}.auth-card input{color:var(--text-bright);background:#1e1f22;border:1px solid #1e1f22;border-radius:6px;outline:none;margin-bottom:16px;padding:10px 12px;font-size:15px}.auth-card input:focus{border-color:var(--accent)}.auth-card .error{color:#f5a3a5;background:#f23f431a;border-radius:6px;margin-bottom:16px;padding:8px 12px;font-size:14px}button.primary{background:var(--brand-grad);color:var(--brand-contrast);border:1px solid var(--brand-control-border);box-shadow:var(--brand-control-shadow);border-radius:10px;padding:11px;font-size:15px;font-weight:600;transition:background .16s,box-shadow .16s,opacity .15s}button.primary:hover{background:var(--brand-grad-hover);box-shadow:var(--brand-control-shadow-hover)}button.primary:disabled{opacity:.6;cursor:default}button.link{color:var(--text-muted);margin-top:12px;font-size:14px}button.link:hover{color:var(--text);text-decoration:underline}.auth-divider{color:var(--text-muted,#9a9aab);align-items:center;gap:10px;margin:14px 0 10px;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border,#3a3d45);flex:1;height:1px}.auth-guest-btn{box-sizing:border-box;border:1px solid var(--brand,#7c5cff);width:100%;color:var(--brand,#7c5cff);background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:11px 14px;font-size:14px;font-weight:600;transition:background .15s;display:flex}.auth-guest-btn:hover{background:var(--brand-soft,#7c5cff1f)}.auth-guest-btn:disabled{opacity:.6;cursor:default}.auth-guest-btn img{flex-shrink:0}.download-app{box-sizing:border-box;color:#fff;background:#23a55a;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:8px;padding:11px 14px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.download-app:hover{background:#1e9150}.download-app.windows{background:#0b6cd4}.download-app.windows:hover{background:#0a5fbb}.login-privacy{text-align:center;color:var(--text-muted,#9a9aab);margin-top:14px;font-size:13px;text-decoration:none;display:block}.login-privacy:hover{color:var(--brand,#7c5cff);text-decoration:underline}@media (width>=941px){.auth-page:not(.auth-page--compact) .auth-logo{display:none}}@media (width<=940px){.auth-page{grid-template-columns:minmax(0,560px);align-content:start;gap:30px;padding-top:32px;padding-bottom:48px}.auth-card{order:1}.auth-intro{order:2}.auth-logo{width:88px;height:88px}.auth-mobile-heading{text-align:center;margin:6px 0 18px;display:block}.auth-mobile-heading .auth-eyebrow{margin-bottom:8px;font-size:11px}.auth-mobile-heading h1{color:var(--text-bright);letter-spacing:-.03em;font-size:clamp(24px,6.5vw,28px);line-height:1.1}.auth-card .logo,.auth-intro>.auth-eyebrow,.auth-intro>h1{display:none}.auth-intro{text-align:center}.auth-intro-logo{display:none}.auth-intro h1,.auth-intro-lead{margin-left:auto;margin-right:auto}.auth-card{width:min(100%,420px);margin:0 auto}}@media (width<=560px){.auth-page{padding:24px 14px 36px}.auth-intro h1{font-size:32px}.auth-intro-lead{font-size:16px}.auth-features{grid-template-columns:1fr}.auth-features li{min-height:auto}.auth-card{padding:24px 20px}}.settings-label{text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);margin:20px 0 8px;font-size:12px;font-weight:700;display:block}.settings-row{align-items:center;gap:8px;display:flex}.settings-hint{color:var(--text-muted);margin-top:6px;font-size:12px}.mic-test-diagnostics{border:1px solid var(--border);background:var(--bg-input);border-radius:12px;margin-top:12px;padding:12px}.mic-test-status-grid{color:var(--text-muted);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 14px;font-size:13px;display:grid}.mic-test-status-grid strong{color:var(--text-bright);text-align:right}.mic-test-status-grid strong[data-state=ok]{color:var(--success,#3ba55d)}.mic-test-status-grid strong[data-state=error]{color:var(--danger,#e06c75)}.mic-test-ab{gap:8px;margin-top:12px;display:flex}.mic-test-ab .ghost-btn{flex:1}.mic-test-ab .ghost-btn.active{color:var(--text-bright);border-color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, var(--bg-input))}.noise-dataset-card{border:1px solid var(--border);background:var(--bg-input);border-radius:12px;padding:14px}.noise-dataset-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.noise-dataset-head>div,.noise-dataset-task-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.noise-dataset-head strong,.noise-dataset-task strong{color:var(--text-bright);font-size:14px}.noise-dataset-head span,.noise-dataset-task-copy span{color:var(--text-muted);overflow-wrap:anywhere;font-size:12px}.noise-dataset-warning{color:var(--text-bright);background:#faa61a14;border:1px solid #faa61a57;border-radius:9px;margin-top:12px;padding:9px 11px;font-size:12px}.noise-dataset-tasks{margin-top:10px}.noise-dataset-task{grid-template-columns:minmax(0,1fr) auto minmax(88px,auto);align-items:center;gap:10px;padding:10px 0;display:grid}.noise-dataset-task:not(:last-child){border-bottom:1px solid var(--border)}.noise-dataset-count{color:var(--text-muted);white-space:nowrap;font-size:11px}.noise-dataset-progress{background:var(--surface-inset);border-radius:999px;height:6px;margin-top:9px;overflow:hidden}.noise-dataset-progress span{border-radius:inherit;background:var(--brand);height:100%;transition:width .1s linear;display:block}.noise-dataset-message{overflow-wrap:anywhere}@media (width<=640px){.noise-dataset-head{flex-direction:column;align-items:flex-start}.noise-dataset-task{grid-template-columns:minmax(0,1fr) auto}.noise-dataset-task-copy{grid-column:1/-1}}.settings-badge{background:var(--brand);color:#fff;vertical-align:middle;border-radius:6px;margin-left:8px;padding:1px 6px;font-size:11px;font-weight:600}.settings-select{background:var(--bg-input);border:1px solid var(--border);width:100%;color:var(--text-bright);border-radius:10px;outline:none;padding:11px 12px;font-size:14px;transition:border-color .15s}.settings-select:focus{border-color:var(--accent)}.settings-seg{background:var(--bg-input);border:1px solid var(--border);border-radius:10px;gap:6px;padding:4px;display:flex}.settings-seg-btn{color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:7px;flex:1;padding:8px 10px;font-size:13px;transition:background .15s,color .15s}.settings-seg-btn.active{background:var(--accent);color:#fff}.settings-range{width:100%;accent-color:var(--accent);cursor:pointer}.mic-meter{background:var(--bg-input);border:1px solid var(--border);border-radius:6px;flex:1;height:12px;position:relative;overflow:hidden}.mic-meter-fill{background:linear-gradient(90deg, var(--success,#3ba55d), #e5c07b 70%, #e06c75);width:0%;height:100%;transition:width 60ms linear}.mic-meter-threshold{background:var(--text-bright);opacity:.8;width:2px;position:absolute;top:-2px;bottom:-2px}.settings-toggles{background:var(--bg-input);border:1px solid var(--border);border-radius:12px;flex-direction:column;padding:0 14px;display:flex}.toggle-row{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;display:flex}.toggle-row:not(:last-child){border-bottom:1px solid var(--border)}.toggle-text{flex-direction:column;gap:2px;min-width:0;display:flex}.toggle-title{color:var(--text-bright);font-size:14px;font-weight:600}.toggle-sub{color:var(--text-muted);font-size:12px}.toggle-switch{appearance:none;cursor:pointer;background:#4f545c;border-radius:13px;flex-shrink:0;width:44px;height:26px;transition:background .15s;position:relative}.toggle-switch:before{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0000004d}.toggle-switch:checked{background:#23a55a}.toggle-switch:checked:before{transform:translate(18px)}.settings-actions{flex-direction:column;gap:8px;margin-top:18px;margin-bottom:12px;display:flex}.settings-actions button{border-radius:6px;padding:10px;font-size:14px;font-weight:600}.add-friend-msg{color:var(--text-muted);margin-bottom:8px;font-size:13px}.admin-user-list{flex-direction:column;gap:6px;max-height:50vh;margin:8px 0;display:flex;overflow-y:auto}.admin-user-row{background:var(--bg-input);border-radius:6px;align-items:center;gap:10px;padding:6px 8px;display:flex}.au-meta{flex-direction:column;flex:1;min-width:0;display:flex}.au-name{color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.au-stats{color:var(--text-muted);font-size:12px}.btn-danger{color:#f5a3a5;background:#f23f4326}.btn-danger:hover{background:var(--danger);color:#fff}.btn-danger.small,.primary.small{border-radius:6px;flex-shrink:0;padding:6px 12px;font-size:13px}.ghost-btn{height:38px;color:var(--text-muted);background:var(--bg-input);border:1px solid var(--border);border-radius:10px;flex-shrink:0;padding:0 16px;font-size:14px;font-weight:600;transition:background .15s,color .15s}.ghost-btn:hover{color:var(--text-bright);background:var(--card-hover)}.mention-popup{background:var(--bg-channels);z-index:11;border-radius:8px;max-height:260px;padding:6px 0;position:absolute;bottom:64px;left:16px;right:16px;overflow-y:auto;box-shadow:0 -4px 16px #00000073}.mention-item{cursor:pointer;text-align:left;width:100%;color:var(--text);background:0 0;border:none;align-items:center;gap:10px;padding:6px 14px;font-size:14px;display:flex}.mention-item.active,.mention-item:hover{background:var(--accent-soft,#7c5cff2e);color:var(--text-bright)}.mention-item-name{font-weight:500}.mention-item-username{opacity:.5;font-size:.85em}.reconnect{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:24px;display:flex}.reconnect-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:34px;height:34px;margin-bottom:6px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.reconnect-title{color:var(--text-bright);font-size:17px;font-weight:700}.reconnect-sub{color:var(--text-muted);font-size:14px}.reconnect .link{margin-top:8px}.banned-icon{border:3px solid var(--danger);width:34px;height:34px;color:var(--danger);border-radius:50%;justify-content:center;align-items:center;margin-bottom:6px;font-size:18px;font-weight:700;display:flex}:root{--bg-app:#181818;--bg-topnav:#101010;--surface:var(--card);--surface-2:#262626;--surface-3:#333;--surface-inset:#141414;--surface-pop:#1e1e1e;--line:var(--border);--line-strong:#ffffff29;--brand:var(--accent);--brand-hover:var(--accent-hover);--brand-soft:var(--accent-soft);--brand-ring:#6b4ed657;--brand-glow:#6b4ed62e;--brand-bg-glow:#6b4ed624;--brand-bg-tint:#6b4ed617;--brand-bg-tint-soft:#6b4ed60e;--brand-bg-glow-light:#6b4ed614;--brand-bg-tint-light:#6b4ed60b;--brand-grad:linear-gradient(180deg, #7356de 0%, #6b4ed6 52%, #593cc4 100%);--brand-grad-hover:linear-gradient(180deg, #795ce4 0%, #7154dc 52%, #5f42ca 100%);--brand-control-border:#6b4ed67a;--brand-control-shadow:0 7px 18px #6b4ed638, inset 0 1px 0 #fff3, inset 0 -1px 0 #00000029;--brand-control-shadow-hover:0 9px 22px #6b4ed647, inset 0 1px 0 #ffffff3d, inset 0 -1px 0 #00000024;--brand-contrast:#fff;--idle:#f0b232;--dnd:#f0436a;--offline:#6a6e7b;--success:var(--online);--r-xs:6px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-pill:999px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--fs-xs:12px;--fs-sm:13px;--fs-base:14px;--fs-md:15px;--fs-lg:17px;--fs-xl:20px;--fs-2xl:26px;--fs-3xl:32px;--sh-sm:0 1px 2px #0000004d;--sh-md:0 6px 18px #00000059;--sh-lg:0 18px 48px #00000080;--ease:cubic-bezier(.2, .8, .3, 1);--t-fast:.12s;--t-base:.18s;--t-slow:.28s;--topnav-h:80px;--sidebar-w:280px;--rightpanel-w:340px}:root[data-theme=light]{--bg-rail:#e7e9ef;--bg-channels:#eef0f5;--bg-main:#f6f7fb;--bg-input:#fff;--card:#fff;--card-hover:#f0f1f6;--active:#e7eaf2;--bg-app:#edeff4;--bg-topnav:#fff;--surface-2:#eceef4;--surface-3:#e0e3ec;--surface-inset:#eaecf2;--surface-pop:#fff;--border:#0000001a;--line-strong:#00000029;--text:#3b3d45;--text-muted:#6b6f7a;--text-bright:#14151a;--sh-sm:0 1px 2px #00000014;--sh-md:0 6px 18px #0000001a;--sh-lg:0 18px 48px #0000002e}@keyframes tvPop{0%{opacity:0;transform:scale(.96)translateY(4px)}to{opacity:1;transform:none}}@keyframes tvFade{0%{opacity:0}to{opacity:1}}@keyframes tvZoom{0%{opacity:0;transform:scale(.93)}to{opacity:1;transform:none}}.ui-modal{animation:tvPop var(--t-base) var(--ease)}.fr-menu{transform-origin:100% 0;animation:tvPop var(--t-fast) var(--ease)}.create-menu,.notif-menu{transform-origin:100% 0;animation:tvPop var(--t-base) var(--ease)!important}.gif-picker{transform-origin:100% 100%;animation:tvPop var(--t-base) var(--ease)}.avatar-viewer-image{animation:tvZoom var(--t-slow) var(--ease)}.chat-enter{animation:tvFade var(--t-slow) var(--ease)}.subpage-fade{height:100%;min-height:0;animation:tvFade var(--t-slow) var(--ease)}.route-loading{opacity:0;animation:tvFade .2s var(--ease) .18s forwards}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.fr-menu-backdrop{z-index:40;position:fixed;inset:0}.fr-menu{z-index:41;background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-md);min-width:210px;box-shadow:var(--sh-lg);padding:6px;position:absolute;top:calc(100% + 4px);right:0}.fr-menu button{align-items:center;gap:var(--sp-2);border-radius:var(--r-sm);width:100%;color:var(--text);font-size:var(--fs-sm);white-space:nowrap;text-align:left;padding:9px 10px;font-weight:600;transition:background .14s;display:flex}.fr-menu button:hover{background:var(--surface-2);color:var(--text-bright)}.fr-menu-danger{color:var(--danger)}.fr-menu-danger:hover{background:#f0436a1f}.app-root{background:var(--bg-app);flex-direction:column;height:100dvh;display:flex}.topnav{height:var(--topnav-h);align-items:center;gap:var(--sp-4);padding:0 var(--sp-5);background:var(--bg-topnav);border-bottom:1px solid var(--line);z-index:31;flex:none;display:flex;position:relative}:root:not([data-theme=light]) .topnav{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#101010f0;box-shadow:0 10px 34px #0006}.topnav-logo{flex:none;place-items:center;width:50px;height:50px;display:grid}.topnav-logo img{object-fit:contain;filter:drop-shadow(0 4px 12px #7c5cff66);width:100%;height:100%}.topnav-nav{align-items:center;gap:var(--sp-1);display:flex}.nav-item{align-items:center;gap:var(--sp-2);border-radius:var(--r-md);color:var(--text-muted);font-size:var(--fs-md);white-space:nowrap;padding:9px 14px;font-weight:600;text-decoration:none;transition:background .16s,color .16s;display:inline-flex}.nav-item:hover{color:var(--text-bright);background:var(--surface-2)}.nav-item.active{color:var(--text-bright);background:var(--brand-soft);box-shadow:0 0 0 1px var(--brand-ring), 0 8px 24px var(--brand-glow)}.nav-item svg{flex:none}.topnav-create{position:relative}.btn-create{align-items:center;gap:var(--sp-2);border:1px solid var(--brand-control-border);background:var(--brand-grad);min-height:44px;color:var(--brand-contrast);font-size:var(--fs-md);box-shadow:var(--brand-control-shadow);border-radius:10px;padding:0 18px;font-weight:700;transition:background .16s,box-shadow .16s,transform .12s;display:inline-flex;position:relative;overflow:hidden}.btn-create:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(#ffffff21,#0000 52%);position:absolute;inset:0}.btn-create>*{z-index:1;position:relative}.btn-create:hover{background:var(--brand-grad-hover);box-shadow:var(--brand-control-shadow-hover);transform:translateY(-1px)}.btn-create:active{transform:translateY(0)scale(.98)}button:is(.btn-create,.primary,.gdm-create-actions>button,.user-menu-save,.hm-event-join,.hm-rp-join,.fr-add-btn,.fr-btn-primary,.ms-new-btn,.ms-send,.cs-comp-send,.cm-open,.cm-rp-btn.primary,.ds-new,.th-send,.cmu-invite-btn,.cmu-invite-copy,.cmu-vbtn.join,.sp-controlbar .sp-ctl.primary,.cs-share-btn:not(.on),.mc-create-btn,.mc-form-submit:not(.ghost),.mf-add-btn,.mf-btn-primary,.mf-form-submit,.m-today-join,.m-fab){border:1px solid var(--brand-control-border);background:var(--brand-grad);color:var(--brand-contrast);box-shadow:var(--brand-control-shadow);position:relative;overflow:hidden}button:is(.btn-create,.primary,.gdm-create-actions>button,.user-menu-save,.hm-event-join,.hm-rp-join,.fr-add-btn,.fr-btn-primary,.ms-new-btn,.ms-send,.cs-comp-send,.cm-open,.cm-rp-btn.primary,.ds-new,.th-send,.cmu-invite-btn,.cmu-invite-copy,.cmu-vbtn.join,.sp-controlbar .sp-ctl.primary,.cs-share-btn:not(.on),.mc-create-btn,.mc-form-submit:not(.ghost),.mf-add-btn,.mf-btn-primary,.mf-form-submit,.m-today-join,.m-fab):before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(#ffffff1f,#0000 48%);position:absolute;inset:0}button:is(.btn-create,.primary,.gdm-create-actions>button,.user-menu-save,.hm-event-join,.hm-rp-join,.fr-add-btn,.fr-btn-primary,.ms-new-btn,.ms-send,.cs-comp-send,.cm-open,.cm-rp-btn.primary,.ds-new,.th-send,.cmu-invite-btn,.cmu-invite-copy,.cmu-vbtn.join,.sp-controlbar .sp-ctl.primary,.cs-share-btn:not(.on),.mc-create-btn,.mc-form-submit:not(.ghost),.mf-add-btn,.mf-btn-primary,.mf-form-submit,.m-today-join,.m-fab):hover:not(:disabled){background:var(--brand-grad-hover);color:var(--brand-contrast);box-shadow:var(--brand-control-shadow-hover);filter:none}.create-menu{width:340px;padding:var(--sp-2);background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--sh-lg);z-index:60;animation:.14s cmIn;position:absolute;top:calc(100% + 10px);left:0}@keyframes cmIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.cm-head{padding:var(--sp-2) var(--sp-2) var(--sp-3);justify-content:space-between;align-items:flex-start;display:flex}.cm-title{font-size:var(--fs-lg);color:var(--text-bright);font-weight:700}.cm-sub{font-size:var(--fs-sm);color:var(--text-muted)}.cm-x{color:var(--text-muted);border-radius:var(--r-sm);padding:4px}.cm-x:hover{color:var(--text-bright);background:var(--surface-2)}.cm-group{padding:var(--sp-2) var(--sp-2) var(--sp-1);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--brand);font-weight:700}.cm-item{align-items:center;gap:var(--sp-3);border-radius:var(--r-md);text-align:left;width:100%;padding:10px;transition:background .14s;display:flex}.cm-item:hover{background:var(--surface-2)}.cm-ic{border-radius:var(--r-sm);background:var(--brand-soft);width:38px;height:38px;color:var(--brand);flex:none;place-items:center;display:grid}.cm-text{flex-direction:column;flex:1;min-width:0;display:flex}.cm-text b{font-size:var(--fs-base);color:var(--text-bright);font-weight:600}.cm-text i{font-style:normal;font-size:var(--fs-sm);color:var(--text-muted)}.cm-arrow{color:var(--text-muted);flex:none}.cm-foot{align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-2) var(--sp-2);margin-top:var(--sp-1);border-top:1px solid var(--line);font-size:var(--fs-sm);color:var(--text-muted);display:flex}.cm-foot>svg{flex:none}.cm-link{color:var(--brand);white-space:nowrap;margin-left:auto;font-weight:600}.cm-link:hover{text-decoration:underline}.topnav-search{align-items:center;gap:var(--sp-2);background:var(--surface-inset);border:1px solid var(--line);border-radius:var(--r-md);width:clamp(240px,24vw,360px);color:var(--text-muted);margin-left:auto;padding:8px 12px;display:flex;position:relative}.topnav-search-x{border-radius:var(--r-sm);width:22px;height:22px;color:var(--text-muted);flex:none;place-items:center;transition:color .14s,background .14s;display:grid}.topnav-search-x:hover{background:var(--surface-2);color:var(--text-bright)}.search-menu{max-height:60vh;padding:var(--sp-2);background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--sh-lg);z-index:60;animation:.14s cmIn;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto}.search-empty{padding:var(--sp-4) var(--sp-3);text-align:center;color:var(--text-muted);font-size:var(--fs-sm)}.search-group+.search-group{margin-top:var(--sp-2)}.search-group-title{padding:var(--sp-2) var(--sp-2) var(--sp-1);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--brand);font-weight:700}.search-item{align-items:center;gap:var(--sp-3);border-radius:var(--r-md);text-align:left;width:100%;color:var(--text-bright);padding:8px 10px;font-weight:600;transition:background .14s;display:flex}.search-item:hover{background:var(--surface-2)}.search-item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topnav-search input{min-width:0;color:var(--text-bright);font-size:var(--fs-base);background:0 0;border:none;outline:none;flex:1}.topnav-search input::placeholder{color:var(--text-muted)}.topnav-search kbd{color:var(--text-muted);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-xs);flex:none;padding:2px 6px;font-family:inherit;font-size:11px}.topnav-actions{align-items:center;gap:var(--sp-2);display:flex}.topnav-download{position:relative}.download-menu{z-index:70;width:300px;padding:var(--sp-2);background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--sh-lg);animation:.14s cmIn;position:absolute;top:calc(100% + 8px);right:0}.download-menu-title{color:var(--text-muted);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;padding:6px 8px 10px;font-weight:700}.download-menu-item{border-radius:var(--r-md);min-height:58px;color:var(--text);align-items:center;gap:10px;padding:8px;text-decoration:none;transition:background .14s,color .14s;display:flex}.download-menu-item:hover{background:var(--surface-2);color:var(--text-bright)}.download-menu-item+.download-menu-item{margin-top:2px}.download-menu-icon{border-radius:var(--r-md);flex:none;place-items:center;width:40px;height:40px;display:grid}.download-menu-icon.mobile{color:#42c76f;background:color-mix(in srgb, #23a55a 16%, var(--surface-2))}.download-menu-icon.desktop{color:#73a9ff;background:color-mix(in srgb, #4b8cff 16%, var(--surface-2))}.download-menu-copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.download-menu-copy b{color:var(--text-bright);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.download-menu-copy small{color:var(--text-muted);font-size:var(--fs-xs)}.download-menu-item>svg{color:var(--text-muted);flex:none}.theme-pick{position:relative}.theme-menu{z-index:60;width:208px;padding:var(--sp-3);background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--sh-lg);animation:.14s cmIn;position:absolute;top:calc(100% + 8px);right:0}.theme-menu-title{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:var(--sp-3);font-weight:700}.theme-mode-seg{margin-bottom:var(--sp-4);background:var(--surface-inset);border:1px solid var(--line);border-radius:var(--r-md);grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.theme-mode-opt{border-radius:var(--r-sm);color:var(--text-muted);font-size:var(--fs-sm);justify-content:center;align-items:center;gap:6px;padding:7px 6px;font-weight:600;transition:background .14s,color .14s;display:inline-flex}.theme-mode-opt svg{flex:none}.theme-mode-opt:hover{color:var(--text-bright)}.theme-mode-opt.active{background:var(--brand);color:#fff}.theme-swatches{gap:var(--sp-3);grid-template-columns:repeat(4,1fr);display:grid}.theme-swatch{color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;transition:transform .1s,box-shadow .14s;display:grid}.theme-swatch:hover{transform:scale(1.1)}.theme-swatch.active{box-shadow:0 0 0 2px var(--surface-pop), 0 0 0 4px var(--text-bright)}.theme-swatch svg{filter:drop-shadow(0 1px 2px #0000008c)}.theme-swatch-custom{cursor:pointer;background:conic-gradient(from 180deg,#ff5b5b,#f0b232,#e0e05b,#4fd07a,#4fb4e0,#7c5cff,#e05bd0,#ff5b5b);position:relative;overflow:hidden}.theme-swatch-custom input[type=color]{opacity:0;cursor:pointer;border:none;width:calc(100% + 8px);height:calc(100% + 8px);padding:0;position:absolute;inset:-4px}.theme-swatch-custom.active{box-shadow:0 0 0 2px var(--surface-pop), 0 0 0 4px var(--text-bright)}.icon-btn{border-radius:var(--r-md);width:40px;height:40px;color:var(--text-muted);transition:background .14s, color .14s, transform var(--t-fast) var(--ease);place-items:center;display:grid;position:relative}.icon-btn:hover{color:var(--text-bright);background:var(--surface-2)}.icon-btn.download{color:#23a55a;text-decoration:none}.icon-btn.download:hover,.icon-btn.download.active{color:#fff;background:#1e9150}.notif-badge{border-radius:var(--r-pill);background:var(--danger);color:#fff;min-width:16px;height:16px;box-shadow:0 0 0 2px var(--bg-topnav);pointer-events:none;animation:notifPop .18s var(--ease);justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:2px;right:2px}@keyframes notifPop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.user-chip{align-items:center;gap:var(--sp-2);border-radius:var(--r-pill);--dot-ring:var(--bg-topnav);padding:4px 10px 4px 4px;transition:background .14s;display:flex}.user-chip:hover{background:var(--surface-2)}.user-chip-name{font-size:var(--fs-base);color:var(--text-bright);text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-weight:600;overflow:hidden}.user-chip-arrow{color:var(--text-muted)}.ui-avatar{color:#fff;-webkit-user-select:none;user-select:none;flex:none;justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex;position:relative}.ui-avatar img{object-fit:cover;border-radius:inherit;width:100%;height:100%}.ui-av-dot{width:32%;min-width:10px;height:32%;min-height:10px;box-shadow:0 0 0 2.5px var(--dot-ring,var(--bg-app));border-radius:50%;position:absolute;bottom:-1px;right:-1px}.ui-av-dot.on{background:var(--online)}.ui-av-dot.off{background:var(--offline)}.expandable-avatar-button{cursor:zoom-in;background:0 0;border:0;border-radius:50%;flex:none;padding:0;display:inline-flex}.expandable-avatar-button:focus-visible{outline:2px solid var(--brand);outline-offset:4px}.avatar-viewer{z-index:2000;padding:max(24px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:zoom-out;background:#05050aeb;place-items:center;animation:.14s cmIn;display:grid;position:fixed;inset:0}.avatar-viewer-image{object-fit:contain;cursor:zoom-in;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;will-change:transform;border-radius:clamp(20px,6vw,48px);width:auto;max-width:min(90vw,720px);height:auto;max-height:min(86vh,720px);display:block;box-shadow:0 24px 80px #0000008c}.avatar-viewer-close{top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));z-index:1;color:#fff;background:#ffffff1f;border-radius:14px;place-items:center;width:44px;height:44px;font-size:32px;line-height:1;display:grid;position:fixed}.avatar-viewer-close:hover,.avatar-viewer-close:focus-visible{background:#fff3}.chat-image-viewer-image{border-radius:var(--r-md);cursor:default;touch-action:pinch-zoom;max-width:min(100vw - 40px,1200px);max-height:calc(100dvh - 96px)}.profile-avatar-button,.profile-name-button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0}.profile-avatar-button{border-radius:50%;flex:none;display:inline-flex}.profile-avatar-button:hover .ui-avatar,.profile-name-button:hover{filter:brightness(1.12)}.profile-avatar-button:focus-visible,.profile-name-button:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.profile-name-button{text-align:inherit;display:inline}.user-profile-modal{width:min(420px,100vw - 24px)}.ui-modal-overlay.user-profile-overlay{z-index:190}.user-profile-card{text-align:center;flex-direction:column;align-items:center;padding:8px 4px 4px;display:flex}.user-profile-name{color:var(--text-bright);-webkit-user-select:text;user-select:text;cursor:text;margin-top:14px;font-size:22px;font-weight:800}.user-profile-username{color:var(--text-muted);align-items:center;gap:4px;margin-top:4px;font-size:13px;display:inline-flex}.user-profile-username code{font-family:inherit;font-size:inherit;-webkit-user-select:all;user-select:all;cursor:text}.user-profile-username button{border:1px solid var(--line);border-radius:var(--r-pill);height:26px;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;flex:none;align-items:center;gap:5px;padding:0 8px;transition:color .16s,border-color .16s,background .16s;display:inline-flex}.user-profile-username button:hover{color:var(--text-bright);border-color:var(--line-strong,var(--line));background:var(--surface-inset,#ffffff0f)}.user-profile-username.revealed button{border-color:#0000;justify-content:center;width:24px;height:24px;padding:0}.user-profile-status{color:var(--text-muted);margin-top:8px;font-size:14px}.user-profile-status.online{color:var(--online)}.user-profile-actions{flex-wrap:wrap;justify-content:center;gap:10px;width:100%;margin-top:20px;display:flex}.user-profile-action{border:1px solid var(--border);background:var(--bg-3);min-height:40px;color:var(--text-bright);font:inherit;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:9px 15px;font-weight:700;display:inline-flex}.user-profile-action.primary{background:var(--brand);color:#fff;border-color:#0000}.user-profile-action:disabled{opacity:.55;cursor:wait}.user-profile-feedback{margin-top:12px;font-size:13px}.user-profile-feedback.ok{color:var(--online)}.user-profile-feedback.error{color:var(--red)}@media (width<=720px){.user-profile-actions{flex-direction:column}.user-profile-action{width:100%}}.app-main{flex:1;min-height:0;overflow:hidden}.guest-banner{background:var(--brand-soft);border-bottom:1px solid var(--line);color:var(--text);align-items:center;gap:10px;padding:7px 14px;font-size:13px;display:flex}.guest-banner-text{flex:1;min-width:0}.guest-banner-btn{border-radius:var(--r-pill);background:var(--brand);color:#fff;cursor:pointer;flex-shrink:0;padding:4px 12px;font-size:12px;font-weight:700}.guest-banner-x{color:var(--text-muted);cursor:pointer;flex-shrink:0;align-items:center;padding:4px;display:flex}.guest-banner-x:hover{color:var(--text)}.app-root.mobile .guest-banner{padding-top:calc(7px + env(safe-area-inset-top))}.page-fade{height:100%;animation:pageFade .22s var(--ease)}@keyframes pageFade{0%{opacity:0}to{opacity:1}}.page-3col{grid-template-columns:var(--sidebar-w) minmax(0, 1fr) var(--rightpanel-w);height:100%;display:grid;position:relative}.page-3col.no-left{grid-template-columns:minmax(0, 1fr) var(--rightpanel-w)}.page-3col.no-right{grid-template-columns:var(--sidebar-w) minmax(0, 1fr)}.page-3col.no-left.no-right{grid-template-columns:minmax(0,1fr)}.page-sidebar{border-right:1px solid var(--line);padding:var(--sp-5);overflow-y:auto}.page-right{border-left:1px solid var(--line);padding:var(--sp-5);overflow-y:auto}.page-center{padding:var(--sp-6) var(--sp-8);overflow-y:auto}@media (width<=1080px){.page-3col{grid-template-columns:var(--sidebar-w) minmax(0, 1fr)}.page-3col.no-left{grid-template-columns:minmax(0,1fr)}.page-right{display:none}.page-center{padding:var(--sp-5)}}.page-right-toggle,.page-right-backdrop{display:none}@media (width>=769px) and (width<=1080px){.page-right-toggle{top:var(--sp-8);right:calc(var(--sp-8) - 1px);z-index:50;border-radius:var(--r-sm);background:var(--surface-2);width:38px;height:38px;color:var(--text-bright);box-shadow:var(--sh-md);place-items:center;transition:background .14s,transform 80ms;display:grid;position:absolute}.page-right-toggle:hover{background:var(--surface-3)}.page-right-toggle:active{transform:scale(.94)}.page-right.open{width:min(var(--rightpanel-w), 86vw);z-index:45;background:var(--bg-app);border-left:1px solid var(--line-strong);animation:.18s rightDrawerIn;display:block;position:absolute;top:0;bottom:0;right:0;box-shadow:-10px 0 30px #00000073}.page-right-backdrop{z-index:44;background:#00000080;animation:.18s backdropIn;display:block;position:absolute;inset:0}}@keyframes rightDrawerIn{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes backdropIn{0%{opacity:0}to{opacity:1}}.page-stub{text-align:center;max-width:560px;margin:12vh auto 0}.page-stub-badge{margin-bottom:var(--sp-3);font-size:44px}.page-stub h1{font-size:var(--fs-3xl);color:var(--text-bright);margin-bottom:var(--sp-2);font-weight:800}.page-stub p{color:var(--text-muted);font-size:var(--fs-md)}.page-stub a{color:var(--brand);font-weight:600;text-decoration:none}.page-stub a:hover{text-decoration:underline}.ui-modal-overlay{z-index:100;padding:var(--sp-4);background:#0000008c;place-items:center;animation:.14s cmIn;display:grid;position:fixed;inset:0}.ui-modal{box-sizing:border-box;width:420px;max-width:calc(100vw - 32px);max-height:86vh;padding:var(--sp-6);background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--sh-lg);position:relative;overflow-y:auto}.ui-modal-x{top:var(--sp-3);right:var(--sp-3);border-radius:var(--r-sm);color:var(--text-muted);padding:6px;position:absolute}.ui-modal-x:hover{color:var(--text-bright);background:var(--surface-2)}.ui-modal-title{margin-bottom:var(--sp-4);font-size:var(--fs-xl);color:var(--text-bright);font-weight:700}.android-update-overlay{z-index:1000}.android-update-modal{width:min(420px,100vw - 24px)}.android-update-version{margin-bottom:var(--sp-4);color:var(--text-muted);font-size:var(--fs-sm);flex-wrap:wrap;gap:8px 16px;display:flex}.android-update-notes{margin:0 0 var(--sp-4);color:var(--text);gap:8px;padding-left:20px;line-height:1.45;display:grid}.android-update-hint{color:var(--text-muted);font-size:var(--fs-sm);margin:0;line-height:1.45}.android-update-progress{margin:0 0 var(--sp-4);gap:8px;display:grid}.android-update-progress-label{color:var(--text);font-size:var(--fs-sm);justify-content:space-between;gap:12px;display:flex}.android-update-progress-track{border-radius:var(--r-pill);background:var(--surface-inset);height:8px;overflow:hidden}.android-update-progress-track span{border-radius:inherit;background:var(--brand);height:100%;transition:width .18s;display:block}.android-update-error{color:var(--danger);font-size:var(--fs-sm);margin-top:10px}.android-update-actions{justify-content:flex-end;gap:var(--sp-3);margin-top:var(--sp-5);display:flex}.android-update-actions button{min-width:112px}.android-update-later{border:1px solid var(--line-strong);color:var(--text);background:var(--surface-2);border-radius:10px;padding:10px 14px}.android-update-later:hover{background:var(--surface-3)}.settings-update-card{justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);display:flex}.settings-update-card>div{gap:5px;display:grid}.settings-update-card strong{color:var(--text-bright)}.settings-update-card span,.settings-update-message{color:var(--text-muted);font-size:var(--fs-sm);line-height:1.4}.settings-about{gap:var(--sp-2);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);display:grid}.settings-about-row{justify-content:space-between;align-items:baseline;gap:var(--sp-3);color:var(--text-muted);font-size:var(--fs-sm);display:flex}.settings-about-row b{color:var(--text-bright);font-variant-numeric:tabular-nums;text-align:right;word-break:break-word}.settings-about button{margin-top:var(--sp-2);justify-self:start}.settings-update-progress{margin-top:var(--sp-3);color:var(--text-muted);font-size:var(--fs-sm);justify-content:space-between;display:flex}.settings-linkish{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.settings-linkish:hover{text-decoration:underline}.settings-changelog{gap:var(--sp-2);display:grid}.settings-release{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);overflow:hidden}.settings-release-head{align-items:center;gap:var(--sp-2);width:100%;padding:10px var(--sp-3);color:var(--text-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-wrap:wrap;display:flex}.settings-release-head:hover{background:var(--surface-3)}.settings-release-head b{color:var(--text-bright);font-variant-numeric:tabular-nums}.settings-release-chevron{color:var(--text-muted);transition:transform var(--t-fast) var(--ease);flex:none}.settings-release.open .settings-release-chevron{transform:rotate(90deg)}.settings-release-badge{background:color-mix(in srgb, var(--accent) 20%, transparent);color:var(--accent);font-size:var(--fs-xs);white-space:nowrap;border-radius:999px;padding:1px 8px}.settings-release-date{font-size:var(--fs-sm);white-space:nowrap;margin-left:auto}.settings-release-notes{padding:0 var(--sp-4) var(--sp-3) 34px;color:var(--text);font-size:var(--fs-sm);margin:0;line-height:1.5}.settings-release-notes li+li{margin-top:6px}@media (prefers-reduced-motion:reduce){.settings-release-chevron{transition:none}}@media (width<=640px){.settings-update-card{flex-direction:column;align-items:stretch}}.cf-search{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-3);border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface-inset);color:var(--text-muted);padding:10px 12px;display:flex}.cf-search input{min-width:0;color:var(--text-bright);font-size:var(--fs-md);background:0 0;border:none;outline:none;flex:1}.cf-list-label{padding:var(--sp-1) 2px var(--sp-2);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-weight:700}.cf-list{flex-direction:column;gap:2px;max-height:46vh;display:flex;overflow-y:auto}.cf-person{align-items:center;gap:var(--sp-3);border-radius:var(--r-sm);text-align:left;color:var(--text-bright);padding:8px 10px;transition:background .14s;display:flex}.cf-person:hover{background:var(--surface-2)}.cf-person-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.cf-status{box-sizing:border-box;border:2px solid var(--text-faint,#4b4b57);border-radius:50%;flex:none;width:10px;height:10px}.cf-status.on{border-color:var(--success,#3ba55d);background:var(--success,#3ba55d)}.cf-empty{padding:var(--sp-5);text-align:center;color:var(--text-muted)}.cf-hint{color:var(--text-muted);font-size:var(--fs-sm);line-height:1.4}.gdm-create{gap:var(--sp-3);flex-direction:column;display:flex}.gdm-create-label{color:var(--text-muted);font-size:var(--fs-sm);flex-direction:column;gap:6px;font-weight:600;display:flex}.gdm-create-label input,.gdm-create-search{border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface-inset);min-height:42px;color:var(--text-bright);padding:9px 11px}.gdm-create-search{align-items:center;gap:8px;display:flex}.gdm-create-search input{min-width:0;color:inherit;background:0 0;border:none;outline:none;flex:1}.gdm-create-search span{color:var(--text-muted);font-size:var(--fs-xs)}.gdm-create-list{flex-direction:column;gap:2px;max-height:42vh;display:flex;overflow-y:auto}.gdm-create-friend{border-radius:var(--r-sm);color:var(--text-bright);cursor:pointer;align-items:center;gap:10px;padding:8px 10px;display:flex}.gdm-create-friend:hover{background:var(--surface-2)}.gdm-create-friend input{accent-color:var(--brand)}.gdm-create-friend>label{cursor:pointer;flex:1;min-width:0}.gdm-create-error{color:var(--danger);font-size:var(--fs-sm)}.gdm-create-actions{justify-content:space-between;align-items:center;gap:var(--sp-3);display:flex}.gdm-create-actions span{color:var(--text-muted);font-size:var(--fs-xs)}.gdm-create-actions button{border-radius:var(--r-sm);background:var(--brand);color:#fff;min-height:38px;padding:0 16px;font-weight:700}.gdm-create-actions button:disabled{opacity:.45;cursor:not-allowed}.voice-float{left:var(--sp-2);bottom:var(--sp-5);z-index:80;align-items:center;gap:var(--sp-3);background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--sh-lg);padding:10px 12px;animation:.16s cmIn;display:flex;position:fixed}.voice-float-info{flex-direction:column;min-width:0;display:flex}.voice-float-status{font-size:var(--fs-sm);color:var(--online);align-items:center;gap:6px;font-weight:700;display:flex}.voice-float-status.err{color:var(--danger)}.voice-float-signal{background:var(--online);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite voicePulse}.voice-float-status.err .voice-float-signal{background:var(--danger);animation:none}@keyframes voicePulse{0%,to{opacity:1}50%{opacity:.35}}.voice-float-label{max-width:170px;font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.voice-float-actions{gap:6px;display:flex}.voice-float-btn{border-radius:var(--r-sm);background:var(--surface-2);width:38px;height:38px;color:var(--text);place-items:center;transition:background .14s,color .14s;display:grid}.voice-float-btn:hover{background:var(--surface-3);color:var(--text-bright)}.voice-float-btn.off{color:var(--danger);background:#f0436a29}.voice-float-btn.leave{background:var(--danger);color:#fff}.voice-float-btn.leave:hover{background:#d83a5e}.voice-float.call .voice-float-status.call-title{color:var(--text-bright)}.voice-note{left:var(--sp-5);bottom:var(--sp-5);z-index:80;background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--sh-lg);color:var(--text);font-size:var(--fs-sm);padding:11px 16px;animation:.16s cmIn;position:fixed}.incall-overlay{z-index:120;background:#0009;place-items:center;animation:.14s cmIn;display:grid;position:fixed;inset:0}.incall{width:320px;padding:var(--sp-6);text-align:center;background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--sh-lg)}.incall-avatar-wrap{animation:1.4s ease-in-out infinite incallBreath;display:inline-flex;position:relative}.incall-avatar-wrap:before,.incall-avatar-wrap:after{content:"";border:2px solid var(--brand);pointer-events:none;border-radius:50%;animation:1.4s ease-out infinite incallRing;position:absolute;inset:0}.incall-avatar-wrap:after{animation-delay:.7s}.incall-avatar{box-shadow:0 0 24px var(--brand-glow)}@keyframes incallBreath{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes incallRing{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.8)}}.incall-title{margin-top:var(--sp-4);font-size:var(--fs-sm);color:var(--text-muted)}.incall-name{font-size:var(--fs-xl);color:var(--text-bright);font-weight:800}.incall-actions{gap:var(--sp-3);margin-top:var(--sp-5);display:flex}.incall-actions button{border-radius:var(--r-md);color:#fff;flex:1;justify-content:center;align-items:center;gap:6px;padding:11px;font-weight:700;transition:filter .14s;display:inline-flex}.incall-actions button:hover{filter:brightness(1.08)}.incall-decline{background:var(--danger)}.incall-accept{background:var(--success)}.topnav-user{position:relative}.user-menu{width:290px;padding:var(--sp-3);background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--sh-lg);z-index:60;--dot-ring:var(--surface-pop);animation:.14s cmIn;position:absolute;top:calc(100% + 8px);right:0}.user-menu-head{align-items:center;gap:var(--sp-2);padding-bottom:var(--sp-3);margin-bottom:var(--sp-2);border-bottom:1px solid var(--line);display:flex}.user-menu-meta{min-width:0}.user-menu-name{color:var(--text-bright);font-weight:700}.user-menu-cur{font-size:var(--fs-sm);color:var(--online);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.user-menu-login{align-items:center;gap:var(--sp-2);margin:var(--sp-2) 0 var(--sp-3);border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);padding:6px 6px 6px 10px;display:flex}.user-menu-login code{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:inherit;font-size:var(--fs-sm);color:var(--text-bright);-webkit-user-select:all;user-select:all;cursor:text;flex:1;overflow:hidden}.user-menu-login button{border-radius:var(--r-sm);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.user-menu-login button:hover,.user-menu-login button:focus-visible{background:var(--surface-2,var(--bg));color:var(--brand)}.user-menu-login:not(.revealed) button{width:auto;min-width:0;font:inherit;font-size:var(--fs-sm);flex:1;justify-content:center;align-items:center;gap:6px;padding:0 8px;display:flex}.settings-login{align-items:center;gap:var(--sp-2);display:flex}.settings-login-value{text-overflow:ellipsis;white-space:nowrap;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);min-width:0;font-family:inherit;font-size:var(--fs-md);color:var(--text-bright);-webkit-user-select:all;user-select:all;cursor:text;flex:1;padding:8px 12px;overflow:hidden}.settings-login-hidden{border-radius:var(--r-md);background:var(--surface);border:1px dashed var(--line);min-width:0;font-size:var(--fs-md);color:var(--text-muted);flex:1;padding:8px 12px}.user-menu-label{font-size:var(--fs-xs);text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;font-weight:700}.user-menu-input{background:var(--surface-inset);border:1px solid var(--line-strong);border-radius:var(--r-sm);width:100%;color:var(--text-bright);font-size:var(--fs-base);outline:none;padding:9px 12px}.user-menu-input:focus{border-color:var(--brand)}.user-menu-presets{margin:var(--sp-2) 0;flex-wrap:wrap;gap:6px;display:flex}.user-menu-presets button{border-radius:var(--r-pill);background:var(--surface-2);color:var(--text);font-size:var(--fs-sm);padding:5px 10px;transition:background .14s}.user-menu-presets button:hover{background:var(--surface-3);color:var(--text-bright)}.user-menu-row{margin-bottom:var(--sp-2);gap:6px;display:flex}.user-menu-save,.user-menu-clear{border-radius:var(--r-sm);font-size:var(--fs-sm);flex:1;padding:8px;font-weight:600;transition:background .14s}.user-menu-save{background:var(--brand);color:#fff}.user-menu-save:hover{background:var(--brand-hover)}.user-menu-clear{background:var(--surface-2);color:var(--text)}.user-menu-clear:hover{background:var(--surface-3)}.user-menu-logout{width:100%;margin-top:var(--sp-1);border-top:1px solid var(--line);color:var(--danger);font-size:var(--fs-sm);justify-content:center;align-items:center;gap:6px;padding:9px;font-weight:600;display:flex}.user-menu-logout:hover{background:#f0436a1a}.user-menu-settings{width:100%;margin-top:var(--sp-1);border-top:1px solid var(--line);color:var(--text);font-size:var(--fs-sm);align-items:center;gap:6px;padding:9px;font-weight:600;display:flex}.user-menu-settings:hover{background:var(--surface-2);color:var(--text-bright)}.ui-modal.settings-modal{flex-direction:column;height:min(620px,86vh);display:flex;overflow-y:hidden}.ui-modal-overlay.settings-overlay{z-index:220}.ui-modal-overlay.avatar-crop-overlay{z-index:230}.settings-layout{gap:var(--sp-5);flex:1;min-height:0;display:flex}.settings-nav{flex-direction:column;flex-shrink:0;gap:2px;width:190px;display:flex}.settings-nav-btn{border-radius:var(--r-md);color:var(--text-muted);font-size:var(--fs-base);text-align:left;align-items:center;padding:10px 14px;font-weight:600;transition:background .14s,color .14s;display:flex;position:relative}.settings-nav-btn:hover,.settings-nav-btn.active{background:var(--surface-2);color:var(--text-bright)}.settings-nav-btn.active:before{content:"";background:var(--brand);border-radius:0 3px 3px 0;width:3px;height:18px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.settings-content{min-width:0;padding-right:var(--sp-1);flex:1;overflow-y:auto}.settings-head{margin-bottom:var(--sp-4);padding-bottom:var(--sp-3);border-bottom:1px solid var(--line)}.settings-head h3{font-size:var(--fs-xl);color:var(--text-bright);margin:0;font-weight:700}.settings-head p{font-size:var(--fs-sm);color:var(--text-muted);margin:3px 0 0}.settings-panel>.settings-label:first-child{margin-top:0}.settings-action-btn{justify-content:center;align-items:center;gap:8px;display:flex}.settings-action-btn svg{flex-shrink:0}@media (width<=640px){.settings-layout{gap:var(--sp-3);flex-direction:column}.settings-nav{flex-direction:row;flex-shrink:0;width:auto;padding-bottom:2px;overflow-x:auto}.settings-nav-btn{white-space:nowrap;padding:8px 12px}.settings-nav-btn.active:before{display:none}.settings-nav-btn.active{box-shadow:inset 0 -2px 0 var(--brand)}}.settings-panel{flex-direction:column;display:flex}.settings-av-wrap{align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-2);display:flex}.settings-av-actions{gap:var(--sp-2);display:flex}.avatar-crop-body{align-items:center;gap:var(--sp-3);flex-direction:column;display:flex}.avatar-crop-modal.banner{max-width:calc(100vw - 24px)}.avatar-crop-fit{border:1px solid var(--line);background:var(--surface-inset);border-radius:13px;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;padding:5px;display:grid}.avatar-crop-fit button{min-height:48px;color:var(--text-muted);font-size:var(--fs-sm);text-align:left;border:1px solid #0000;border-radius:9px;gap:2px;padding:7px 12px;font-weight:750;transition:color .15s,background .15s,border-color .15s;display:grid}.avatar-crop-fit button small{opacity:.75;font-size:11px;font-weight:550}.avatar-crop-fit button:hover{color:var(--text-bright);background:#ffffff0a}.avatar-crop-fit button.active{color:var(--brand);background:var(--brand-soft);border-color:var(--brand-ring,#7c5cff66)}.avatar-crop-stage{justify-items:center;gap:8px;width:100%;display:grid}.avatar-crop-result-label{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;justify-self:start;font-size:11px;font-weight:750}.avatar-crop-preview{background:var(--surface-inset);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:220px;height:220px;box-shadow:0 0 0 1px var(--line-strong), 0 10px 30px #00000047;border-radius:50%;flex:none;position:relative;overflow:hidden}.avatar-crop-preview.banner{aspect-ratio:3;background:#0c0d14;border-radius:14px;width:100%;height:auto}.avatar-crop-preview:active{cursor:grabbing}.avatar-crop-preview:focus-visible{outline:3px solid var(--brand-ring,#7c5cff73);outline-offset:3px}.avatar-crop-preview img{z-index:1;pointer-events:none;-webkit-user-select:none;user-select:none;max-width:none;position:absolute}.avatar-crop-backdrop{filter:blur(22px);opacity:.5;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:-22px;transform:scale(1.08)}.avatar-crop-ring{z-index:2;pointer-events:none;border:2px solid #ffffffb8;border-radius:50%;position:absolute;inset:0}.avatar-crop-preview.banner .avatar-crop-ring{border-radius:14px}.avatar-crop-grid{z-index:2;pointer-events:none;opacity:.65;background:linear-gradient(90deg,#0000 33.1%,#fff3 33.33%,#0000 33.55% 66.45%,#fff3 66.67%,#0000 66.9%),linear-gradient(#0000 33.1%,#fff3 33.33%,#0000 33.55% 66.45%,#fff3 66.67%,#0000 66.9%);position:absolute;inset:0}.avatar-crop-hint{color:var(--text-muted);font-size:var(--fs-sm);text-align:center;margin:0}.avatar-crop-control{align-items:center;gap:var(--sp-3);width:100%;color:var(--text);font-size:var(--fs-sm);grid-template-columns:76px 1fr 48px;font-weight:600;display:grid}.avatar-crop-control input[type=range]{width:100%;accent-color:var(--brand)}.avatar-crop-control input[type=range]:disabled{cursor:not-allowed;opacity:.45}.avatar-crop-control output{color:var(--text-muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;text-align:right}.avatar-crop-error{width:100%;color:var(--danger);font-size:var(--fs-xs);background:#ef444414;border:1px solid #ef444447;border-radius:9px;padding:9px 11px}.avatar-crop-actions{gap:var(--sp-2);width:100%;margin-top:var(--sp-1);grid-template-columns:1fr 1fr;display:grid}.avatar-crop-actions button{min-height:40px}@media (width<=600px){.avatar-crop-modal.banner{padding-inline:16px;width:calc(100vw - 16px)!important}.avatar-crop-preview.banner{border-radius:11px}.avatar-crop-fit button{min-height:54px;font-size:var(--fs-xs);padding-inline:8px}.avatar-crop-fit button small{font-size:10px;line-height:1.2}.avatar-crop-hint{max-width:320px;font-size:var(--fs-xs)}}.settings-panel .set-input{background:var(--surface-inset);border:1px solid var(--line-strong);border-radius:var(--r-sm);min-width:0;color:var(--text-bright);font-size:var(--fs-base);outline:none;flex:1;padding:9px 12px}.settings-panel .set-input:focus{border-color:var(--brand)}.set-pw-form{gap:var(--sp-2);margin-top:var(--sp-3);flex-direction:column;display:flex}.settings-danger-zone{margin-top:var(--sp-4);padding-top:var(--sp-3);border-top:1px solid var(--line)}.settings-danger-zone>.btn-danger{color:#f5a3a5;background:0 0;border:1px solid #f0436a73;border-radius:6px;padding:10px;font-size:14px;font-weight:600}.settings-danger-zone>.btn-danger:hover{background:var(--danger);border-color:var(--danger);color:#fff}.topnav-notif{position:relative}.notif-menu{width:340px;max-height:70vh;padding:var(--sp-2);background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--sh-lg);z-index:60;animation:.14s cmIn;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto}.notif-menu-head{padding:var(--sp-2) var(--sp-2) var(--sp-3);font-size:var(--fs-lg);color:var(--text-bright);justify-content:space-between;align-items:center;font-weight:700;display:flex}.notif-menu-count{border-radius:var(--r-pill);background:var(--brand);color:#fff;min-width:20px;height:20px;font-size:var(--fs-xs);justify-content:center;align-items:center;padding:0 6px;font-weight:700;display:inline-flex}.nt-empty{padding:var(--sp-5) var(--sp-3);text-align:center;color:var(--text-muted);font-size:var(--fs-sm)}.nt-group+.nt-group{margin-top:var(--sp-2)}.nt-group-title{padding:var(--sp-2) var(--sp-2) var(--sp-1);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--brand);align-items:center;gap:6px;font-weight:700;display:flex}.nt-item{align-items:center;gap:var(--sp-3);border-radius:var(--r-md);text-align:left;width:100%;padding:10px;display:flex}.nt-item-btn{transition:background .14s}.nt-item-btn:hover,.nt-item-btn:active{background:var(--surface-2)}.nt-item-body{flex:1;min-width:0}.nt-item-name{font-size:var(--fs-base);color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.nt-item-sub{font-size:var(--fs-sm);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.nt-announce{align-items:flex-start}.nt-announce-text{font-size:var(--fs-sm);color:var(--text-muted);white-space:pre-wrap;-webkit-line-clamp:4;-webkit-box-orient:vertical;margin-top:2px;display:-webkit-box;overflow:hidden}.nt-announce-meta{font-size:var(--fs-xs);color:var(--text-muted);opacity:.7;margin-top:4px}.nt-announce-modal-body{font-size:var(--fs-base);color:var(--text);white-space:pre-wrap;word-break:break-word;line-height:1.5}.nt-announce-modal-meta{margin-top:var(--sp-4);padding-top:var(--sp-3);border-top:1px solid var(--line);font-size:var(--fs-sm);color:var(--text-muted)}.nt-item-actions{flex:none;gap:6px;display:flex}.nt-act{border-radius:var(--r-sm);place-items:center;width:34px;height:34px;transition:filter .14s,background .14s;display:grid}.nt-act.accept{background:var(--success);color:#fff}.nt-act.accept:hover{filter:brightness(1.1)}.nt-act.decline{background:var(--surface-2);color:var(--text)}.nt-act.decline:hover{background:var(--surface-3);color:var(--text-bright)}.nt-badge{border-radius:var(--r-pill);background:var(--brand);color:#fff;min-width:20px;height:20px;font-size:var(--fs-xs);flex:none;justify-content:center;align-items:center;padding:0 6px;font-weight:700;display:inline-flex}@media (width<=1180px){.topnav{gap:var(--sp-3);padding:0 var(--sp-4)}.topnav-search{flex:auto;width:auto;min-width:0;max-width:none;margin-left:0}.topnav-search kbd,.user-chip-name,.user-chip-arrow{display:none}}@media (width<=1080px){.topnav-nav .nav-item span,.btn-create span{display:none}.btn-create{padding:9px 12px}.nav-item{padding:8px 10px}}.msg-link{color:#7ca8ff;word-break:break-all;text-decoration:none}.msg-link:hover{text-decoration:underline}.mention{color:#c4b5fd;cursor:pointer;background:#7c5cff40;border-radius:3px;padding:0 3px;font-weight:500}.mention:hover{color:#fff;background:#7c5cff73}.mention.channel-mention{color:#58d68d;background:#2ecc7126}.mention.channel-mention:hover{color:#fff;background:#2ecc714d;text-decoration:underline}.mention.role-mention{color:#f4d03f;cursor:default;background:#f1c40f26}.mention.role-mention:hover{color:#fff;background:#f1c40f4d}.lp-card{background:var(--surface-2);border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:var(--r-sm);margin-top:var(--sp-2);text-align:left;flex-direction:column;width:100%;max-width:480px;display:flex;overflow:hidden}.lp-image{object-fit:cover;border-bottom:1px solid var(--line);width:100%;max-height:220px}.lp-content{padding:var(--sp-3);gap:var(--sp-1);flex-direction:column;display:flex}.lp-site{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;font-weight:600}.lp-title{font-size:var(--fs-base);color:var(--text-bright);font-weight:700;text-decoration:none}.lp-title:hover{text-decoration:underline}.lp-desc{font-size:var(--fs-sm);color:var(--text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.emoji-img{vertical-align:-.3em;object-fit:contain;width:1.3em;height:1.3em;margin:0 .5px;display:inline-block}.emoji-img.big{vertical-align:middle;width:42px;height:42px;margin:2px 1px}.gif-picker-emoji-btn .emoji-img{vertical-align:middle;width:24px;height:24px}.msg-gif-wrap{width:fit-content;max-width:min(320px,100%);margin-top:4px;display:block;overflow:visible}.msg-gif{object-fit:contain;border-radius:var(--r-md);background:var(--surface-2);cursor:zoom-in;image-rendering:auto;backface-visibility:hidden;width:auto;max-width:100%;height:auto;max-height:260px;display:block;transform:translateZ(0)}.msg-gif.msg-sticker{background:0 0;max-width:min(160px,100%);max-height:160px}.gif-picker{bottom:calc(100% - 6px);right:var(--sp-5);z-index:20;background:var(--surface-pop);border:1px solid var(--line-strong);border-radius:var(--r-md);width:340px;max-width:calc(100vw - 24px);box-shadow:var(--sh-lg);flex-direction:column;display:flex;position:absolute;overflow:hidden}.gif-picker-tabs{padding:var(--sp-2) var(--sp-2) 0;gap:2px;display:flex}.gif-picker-tab{border-radius:var(--r-sm);font-size:var(--fs-sm);color:var(--text-muted);flex:1;padding:7px 0;font-weight:600;transition:background .14s,color .14s}.gif-picker-tab:hover:not(:disabled),.gif-picker-tab.active{background:var(--surface-2);color:var(--text-bright)}.gif-picker-tab:disabled{opacity:.4;cursor:default}.gif-picker-emoji-cat{padding:var(--sp-2) 4px 4px;font-size:var(--fs-xs);text-transform:uppercase;color:var(--text-muted);font-weight:700}.gif-picker-emojis{flex-wrap:wrap;gap:2px;display:flex}.gif-picker-emoji-btn{border-radius:var(--r-sm);place-items:center;width:34px;height:34px;font-size:20px;transition:background .14s;display:grid}.gif-picker-emoji-btn:hover{background:var(--surface-2)}.gif-picker-search{margin:var(--sp-2);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--text-bright);font-size:var(--fs-sm);padding:8px 10px}.gif-picker-search:focus{border-color:var(--brand);outline:none}.gif-picker-body{height:320px;padding:0 var(--sp-2) var(--sp-2);overflow-y:auto}.gif-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.gif-picker-item{border-radius:var(--r-sm);width:100%;display:block;position:relative;overflow:hidden}.gif-picker-item-pick{aspect-ratio:8/5;background:var(--surface-2);width:100%;padding:0;display:block;overflow:hidden}.gif-picker-item img{object-fit:cover;background:var(--surface-2);width:100%;height:100%;display:block}.gif-picker-item img.load-error{object-fit:contain}.gif-picker-item:hover{outline:2px solid var(--brand)}.gif-picker-fav{border-radius:var(--r-sm);color:#fff;opacity:0;background:#0000008c;place-items:center;width:24px;height:24px;transition:opacity .12s;display:grid;position:absolute;top:4px;right:4px}.gif-picker-item:hover .gif-picker-fav,.gif-picker-fav.active{opacity:1}@media (hover:none){.gif-picker-fav{opacity:.85}}.gif-picker-fav.active{color:#ffd54a}.gif-picker-fav.active svg path{fill:currentColor}.gif-picker-state{padding:var(--sp-3);text-align:center;color:var(--text-muted);font-size:var(--fs-sm)}.gif-picker-state.error{color:var(--danger)}.msg-code-inline{background:var(--surface-2);color:var(--danger);border-radius:var(--r-xs);border:1px solid var(--line);padding:2px 6px;font-family:Consolas,Courier New,Courier,monospace;font-size:.9em}.msg-code-block{white-space:pre-wrap;overflow-wrap:break-word;background:var(--surface-inset);border:1px solid var(--line);border-radius:var(--r-sm);padding:var(--sp-3);margin:var(--sp-2) 0;font-family:Consolas,Courier New,Courier,monospace;font-size:var(--fs-sm);color:var(--text-bright);text-align:left;line-height:1.5;display:block;overflow-x:auto}.set-recovery-code{flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 4px;display:flex}.set-recovery-code code{background:var(--bg-3,#ffffff0f);border:1px solid var(--border,#ffffff1f);letter-spacing:.06em;-webkit-user-select:all;user-select:all;word-break:break-all;border-radius:10px;flex:260px;padding:10px 12px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:15px}
