:root{--bg: #e7e9ef;--stage-bg: #e7e9ef;--surface: #ffffff;--surface-2: #f6f7f9;--surface-3: #eef0f4;--line: #e8eaef;--line-strong: #dde1e8;--text: #101828;--text-2: #475467;--text-3: #8a94a6;--text-4: #aeb6c4;--accent: #4c6ef5;--accent-600: #3d5ce0;--accent-soft: #edf1ff;--accent-soft-2: #dde5ff;--green: #12b76a;--green-soft: #e8f9f1;--red: #f04438;--red-soft: #fef3f2;--amber: #f79009;--amber-soft: #fff7e8;--purple: #8b5cf6;--pink: #f670a8;--r-xs: 6px;--r-sm: 8px;--r-md: 11px;--r-lg: 14px;--r-xl: 18px;--r-2xl: 22px;--r-full: 999px;--sh-1: 0 1px 2px rgba(16, 24, 40, .05), 0 1px 3px rgba(16, 24, 40, .06);--sh-2: 0 8px 24px -8px rgba(16, 24, 40, .16), 0 2px 6px rgba(16, 24, 40, .05);--sh-3: 0 32px 80px -24px rgba(16, 24, 40, .32), 0 8px 24px -12px rgba(16, 24, 40, .14);--sh-app: 0 40px 90px -40px rgba(16, 24, 40, .5), 0 4px 14px -6px rgba(16, 24, 40, .12);--sh-accent: 0 6px 16px -6px rgba(76, 110, 245, .65);--font: "Inter", "Segoe UI Variable Text", "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", Consolas, "Cascadia Mono", monospace;--sw: 1360px;--sh: 880px;--aw: 1280px;--ah: 800px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);font-size:13.5px;line-height:1.5;color:var(--text);background:var(--stage-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;display:flex;align-items:center;justify-content:center;min-height:100vh}h1,h2,h3,h4,p,ul,ol,figure{margin:0}ul,ol{padding:0;list-style:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}input,textarea,select{font:inherit;color:inherit}a{color:var(--accent);text-decoration:none}svg{flex:none}::selection{background:var(--accent-soft-2)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d6dae2;border:3px solid transparent;background-clip:padding-box;border-radius:var(--r-full)}::-webkit-scrollbar-thumb:hover{background:#c2c8d4;border:3px solid transparent;background-clip:padding-box}.stage-desktop{--sw: 1360px;--sh: 880px;--aw: 1280px;--ah: 800px}.stage-mobile{--sw: 470px;--sh: 924px;--aw: 390px;--ah: 844px}.stage{width:var(--sw);height:var(--sh);display:grid;place-items:center;flex:none}.muted{color:var(--text-3)}.dim{color:var(--text-2)}.row{display:flex;align-items:center}.col{display:flex;flex-direction:column}.between{justify-content:space-between}.grow{flex:1;min-width:0}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ic{display:block}.truncate-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.app{width:var(--aw);height:var(--ah);flex:none;background:var(--surface);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;position:relative;box-shadow:var(--sh-app)}.app-titlebar{height:42px;flex:none;display:flex;align-items:center;gap:9px;padding:0 17px;background:var(--surface-2);border-bottom:1px solid var(--line);position:relative;z-index:2}.dots{display:flex;gap:7px}.dots i{width:11px;height:11px;border-radius:50%;display:block}.dots i:nth-child(1){background:#ff6159}.dots i:nth-child(2){background:#ffbd2e}.dots i:nth-child(3){background:#28c941}.app-titlebar .tb-title{position:absolute;left:0;right:0;text-align:center;font-size:11px;font-weight:550;letter-spacing:.03em;color:var(--text-3);pointer-events:none}.app-titlebar .tb-right{margin-left:auto;display:flex;align-items:center;gap:6px;position:relative;z-index:1}.tb-pill{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 9px;border-radius:99px;background:var(--surface-3);font-size:10px;font-weight:600;color:var(--text-3)}.app-body{flex:1;min-height:0;display:flex;overflow:hidden}.rail{width:68px;flex:none;background:var(--surface-2);border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;padding:13px 0 14px;gap:4px}.rail-me{width:40px;height:40px;border-radius:13px;overflow:hidden;margin-bottom:12px;flex:none}.rail-nav,.rail-foot{display:flex;flex-direction:column;gap:5px}.rail-foot{margin-top:auto}.rail-btn{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;color:var(--text-3);position:relative;transition:background .15s,color .15s}.rail-btn:hover{background:#1018280a;color:var(--text-2)}.rail-btn.active{background:#fff;color:var(--accent);box-shadow:var(--sh-1)}.rail-btn.active:after{content:"";position:absolute;left:-13px;top:50%;transform:translateY(-50%);width:3px;height:18px;border-radius:0 4px 4px 0;background:var(--accent)}.rail-sep{width:22px;height:1px;background:var(--line-strong);margin:7px 0;flex:none}.mini-dot{position:absolute;top:8px;right:8px;min-width:15px;height:15px;padding:0 4px;border-radius:99px;background:var(--red);color:#fff;font-size:9px;font-weight:700;display:grid;place-items:center;border:2px solid var(--surface-2)}.list{width:320px;flex:none;display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--line);min-height:0}.list-head{padding:17px 16px 4px 18px;display:flex;align-items:center;justify-content:space-between;gap:8px}.list-title{font-size:19px;font-weight:750;letter-spacing:-.015em;display:flex;align-items:center;gap:8px}.list-sub{font-size:10.5px;color:var(--accent);background:var(--accent-soft);padding:2px 7px;border-radius:99px;font-weight:650;letter-spacing:0}.head-acts{display:flex;align-items:center;gap:1px}.list-search{margin:11px 14px 6px;height:36px;flex:none;display:flex;align-items:center;gap:8px;padding:0 11px;background:var(--surface-2);border:1px solid transparent;border-radius:10px;color:var(--text-3)}.list-search:focus-within{border-color:var(--accent-soft-2);background:#fff}.list-search input{flex:1;min-width:0;border:0;background:none;outline:none;font-size:12.5px;color:var(--text)}.list-search input::placeholder{color:var(--text-4)}.list-tabs{display:flex;gap:6px;padding:2px 14px 9px;flex:none}.tab{height:26px;padding:0 11px;border-radius:99px;font-size:11.5px;font-weight:550;color:var(--text-2);background:var(--surface-2);transition:.15s}.tab.active{background:var(--accent-soft);color:var(--accent);font-weight:650}.list-scroll{flex:1;min-height:0;overflow:auto;padding:2px 10px 14px;display:flex;flex-direction:column;gap:1px}.list-scroll::-webkit-scrollbar,.messages::-webkit-scrollbar,.panel-scroll::-webkit-scrollbar,.modal-body::-webkit-scrollbar,.detail-scroll::-webkit-scrollbar{width:0;height:0}.section-label{font-size:10.5px;font-weight:650;color:var(--text-4);letter-spacing:.04em;text-transform:uppercase;padding:12px 10px 6px}.convo{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:12px;position:relative;cursor:pointer;transition:background .12s}.convo:hover{background:var(--surface-2)}.convo.active{background:var(--accent-soft)}.convo.active .convo-name{color:var(--accent-600)}.convo-av{position:relative;flex:none}.convo-main{flex:1;min-width:0}.convo-top{display:flex;align-items:baseline;gap:8px}.convo-name{font-size:13px;font-weight:600;flex:1;min-width:0;letter-spacing:-.005em}.convo-time{font-size:10.5px;color:var(--text-4);flex:none;font-variant-numeric:tabular-nums}.convo-preview{font-size:12px;color:var(--text-3);margin-top:2px;display:flex;align-items:center;gap:4px;min-width:0}.convo-preview .who{color:var(--text-2);font-weight:500;flex:none}.convo-preview .txt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.convo-preview .ico{color:var(--text-4)}.convo-badge{min-width:18px;height:18px;border-radius:9px;background:var(--accent);color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center;padding:0 5px;flex:none;font-variant-numeric:tabular-nums;box-shadow:0 2px 6px -2px #4c6ef5cc}.convo-badge.mute{background:var(--surface-3);color:var(--text-3);box-shadow:none}.avatar{width:44px;height:44px;border-radius:14px;flex:none;display:grid;place-items:center;color:#fff;font-size:15px;font-weight:650;letter-spacing:-.01em;position:relative;overflow:hidden;background:linear-gradient(145deg,var(--a1, #6d8bff),var(--a2, #4c6ef5));-webkit-user-select:none;user-select:none}.avatar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(120% 90% at 18% -10%,rgba(255,255,255,.34),transparent 62%);pointer-events:none}.avatar .avl{position:relative;z-index:1}.avatar.sm{width:34px;height:34px;border-radius:11px;font-size:12px}.avatar.xs{width:26px;height:26px;border-radius:8px;font-size:10px}.avatar.md{width:38px;height:38px;border-radius:12px;font-size:13px}.avatar.lg{width:88px;height:88px;border-radius:26px;font-size:33px;font-weight:600}.avatar.av-group{background:var(--surface-3);padding:3px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px}.avatar.av-group:before{display:none}.avatar.av-group i{display:grid;place-items:center;border-radius:5px;font-size:9px;font-weight:650;font-style:normal;color:#fff;overflow:hidden}.av-dot{position:absolute;right:-1px;bottom:-1px;width:12px;height:12px;border-radius:50%;background:var(--green);border:2.5px solid var(--surface);z-index:3}.av-dot.away{background:var(--amber)}.av-dot.off{background:var(--text-4)}.icon-btn{width:34px;height:34px;border-radius:10px;flex:none;display:grid;place-items:center;color:var(--text-3);transition:.15s}.icon-btn:hover{background:var(--surface-2);color:var(--text-2)}.icon-btn.sm{width:28px;height:28px;border-radius:8px}.chat{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--surface-2);min-height:0}.chat-head{height:64px;flex:none;display:flex;align-items:center;gap:11px;padding:0 16px 0 18px;background:var(--surface);border-bottom:1px solid var(--line)}.chat-id{min-width:0;display:flex;flex-direction:column;gap:1px}.chat-title{font-size:14.5px;font-weight:650;letter-spacing:-.01em;display:flex;align-items:center;gap:7px}.chat-sub{font-size:11.5px;color:var(--text-3);display:flex;align-items:center;gap:5px}.ping{width:6px;height:6px;border-radius:50%;background:var(--green);flex:none}.chat-actions{margin-left:auto;display:flex;align-items:center;gap:2px}.v-sep{width:1px;height:20px;background:var(--line-strong);margin:0 7px;flex:none}.stack{display:flex;align-items:center}.stack .avatar{border:2px solid var(--surface);margin-left:-8px}.stack .avatar:first-child{margin-left:0}.messages{flex:1;min-height:0;overflow:auto;padding:14px 26px 8px;display:flex;flex-direction:column}.date-div{display:flex;justify-content:center;margin:10px 0 14px;flex:none}.date-div span{font-size:10.5px;font-weight:550;color:var(--text-3);background:#e9ecf2;padding:3px 10px;border-radius:99px}.sys{display:flex;justify-content:center;margin:8px 0}.sys span{font-size:10.5px;color:var(--text-3);background:#ffffffbf;padding:3px 10px;border-radius:99px}.msg{display:flex;gap:9px;align-items:flex-start;margin:7px 0;flex:none}.msg.me{flex-direction:row-reverse}.msg.cont{margin-top:2px}.msg.cont .msg-av{opacity:0}.msg-body{max-width:min(452px,74%);display:flex;flex-direction:column;gap:4px;min-width:0}.msg.me .msg-body{align-items:flex-end}.msg-name{font-size:10.5px;font-weight:550;color:var(--text-3);margin:0 0 1px 2px}.bubble{background:var(--surface);border-radius:13px 13px 13px 4px;padding:8px 12px;font-size:13px;line-height:1.6;color:var(--text);box-shadow:var(--sh-1);word-break:break-word;position:relative}.msg.me .bubble{background:var(--accent);color:#fff;border-radius:13px 13px 4px;box-shadow:0 6px 18px -9px #4c6ef5d9}.bubble a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.msg.me .bubble a{color:#fff}.bubble.mention{border-left:2px solid var(--accent)}.meta{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--text-4);padding:0 2px;font-variant-numeric:tabular-nums}.meta.read,.meta .check2{color:var(--accent)}.img-bubble{padding:4px;border-radius:15px;background:var(--surface);box-shadow:var(--sh-1);width:240px;flex:none}.img-bubble .photo{width:232px;height:152px;border-radius:11px;overflow:hidden;display:block}.img-bubble .cap{font-size:11.5px;color:var(--text-2);padding:6px 6px 3px}.msg.me .img-bubble{box-shadow:0 8px 22px -12px #4c6ef5b3}.voice{display:flex;align-items:center;gap:9px;min-width:132px;padding:1px 0}.wave{display:flex;align-items:center;gap:2px;height:18px}.wave i{width:2.5px;border-radius:2px;background:currentColor;opacity:.55;display:block}.voice .dur{font-size:11px;color:var(--text-3);font-variant-numeric:tabular-nums;margin-left:auto}.msg.me .voice .dur{color:#fffc}.file-msg{display:flex;align-items:center;gap:10px;min-width:220px}.file-ic{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);flex:none}.msg.me .file-ic{background:#ffffff2e;color:#fff}.file-main{flex:1;min-width:0}.file-name{font-size:12px;font-weight:600}.file-size{font-size:10.5px;color:var(--text-3);margin-top:1px}.msg.me .file-size{color:#ffffffb8}.composer{flex:none;background:var(--surface);border-top:1px solid var(--line);padding:7px 16px 11px}.composer-tools{display:flex;align-items:center;gap:1px;margin:0 0 5px -6px}.tool-btn{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;color:var(--text-3);transition:.15s}.tool-btn:hover{background:var(--surface-2);color:var(--accent)}.composer-row{display:flex;align-items:flex-end;gap:8px;background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:6px 6px 6px 13px}.composer-row:focus-within{border-color:var(--accent-soft-2);background:#fff;box-shadow:0 0 0 3px var(--accent-soft)}.composer-input{flex:1;min-width:0;border:0;background:none;outline:none;resize:none;font-size:13px;line-height:1.55;height:22px;max-height:92px;padding:2px 0;color:var(--text)}.composer-input::placeholder{color:var(--text-4)}.send-btn{width:34px;height:34px;border-radius:10px;flex:none;display:grid;place-items:center;background:var(--accent);color:#fff;box-shadow:var(--sh-accent)}.composer-hint{margin:6px 0 0 3px;display:flex;align-items:center;gap:12px;font-size:10px;color:var(--text-4)}kbd{font-family:var(--font-mono);font-size:9px;background:var(--surface-3);border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:4px;padding:0 4px;color:var(--text-2);line-height:1.5;display:inline-block}.panel{width:266px;flex:none;background:var(--surface);border-left:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.panel-head{height:64px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 16px;border-bottom:1px solid var(--line)}.panel-title{font-size:13px;font-weight:650}.panel-scroll{flex:1;min-height:0;overflow:auto;padding:16px}.panel-sec+.panel-sec{margin-top:18px}.panel-sec-title{display:flex;align-items:center;justify-content:space-between;font-size:10.5px;font-weight:650;color:var(--text-3);letter-spacing:.03em;margin-bottom:11px}.panel-sec-title .more{font-size:10.5px;color:var(--accent);font-weight:600;letter-spacing:0}.member-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px 6px}.member{display:flex;flex-direction:column;align-items:center;gap:5px;position:relative}.member .avatar{width:38px;height:38px;border-radius:12px;font-size:13px}.member-name{font-size:10px;color:var(--text-2);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.member .owner-flag{position:absolute;top:-3px;right:4px;height:13px;padding:0 4px;border-radius:4px;background:var(--amber);color:#fff;font-size:8px;font-weight:700;line-height:13px;border:1.5px solid var(--surface);z-index:4}.member.add .avatar{background:var(--surface-2);border:1px dashed var(--line-strong);color:var(--text-4)}.member.add .avatar:before{display:none}.note-card{background:var(--surface-2);border-radius:11px;padding:10px 11px;font-size:11.5px;color:var(--text-2);line-height:1.6}.mini-list .set-row{padding:9px 0}.scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;background:#11182766;display:grid;place-items:center;padding:36px}.scrim.dark{background:#090c14d1}.modal{width:var(--mw, 460px);max-height:100%;flex:none;background:var(--surface);border-radius:20px;box-shadow:var(--sh-3);display:flex;flex-direction:column;overflow:hidden}.modal-head{flex:none;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:19px 18px 13px 20px}.modal-head h3{font-size:15.5px;font-weight:700;letter-spacing:-.015em}.modal-head p{font-size:11.5px;color:var(--text-3);margin-top:3px}.modal-body{padding:0 20px;overflow:auto;flex:1;min-height:0}.modal-body.pad{padding-top:2px;padding-bottom:18px}.modal-foot{flex:none;padding:13px 20px;border-top:1px solid var(--line);background:var(--surface-2);display:flex;align-items:center;justify-content:flex-end;gap:9px}.f-label{display:flex;align-items:center;justify-content:space-between;font-size:11.5px;font-weight:600;color:var(--text-2);margin:14px 0 6px}.f-label:first-child{margin-top:0}.f-label .link{font-size:11px;font-weight:600}.field{display:flex;align-items:center;gap:9px;height:42px;padding:0 12px;background:var(--surface-2);border:1px solid var(--line);border-radius:11px;color:var(--text-3);transition:.15s}.field:focus-within{border-color:var(--accent-soft-2);background:#fff;box-shadow:0 0 0 3px var(--accent-soft)}.field input{flex:1;min-width:0;border:0;background:none;outline:none;font-size:13px;color:var(--text)}.field input::placeholder{color:var(--text-4)}.field .suffix{font-size:11.5px;color:var(--accent);font-weight:650;flex:none;white-space:nowrap}.field .suffix.muted{color:var(--text-4);font-weight:550}.field.tall{height:74px;align-items:flex-start;padding:10px 12px}.field textarea{flex:1;border:0;background:none;outline:none;resize:none;font-size:12.5px;line-height:1.55;height:52px;color:var(--text)}.btn{height:38px;padding:0 15px;border-radius:11px;font-size:12.5px;font-weight:650;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--surface);border:1px solid var(--line-strong);color:var(--text-2);white-space:nowrap;transition:.15s}.btn:hover{background:var(--surface-2)}.btn.primary{background:var(--accent);border-color:transparent;color:#fff;box-shadow:var(--sh-accent)}.btn.primary:hover{background:var(--accent-600)}.btn.soft{background:var(--accent-soft);border-color:transparent;color:var(--accent);box-shadow:none}.btn.danger{background:var(--red-soft);border-color:#fee4e2;color:var(--red)}.btn.ghost{background:transparent;border-color:transparent;color:var(--text-2)}.btn.lg{height:46px;border-radius:12px;font-size:13.5px}.btn.full{width:100%}.btn.sm{height:29px;border-radius:9px;font-size:11.5px;padding:0 11px}.switch{width:38px;height:22px;border-radius:99px;background:var(--surface-3);position:relative;flex:none;transition:.2s;box-shadow:inset 0 0 0 1px #1018280a}.switch:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #10182842;transition:.2s}.switch.on{background:var(--accent);box-shadow:none}.switch.on:after{left:18px}.chip{display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 8px;border-radius:99px;font-size:10px;font-weight:650;background:var(--surface-3);color:var(--text-2);flex:none}.chip.accent{background:var(--accent-soft);color:var(--accent)}.chip.green{background:var(--green-soft);color:#0e9f6e}.chip.amber{background:var(--amber-soft);color:#b54708}.chip.red{background:var(--red-soft);color:var(--red)}.set-row{display:flex;align-items:center;gap:11px;padding:10.5px 0;border-bottom:1px solid var(--line)}.set-row:last-child{border-bottom:0}.set-ic{width:32px;height:32px;border-radius:9px;flex:none;display:grid;place-items:center;background:var(--surface-2);color:var(--text-2)}.set-main{flex:1;min-width:0}.set-t{font-size:12.5px;font-weight:600;color:var(--text)}.set-d{font-size:11px;color:var(--text-3);margin-top:1px}.set-val{font-size:11.5px;color:var(--text-3);flex:none;display:flex;align-items:center;gap:5px}.empty{flex:1;display:grid;place-items:center;background:var(--surface-2);min-width:0}.empty-in{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:330px;margin-top:-20px}.empty-ic{width:66px;height:66px;border-radius:21px;background:var(--surface);box-shadow:var(--sh-2);display:grid;place-items:center;color:var(--accent);margin-bottom:18px}.empty h3{font-size:14px;font-weight:650;letter-spacing:-.01em}.empty p{font-size:12px;color:var(--text-3);margin-top:7px;line-height:1.7}.empty .hint-row{display:flex;gap:10px;margin-top:18px;align-items:center}.hr{display:flex;align-items:center;gap:10px;margin:18px 0;color:var(--text-4);font-size:10.5px;font-weight:550}.hr:before,.hr:after{content:"";flex:1;height:1px;background:var(--line)}.check{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--text-2)}.box{width:15px;height:15px;border-radius:4.5px;border:1.5px solid var(--line-strong);background:#fff;display:grid;place-items:center;color:#fff;flex:none}.box.on{background:var(--accent);border-color:var(--accent)}.link{color:var(--accent);font-weight:600}.link.muted{color:var(--text-3);font-weight:500}.auth{width:var(--aw);height:var(--ah);flex:none;display:grid;grid-template-columns:552px 1fr;background:var(--surface);border-radius:18px;overflow:hidden;box-shadow:var(--sh-app);position:relative}.auth-brand{position:relative;overflow:hidden;padding:46px 48px 40px;display:flex;flex-direction:column;color:#fff;background:linear-gradient(158deg,#3a52d4,#4c6ef5 40%,#7f96ff)}.auth-brand:before{content:"";position:absolute;width:560px;height:560px;border-radius:50%;right:-210px;top:-190px;background:radial-gradient(circle at 42% 42%,#ffffff3d,#fff0 66%)}.auth-brand:after{content:"";position:absolute;left:-140px;bottom:-210px;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle at 60% 40%,#ffffff2e,#fff0 68%)}.auth-brand>*{position:relative;z-index:1}.brand-top{display:flex;align-items:center;gap:12px}.brand-logo{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#ffffff2e;border:1px solid rgba(255,255,255,.28);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.brand-word{display:flex;flex-direction:column;line-height:1.25}.brand-word b{font-size:15px;font-weight:700;letter-spacing:-.01em}.brand-word span{font-size:10.5px;color:#ffffff9e;letter-spacing:.16em;text-transform:uppercase}.auth-hero{margin-top:auto;margin-bottom:auto;padding-top:20px}.auth-hero h1{font-size:35px;line-height:1.32;font-weight:800;letter-spacing:-.025em;max-width:13ch}.auth-hero p{font-size:13px;line-height:1.85;color:#fffc;margin-top:16px;max-width:34ch}.auth-points{display:flex;flex-direction:column;gap:11px;margin-top:26px}.auth-points .p{display:flex;align-items:center;gap:10px;font-size:12px;color:#ffffffeb}.auth-points .pic{width:20px;height:20px;border-radius:7px;display:grid;place-items:center;background:#ffffff2e;color:#fff;flex:none}.auth-foot{margin-top:30px;font-size:10.5px;color:#ffffff80;display:flex;align-items:center;gap:8px}.auth-panel{display:grid;place-items:center;padding:44px 48px;background:var(--surface)}.auth-box{width:100%;max-width:372px}.auth-box h2{font-size:26px;font-weight:750;letter-spacing:-.03em}.auth-box .sub{font-size:12.5px;color:var(--text-3);margin-top:7px;line-height:1.6}.auth-form{margin-top:26px}.auth-form .f-label:first-child{margin-top:0}.auth-row{display:flex;align-items:center;justify-content:space-between;margin:14px 0 18px}.sso{display:grid;grid-template-columns:1fr 1fr;gap:9px}.sso .btn{height:40px;font-size:12px;font-weight:600;color:var(--text-2);background:var(--surface-2);border-color:var(--line)}.auth-switch{text-align:center;font-size:11.5px;color:var(--text-3);margin-top:20px}.legal{font-size:10px;color:var(--text-4);text-align:center;margin-top:22px;line-height:1.7}.legal a{color:var(--text-3);text-decoration:underline;text-underline-offset:2px}.contacts{flex:1;min-width:0;display:flex;background:var(--surface)}.contact-list{width:322px;flex:none;display:flex;flex-direction:column;border-right:1px solid var(--line);min-height:0}.quick{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:11px}.quick .qic{width:34px;height:34px;border-radius:11px;flex:none;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.quick .qname{flex:1;font-size:12.5px;font-weight:600}.quick .qmeta{font-size:10.5px;color:var(--text-4);flex:none}.letter{font-size:10px;font-weight:700;color:var(--text-4);letter-spacing:.08em;padding:11px 10px 3px}.contact-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:11px}.contact-item.active{background:var(--accent-soft)}.contact-item.active .cname{color:var(--accent-600)}.contact-item .cname{font-size:12.5px;font-weight:600}.contact-item .csign{font-size:10.5px;color:var(--text-3);margin-top:1px}.detail{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--surface-2)}.detail-top{flex:none;padding:32px 34px 26px;background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:22px}.detail-id{flex:1;min-width:0}.dname{font-size:22px;font-weight:750;letter-spacing:-.025em;display:flex;align-items:center;gap:9px}.dsig{font-size:12.5px;color:var(--text-2);margin-top:9px;line-height:1.65}.dline{display:flex;align-items:center;gap:7px;margin-top:11px;flex-wrap:wrap}.detail-scroll{flex:1;min-height:0;overflow:auto;padding:20px 34px 28px}.info-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:2px 14px;box-shadow:var(--sh-1)}.info-row{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px}.info-row:last-child{border-bottom:0}.info-k{width:62px;flex:none;font-size:11.5px;color:var(--text-3)}.info-v{flex:1;color:var(--text);display:flex;align-items:center;gap:7px}.section-h{font-size:10.5px;font-weight:650;color:var(--text-3);letter-spacing:.05em;margin:22px 0 10px;display:flex;align-items:center;justify-content:space-between}.shared{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:9px 12px;margin-bottom:7px;box-shadow:var(--sh-1)}.detail-acts{display:flex;gap:9px;margin-top:15px}.viewer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;background:#080b12e6;display:flex;flex-direction:column}.viewer-top{flex:none;height:64px;display:flex;align-items:center;gap:11px;padding:0 20px;color:#fff}.viewer-top .vh-name{font-size:12.5px;font-weight:650}.viewer-top .vh-time{font-size:10.5px;color:#ffffff8c;margin-top:1px}.viewer-count{font-size:11.5px;color:#ffffff9e;margin-left:auto;font-variant-numeric:tabular-nums}.vbtn{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:#ffffffbf;transition:.15s}.vbtn:hover{background:#ffffff1f;color:#fff}.viewer-main{flex:1;min-height:0;display:grid;place-items:center;position:relative}.viewer-main .photo{width:716px;height:478px;border-radius:14px;overflow:hidden;box-shadow:0 50px 110px -40px #000,0 0 0 1px #ffffff14}.nav-arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:#fff;background:#ffffff1a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.14);transition:.15s}.nav-arrow:hover{background:#ffffff2e}.nav-arrow.l{left:26px}.nav-arrow.r{right:26px}.viewer-foot{flex:none;height:96px;display:flex;align-items:center;justify-content:center;gap:8px}.thumb{width:54px;height:39px;border-radius:7px;overflow:hidden;opacity:.45;border:2px solid transparent;transition:.15s;flex:none}.thumb.on{opacity:1;border-color:#fff}.thumb .photo{width:100%;height:100%}.m-app{width:390px;height:844px;flex:none;background:var(--surface);border-radius:42px;overflow:hidden;display:flex;flex-direction:column;position:relative;border:1px solid rgba(16,24,40,.07);box-shadow:var(--sh-app)}.m-status{flex:none;height:50px;display:flex;align-items:center;justify-content:space-between;padding:0 24px 0 30px;font-size:12.5px;font-weight:650;letter-spacing:.01em}.m-status .si{display:flex;align-items:center;gap:5px}.m-head{flex:none;display:flex;align-items:center;gap:10px;padding:2px 14px 12px 18px}.m-title{font-size:20px;font-weight:750;letter-spacing:-.02em;flex:1}.m-search{margin:0 14px 10px;height:36px;flex:none;display:flex;align-items:center;gap:8px;padding:0 11px;background:var(--surface-2);border-radius:10px;color:var(--text-3);font-size:12.5px}.m-list{flex:1;min-height:0;overflow:auto;padding:0 8px}.m-list::-webkit-scrollbar,.m-messages::-webkit-scrollbar{width:0}.m-convo{display:flex;align-items:center;gap:11px;padding:9px 8px;border-radius:12px}.m-convo.active{background:var(--accent-soft)}.m-tabbar{flex:none;height:54px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);background:#fffffff0}.m-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:9.5px;font-weight:550;color:var(--text-4);position:relative}.m-tab.active{color:var(--accent)}.m-tab .tbadge{position:absolute;top:4px;left:50%;margin-left:5px;min-width:15px;height:15px;padding:0 4px;border-radius:99px;background:var(--red);color:#fff;font-size:9px;font-weight:700;display:grid;place-items:center;border:1.5px solid #fff}.m-home{flex:none;height:26px;display:grid;place-items:center}.m-home:after{content:"";width:132px;height:5px;border-radius:99px;background:#101828;opacity:.85}.m-chat-head{flex:none;display:flex;align-items:center;gap:9px;padding:0 12px 10px 8px}.m-chat-head .mcid{flex:1;min-width:0}.m-chat-head .mcn{font-size:14px;font-weight:650;display:flex;align-items:center;gap:6px}.m-chat-head .mcs{font-size:10px;color:var(--text-3);margin-top:1px}.m-messages{flex:1;min-height:0;overflow:auto;padding:8px 14px 12px;display:flex;flex-direction:column;background:var(--surface-2)}.m-bubble{background:var(--surface);border-radius:14px 14px 14px 4px;padding:8px 11px;font-size:13px;line-height:1.55;box-shadow:var(--sh-1);max-width:74%}.msg.me .m-bubble{background:var(--accent);color:#fff;border-radius:14px 14px 4px;box-shadow:0 6px 18px -9px #4c6ef5d9}.m-composer{flex:none;padding:8px 12px 10px;border-top:1px solid var(--line);background:var(--surface);display:flex;align-items:flex-end;gap:8px}.m-input{flex:1;min-height:36px;border-radius:11px;background:var(--surface-2);border:1px solid var(--line);padding:8px 12px;font-size:12.5px;color:var(--text-4)}.m-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;background:#11182766}.page-wall{display:block;background:#f0f2f6;min-height:100vh}.wall{max-width:1560px;margin:0 auto;padding:46px 44px 100px}.wall-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-bottom:26px;border-bottom:1px solid #e2e5ec}.wall-brand{display:flex;align-items:center;gap:13px}.wall-logo{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;color:#fff;background:linear-gradient(150deg,#5b7bff,#4c6ef5 60%,#3d5ce0);box-shadow:0 8px 20px -8px #4c6ef5e6}.wall h1{font-size:27px;font-weight:800;letter-spacing:-.03em;line-height:1.2}.wall .wsub{font-size:12px;color:var(--text-3);margin-top:3px}.wall-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wall-meta .chip{height:24px;font-size:10.5px;background:#fff;border:1px solid #e2e5ec;color:var(--text-2)}.group{margin-top:40px}.group-head{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}.group-head h2{font-size:14px;font-weight:700;letter-spacing:-.01em}.group-head span{font-size:11.5px;color:var(--text-3)}.group-head .count{font-size:10px;font-weight:650;color:var(--accent);background:var(--accent-soft);padding:1px 7px;border-radius:99px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:16px}.grid.m{grid-template-columns:repeat(4,minmax(0,1fr))}.frame{background:#fff;border:1px solid #e4e7ee;border-radius:16px;padding:10px 10px 6px;box-shadow:0 2px 8px -2px #1018280f;transition:.18s}.frame:hover{box-shadow:0 18px 40px -18px #1018284d;border-color:#d6dae4;transform:translateY(-2px)}.shot{position:relative;width:calc(var(--w) * var(--s));height:calc(var(--h) * var(--s));border-radius:10px;overflow:hidden;background:var(--stage-bg);border:1px solid #e8eaef}.shot iframe{width:var(--w);height:var(--h);border:0;display:block;transform:scale(var(--s));transform-origin:0 0;background:transparent}.frame-cap{display:flex;align-items:center;gap:8px;padding:9px 4px 4px}.frame-cap .num{font-family:var(--font-mono);font-size:10px;font-weight:600;color:var(--accent);background:var(--accent-soft);border-radius:5px;padding:1px 5px;flex:none}.frame-cap .nm{font-size:12px;font-weight:650;color:var(--text)}.frame-cap .ds{font-size:10.5px;color:var(--text-3);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.frame-cap .op{font-size:10.5px;color:var(--text-3);flex:none;display:flex;align-items:center;gap:3px}.frame-cap .op:hover{color:var(--accent)}.wall-foot{margin-top:56px;padding-top:22px;border-top:1px solid #e2e5ec;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:11px;color:var(--text-3)}.wall-foot a{color:var(--text-2);font-weight:600}.anno{position:absolute;z-index:50;display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:6px;background:#101828;color:#fff;font-size:10px;font-weight:600;white-space:nowrap;box-shadow:0 6px 16px -6px #00000080;pointer-events:none}.anno:before{content:"";width:5px;height:5px;border-radius:50%;background:#7c93ff;flex:none}.messages-in{display:flex;flex-direction:column;justify-content:flex-end;min-height:100%}.msg-av{flex:none}.rail-me .avatar{width:40px;height:40px;border-radius:13px;font-size:14px}.convo-bottom{display:flex;align-items:center;gap:6px;margin-top:2px}.convo-preview{margin-top:0;flex:1;min-width:0}.img-bubble .photo{width:100%;height:auto;aspect-ratio:232 / 152;border-radius:11px}.msg{margin:6px 0}.date-div{margin:8px 0 12px}.app-body{position:relative;overflow:visible}.scrim,.viewer{top:-42px;right:0;bottom:0;left:0}.bubble .at{color:var(--accent);font-weight:650}.msg.me .bubble .at{color:#fff;text-decoration:underline;text-underline-offset:2px}.file-dl{color:var(--text-4);flex:none}.msg.me .file-dl{color:#ffffffd9}.seg{display:flex;gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:11px;padding:4px}.seg-i{flex:1;height:31px;border-radius:8px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--text-3)}.seg-i.on{background:#fff;color:var(--text);box-shadow:var(--sh-1)}.auth-hero h1{max-width:none}.m-list .convo{padding:9px 8px}.m-list .convo-time{font-size:10px}.modal .section-h{margin-bottom:8px}.rail-btn.active:after{left:-12px}.grid{grid-template-columns:repeat(2,max-content);justify-content:center}.grid.m{grid-template-columns:repeat(4,max-content);justify-content:center}.wall{overflow-x:auto}.rail-btn.active:after{display:none}.msg{margin:4px 0}.msg.cont{margin-top:1px}.app-body{position:relative;overflow:hidden}.scrim{top:0;right:0;bottom:0;left:0;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.viewer{top:0;right:0;bottom:0;left:0;background:#080b12eb}.member-grid{grid-template-columns:repeat(auto-fill,minmax(58px,1fr))}.avatar.av-group i{font-size:.6em}.owner-flag{width:14px;height:14px;padding:0;font-size:0;display:grid;place-items:center;border-radius:50%}.m-bubble{max-width:100%}.msg-body{min-width:0}.modal .set-row{padding:9px 0}.modal .shared{padding:10px 12px}.app-body{overflow:visible}.scrim{top:-42px;right:0;bottom:0;left:0;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}.viewer{top:-42px;right:0;bottom:0;left:0;padding-top:42px}.scrim{background:#11182770;-webkit-backdrop-filter:none;backdrop-filter:none}.viewer{padding-top:0;background:#090c13f7}.member-grid{grid-template-columns:repeat(auto-fill,minmax(52px,1fr))}.viewer{background:#0a0e16}.auth-hero p{max-width:382px}.avatar.av-group i{border-radius:26%}html,body,#app{height:100%}body{display:block;min-height:100%;background:var(--surface-2);overflow:hidden}#app{height:100%}.app.app--fluid{width:100%;height:100%;border-radius:0;box-shadow:none}.auth{width:100vw;height:100vh;border-radius:0;box-shadow:none;grid-template-columns:minmax(520px,44%) 1fr}.mini-dot{white-space:nowrap;min-width:18px;padding:0 5px}.back-btn{display:none!important}@media (max-width: 860px){.app-titlebar,.rail{display:none}.app-body{position:relative}.list{width:100%;flex:1 1 0%;min-width:0;border-right:0}.chat,.contacts{flex:1 1 0%;min-width:0}.app-body.has-active .list{display:none}.app-body:not(.has-active) .chat,.app-body:not(.has-active) .empty{display:none}.panel{display:none}.back-btn{display:grid!important}.contact-list{width:100%;border-right:0}.contacts .detail{display:none}.auth{grid-template-columns:1fr}.auth-brand{display:none}.auth-panel{padding:28px 22px}.chat-head{height:56px;flex-basis:56px}.messages{padding:12px 16px 6px}.msg-body{max-width:78%}.composer{padding:6px 12px 10px}.composer-hint{display:none}.hide-sm{display:none!important}}.msg-image{display:block;width:232px;max-width:100%;max-height:320px;height:auto;object-fit:cover;border-radius:11px}.viewer-image{max-width:min(78vw,900px);max-height:70vh;border-radius:12px;object-fit:contain;box-shadow:0 40px 90px -30px #000}.check-row{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border-radius:11px;transition:background .12s}.check-row:hover{background:var(--surface-2)}.check-row.on{background:var(--accent-soft)}.mobile-tabbar{display:none}.mobile-page{display:flex;flex-direction:column;height:100%}.m-page-head{flex:none;padding:22px 20px 14px}.m-page-head h1{font-size:22px;font-weight:750;letter-spacing:-.02em;margin:0}.m-page-head p{font-size:11.5px;color:var(--text-3);margin:6px 0 0}.m-page-body{flex:1;overflow:auto;padding:0 16px 24px}@media (max-width: 860px){.app.app--fluid{padding-bottom:calc(56px + env(safe-area-inset-bottom,0px))}.mobile-tabbar{display:grid;position:fixed;left:0;right:0;bottom:0;z-index:50;height:calc(56px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);grid-template-columns:repeat(4,1fr);background:#fffffff7;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mtab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:9.5px;font-weight:550;color:var(--text-4);position:relative;text-decoration:none}.mtab.active{color:var(--accent)}.mtab .tbadge{position:absolute;top:6px;left:50%;margin-left:4px;min-width:15px;height:15px;padding:0 4px;border-radius:99px;background:var(--red);color:#fff;font-size:9px;font-weight:700;display:grid;place-items:center;border:1.5px solid #fff}}.app-body>.mobile-page{flex:1;min-width:0}.rail-me{text-decoration:none}@media (min-width: 861px){.app-body>.mobile-page{max-width:760px;margin:0 auto}}
