:root{--bg:#fff;--fg:#111318;--mute:#7a838f;--line:rgba(60,60,67,.14);--own:#d8ebff;--other:#f1f2f4;--acc:#0a7cff;--safe-b:env(safe-area-inset-bottom);--safe-t:env(safe-area-inset-top)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#app{margin:0;height:100%;background:var(--bg);color:var(--fg);font:16px/1.3 -apple-system,BlinkMacSystemFont,Inter,Segoe UI,sans-serif;overscroll-behavior:none}button{font:inherit;color:inherit;background:none;border:0;padding:0}.screen{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--bg)}.login{align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center}.login h1{margin:0;font-size:28px}.login p{margin:0;color:var(--mute)}.btn{background:var(--fg);color:#fff;border-radius:24px;padding:14px 28px;font-weight:600}.top{padding:calc(max(10px,var(--safe-t)) + 6px) 14px 8px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);min-height:56px}.top h2{margin:0;font-size:20px;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ico{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:20px;font-size:20px}.ico:active{background:var(--other)}.list{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:calc(var(--safe-b) + 8px)}.row{display:flex;gap:12px;padding:10px 14px;align-items:center}.row:active{background:var(--other)}.av{width:48px;height:48px;border-radius:50%;background:#e6e9ee;flex:none;object-fit:cover;display:flex;align-items:center;justify-content:center;font-weight:700;color:#556}.rb{flex:1;min-width:0;border-bottom:1px solid var(--line);padding-bottom:10px}.rt{display:flex;gap:8px}.rt b{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rt span{color:var(--mute);font-size:13px}.rs{display:flex;gap:8px;color:var(--mute);font-size:14px}.rs div{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{background:#1aa76c;color:#fff;border-radius:10px;min-width:20px;padding:0 6px;font-size:12px;line-height:20px;text-align:center}.tl{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:8px 6px;display:flex;flex-direction:column;gap:2px;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.msg{max-width:88%;padding:7px 11px 5px;border-radius:18px;background:var(--other);align-self:flex-start;word-break:break-word;white-space:pre-wrap;border-end-start-radius:6px}.msg.own{align-self:flex-end;background:var(--own);border-end-start-radius:18px;border-end-end-radius:6px}.msg .who{font-size:13px;font-weight:600;color:#a0245f;margin-bottom:2px}.msg .ts{font-size:11px;color:var(--mute);margin-left:8px;float:right;margin-top:6px}.msg img{max-width:100%;border-radius:12px;display:block;margin:2px 0}.msg.sys{align-self:center;background:none;color:var(--mute);font-size:13px}.msg a{color:var(--acc)}.sep{align-self:center;background:#0000000f;border-radius:12px;padding:2px 10px;font-size:12px;color:var(--mute);margin:8px 0}.comp{display:flex;gap:8px;align-items:center;padding:6px 10px calc(var(--safe-b) + 6px)}.pill{flex:1;display:flex;align-items:center;background:#fff;border-radius:24px;box-shadow:0 1px 8px #00000024;min-height:46px;padding:0 6px}.pill textarea{flex:1;border:0;outline:0;resize:none;background:none;font:inherit;line-height:22px;padding:12px 8px;max-height:144px;height:22px;box-sizing:content-box;overflow-y:auto}.send{width:46px;height:46px;border-radius:50%;background:var(--acc);color:#fff;font-size:20px}.call{position:fixed;inset:0;z-index:50;background:#000;display:flex;flex-direction:column}.call iframe{flex:1;border:0;width:100%}.call .x{position:absolute;top:calc(var(--safe-t) + 8px);right:10px;z-index:2;background:#00000080;color:#fff}.banner{background:#e8f6ee;padding:10px 14px;display:flex;align-items:center;gap:10px}.banner .btn{padding:8px 16px}.warn{background:#fff4d6;padding:8px 14px;font-size:14px}.warn input{width:100%;padding:8px;margin-top:6px;border:1px solid var(--line);border-radius:8px;font:inherit}.spaces{display:flex;gap:12px;overflow-x:auto;padding:10px 14px 4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.spaces::-webkit-scrollbar{display:none}.sp{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:58px;max-width:70px;opacity:.65}.sp.on{opacity:1}.sp.on .av{box-shadow:0 0 0 2px var(--acc)}.sp span{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70px}.av.sm{width:44px;height:44px;font-size:18px}.tabs{display:flex;gap:6px;padding:6px 14px;overflow-x:auto}.tb{padding:7px 14px;border-radius:18px;background:var(--other);font-weight:500;white-space:nowrap;position:relative}.tb.on{background:var(--fg);color:#fff}.tb i{font-style:normal;background:#1aa76c;color:#fff;border-radius:9px;font-size:11px;padding:1px 6px;margin-left:6px}.search{padding:4px 14px 6px}.search input{width:100%;border:0;background:var(--other);border-radius:12px;padding:10px 14px;font:inherit;outline:0}.lc{position:fixed;inset:0;z-index:60;background:#111;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.lc video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#000}.lc .pip{position:absolute;right:12px;width:100px;height:140px;border-radius:12px;inset:auto 12px auto auto;top:calc(var(--safe-t) + 12px);z-index:2}.lc .info{position:relative;z-index:3;text-align:center;text-shadow:0 1px 6px rgba(0,0,0,.6)}.lc .ctl{position:absolute;bottom:calc(var(--safe-b) + 36px);display:flex;gap:28px;z-index:3}.lc .rb2{width:64px;height:64px;border-radius:50%;font-size:26px;color:#fff;background:#d6232a}.lc .gr{background:#1aa76c}.lc .gy{background:#ffffff40}.sheet-bg{position:fixed;inset:0;z-index:55;background:#0006;display:flex;align-items:flex-end}.sheet{background:#fff;width:100%;border-radius:20px 20px 0 0;padding:16px 14px calc(var(--safe-b) + 14px);display:flex;flex-direction:column;gap:10px}.sheet h3{margin:0 0 4px;text-align:center;font-size:17px}.opt{display:flex;flex-direction:column;gap:3px;text-align:left;background:var(--other);border-radius:14px;padding:12px 14px}.opt span{font-size:13px;color:var(--mute)}.opt.cancel{text-align:center;background:none;color:var(--acc);font-weight:600}.av.ic{background:none;overflow:hidden}.sp .bd{position:absolute;top:-2px;right:6px;font-style:normal;background:#e5484d;color:#fff;border-radius:9px;font-size:10px;padding:1px 5px}
