:root{--color-page: #f0f2f5;--color-surface: #ffffff;--color-surface-2: #f6f7fa;--color-text: #14161a;--color-divider: #e9ebf0;--page-glow: radial-gradient(900px 460px at 62% 34%, rgba(140, 163, 255, .34), transparent 62%), radial-gradient(700px 420px at 12% 88%, rgba(178, 162, 255, .26), transparent 62%), radial-gradient(620px 320px at 94% 92%, rgba(255, 175, 175, .16), transparent 60%);--color-ink: #1a1a1a;--color-ink-hover: #000000;--color-on-ink: #ffffff;--color-neutral-200: #f3f4f6;--color-neutral-400: #d1d5db;--color-neutral-500: #b4b9c2;--color-neutral-600: #9ca3af;--color-neutral-700: #6b7280;--color-neutral-800: #374151;--color-accent: #6e8efb;--color-accent-100: #eef2ff;--color-accent-200: #dbe3ff;--color-accent-600: #4f6ef0;--color-accent-700: #3a55cc;--status-success-fg: #047857;--status-danger-bg: #fee2e2;--status-danger-fg: #b91c1c;--status-danger-solid: #dc2626;--status-neutral-bg: #f3f4f6;--status-neutral-fg: #4b5563;--color-tint: rgba(20, 22, 26, .06);--color-tint-hover: rgba(20, 22, 26, .11);--focus-ring: 0 0 0 3px color-mix(in srgb, var(--color-accent) 35%, transparent);--bubble-mine: #e3e9ff;--ctl-sm: 28px;--ctl-md: 36px;--radius-xs: 6px;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 20px;--radius-pill: 999px;--shadow-sm: 0 1px 3px rgba(20, 25, 45, .04);--shadow-md: 0 2px 6px rgba(20, 25, 45, .04), 0 12px 28px rgba(20, 25, 45, .06);--shadow-float: 0 4px 10px rgba(20, 25, 45, .06), 0 18px 40px rgba(20, 25, 45, .1);--t-fast: .12s;--t: .18s;--ease-out: cubic-bezier(.2, .8, .3, 1);--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;color-scheme:light}[data-theme=dark]{--color-page: #111113;--color-surface: #1c1c1f;--color-surface-2: #232327;--color-text: #f3f4f6;--color-divider: #2c2c31;--page-glow: radial-gradient(900px 460px at 62% 34%, rgba(88, 110, 205, .22), transparent 62%), radial-gradient(700px 420px at 12% 88%, rgba(120, 100, 200, .18), transparent 62%), radial-gradient(620px 320px at 94% 92%, rgba(190, 110, 110, .12), transparent 60%);--color-ink: #f3f4f6;--color-ink-hover: #ffffff;--color-on-ink: #111113;--color-neutral-200: #2a2a2f;--color-neutral-400: #45454c;--color-neutral-500: #5c5c64;--color-neutral-600: #80808a;--color-neutral-700: #9ca3af;--color-neutral-800: #d1d5db;--color-accent-100: rgba(110, 142, 251, .14);--color-accent-200: rgba(110, 142, 251, .26);--color-accent-600: #8da6fc;--color-accent-700: #b9c7fd;--status-success-fg: #34d399;--status-danger-bg: rgba(239, 68, 68, .15);--status-danger-fg: #f87171;--status-neutral-bg: #2a2a2f;--status-neutral-fg: #d1d5db;--color-tint: rgba(255, 255, 255, .08);--color-tint-hover: rgba(255, 255, 255, .14);--bubble-mine: #2a3354;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .35);--shadow-md: 0 2px 6px rgba(0, 0, 0, .35), 0 12px 28px rgba(0, 0, 0, .4);--shadow-float: 0 4px 10px rgba(0, 0, 0, .4), 0 18px 40px rgba(0, 0, 0, .5);color-scheme:dark}:root{--msg-size: 13.5px;--ui-size: 13px}[data-text-size=s]{--msg-size: 12.5px;--ui-size: 12.5px}[data-text-size=l]{--msg-size: 15.5px;--ui-size: 14px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font:400 var(--ui-size)/1.4 var(--font-body);color:var(--color-text);background:var(--color-surface);-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}button:disabled{cursor:not-allowed}input,textarea{font:inherit;color:inherit}:focus-visible{outline:none;box-shadow:var(--focus-ring)}.center{height:100%;display:grid;place-items:center;padding:24px;text-align:center;color:var(--color-neutral-700)}.muted{color:var(--color-neutral-600)}.app{height:100%;display:flex;background:var(--color-surface)}.side,.main{height:100%;min-width:0}.side{flex:1}.main{display:none;flex:1}.app.has-main .side{display:none}.app.has-main .main{display:block}@media(min-width:720px){.side{flex:0 0 320px;border-right:1px solid var(--color-divider);display:block!important}.main{display:block;background-color:var(--color-page);background-image:var(--page-glow)}}.view{height:100%;display:flex;flex-direction:column;background:var(--color-surface);position:relative}.bar{display:flex;align-items:center;gap:6px;padding:10px 10px 10px 16px;min-height:58px;border-bottom:1px solid var(--color-divider);background:var(--color-surface);flex-shrink:0}.bar-title{flex:1;margin:0;font-size:18px;font-weight:600;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-btn{width:var(--ctl-md);height:var(--ctl-md);display:grid;place-items:center;border-radius:var(--radius-md);color:var(--color-neutral-800);flex-shrink:0;transition:background var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out)}.icon-btn:hover{background:var(--color-neutral-200);color:var(--color-text)}.icon-btn.small{width:var(--ctl-sm);height:var(--ctl-sm);border-radius:var(--radius-sm)}.icon-btn.primary{background:var(--color-ink);color:var(--color-on-ink)}.icon-btn.primary:hover{background:var(--color-ink-hover);color:var(--color-on-ink)}.bar-who{flex:1;min-width:0;display:flex;align-items:center;gap:10px;text-align:left;border-radius:var(--radius-md)}.bar-who-text{display:flex;flex-direction:column;min-width:0}.bar-name{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-sub{font-size:12px;color:var(--color-neutral-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-sub.accent{color:var(--color-accent-600)}.av{position:relative;flex-shrink:0;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:600;letter-spacing:.02em}.av-plain{width:40px;height:40px;background:var(--color-neutral-200);color:var(--color-text)}.av-dot{position:absolute;right:0;bottom:0;width:28%;height:28%;min-width:9px;min-height:9px;border-radius:50%;background:#10b981;border:2px solid var(--color-surface)}.search{display:flex;align-items:center;gap:8px;margin:10px 12px 6px;padding:0 12px;height:var(--ctl-md);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md);color:var(--color-neutral-700);flex-shrink:0;transition:border-color var(--t-fast) var(--ease-out)}.search:hover{border-color:var(--color-neutral-400)}.search:focus-within{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.search input{flex:1;border:0;background:none;outline:none;color:var(--color-text)}.search input::placeholder{color:var(--color-neutral-700)}.list{list-style:none;margin:0;padding:2px 8px 8px;overflow-y:auto;flex:1}.row{width:100%;display:flex;align-items:center;gap:12px;padding:8px 10px;text-align:left;border-radius:var(--radius-md);transition:background var(--t-fast) var(--ease-out)}.row:hover:not(.static):not(:disabled){background:var(--color-surface-2)}.row.static{cursor:default}.row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.row-top,.row-bottom{display:flex;align-items:center;gap:8px;min-width:0}.row-title{flex:1;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-time{font-size:11.5px;color:var(--color-neutral-700);flex-shrink:0}.row-preview{flex:1;color:var(--color-neutral-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-typing{flex:1;color:var(--color-accent-600)}.row-actions{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.badge{min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--color-accent-600);color:#fff;font:600 11px/1 var(--font-body);display:inline-grid;place-items:center;flex-shrink:0}.tag{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:var(--radius-pill);background:var(--status-neutral-bg);color:var(--status-neutral-fg);font:600 11px/1 var(--font-body);flex-shrink:0}.empty{padding:32px 24px;text-align:center;color:var(--color-neutral-700)}.section{margin:12px 18px 4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-neutral-700)}.action-row{margin:8px 8px 0;width:calc(100% - 16px);font-weight:500}.check{width:20px;height:20px;border-radius:6px;border:1.5px solid var(--color-neutral-500);flex-shrink:0;display:grid;place-items:center;transition:background var(--t-fast) var(--ease-out)}.check.on{background:var(--color-ink);border-color:var(--color-ink)}.check.on:after{content:"";width:9px;height:5px;border:2px solid var(--color-on-ink);border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}.form{padding:12px 16px 0}.field{width:100%;height:var(--ctl-md);padding:0 12px;border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-surface);outline:none;font-size:13px;transition:border-color var(--t-fast) var(--ease-out),box-shadow var(--t-fast) var(--ease-out)}.field:hover{border-color:var(--color-neutral-400)}.field:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.field::placeholder{color:var(--color-neutral-700)}.hint{margin:8px 0 0;color:var(--color-neutral-700);font-size:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:var(--ctl-md);padding:0 16px;border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:500 13px/1 var(--font-body);white-space:nowrap;transition:background var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out)}.btn:hover:not(:disabled){background:var(--color-surface-2);border-color:var(--color-neutral-400)}.btn.primary{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-on-ink)}.btn.primary:hover:not(:disabled){background:var(--color-ink-hover);border-color:var(--color-ink-hover)}.btn:disabled{background:var(--color-neutral-200);border-color:transparent;color:var(--color-neutral-600)}.btn.danger{border-color:transparent;background:transparent;color:var(--status-danger-fg)}.btn.danger:hover:not(:disabled){background:var(--status-danger-bg)}.btn.wide{margin:8px 16px;width:calc(100% - 32px)}.link{height:24px;padding:0 8px;border-radius:var(--radius-sm);background:var(--color-tint);font-size:12px;font-weight:500;color:var(--color-text)}.link:hover{background:var(--color-tint-hover)}.link.danger,.danger{color:var(--status-danger-fg)}.link.danger:hover{background:var(--status-danger-bg)}.footer{padding:12px 16px 14px;border-top:1px solid var(--color-divider);display:flex;justify-content:flex-end;gap:8px;flex-shrink:0;background:var(--color-surface)}.error{margin:6px 16px;color:var(--status-danger-fg);font-size:12.5px}.info-head{display:flex;flex-direction:column;align-items:center;gap:12px;padding:22px 16px 8px}.info-head h2{margin:0;font-size:18px;font-weight:600}.rename{display:flex;gap:8px;width:100%}.conv{background-color:var(--color-page);background-image:var(--page-glow);background-attachment:local}.messages{flex:1;overflow-y:auto;padding:10px 12px 14px}.day{display:flex;justify-content:center;margin:12px 0 8px}.day span,.system{font-size:11.5px;font-weight:500;color:var(--color-neutral-700);background:var(--color-surface);box-shadow:var(--shadow-sm);padding:4px 10px;border-radius:var(--radius-pill)}.system{display:table;margin:8px auto;text-align:center;max-width:85%;border-radius:var(--radius-md)}.unread-line{text-align:center;font-size:11.5px;font-weight:600;color:var(--color-accent-700);margin:10px 0;padding:4px;background:var(--color-accent-100);border-radius:var(--radius-pill)}.msg{display:flex;flex-direction:column;align-items:flex-start;margin-top:4px;position:relative}.msg.mine{align-items:flex-end}.bubble{max-width:min(80%,520px);padding:7px 11px 6px;border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm),0 1px 1px #14192d0d;cursor:pointer;overflow-wrap:anywhere;font-size:var(--msg-size)}.mine .bubble{background:var(--bubble-mine);border-bottom-right-radius:var(--radius-xs)}.msg:not(.mine) .bubble{border-bottom-left-radius:var(--radius-xs)}.bubble.deleted{font-style:italic;color:var(--color-neutral-700);cursor:default}.who{font-size:12px;font-weight:600;color:var(--color-accent-600);margin-bottom:2px}.text{white-space:pre-wrap;line-height:1.42}.meta{float:right;display:inline-flex;align-items:center;gap:4px;margin:7px 0 -2px 10px;font-size:11px;color:var(--color-neutral-700)}.ticks{color:var(--color-neutral-600);display:inline-flex}.ticks.read{color:var(--color-accent-600)}.quote{display:flex;flex-direction:column;border-left:3px solid var(--color-accent);padding:3px 8px;margin:2px 0 5px;background:var(--color-accent-100);border-radius:var(--radius-xs);font-size:12.5px}.quote b{color:var(--color-accent-600);font-weight:600}.quote span{color:var(--color-neutral-800);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.failed{display:flex;align-items:center;gap:6px;margin-top:3px;font-size:12px}.failed button{color:var(--status-danger-fg);display:inline-flex}.menu{position:absolute;top:100%;z-index:5;margin-top:6px;min-width:180px;background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-float);padding:4px}.msg:not(.mine) .menu{left:0}.msg.mine .menu{right:0}.menu button{width:100%;display:flex;align-items:center;gap:10px;height:34px;padding:0 10px;border-radius:var(--radius-sm);text-align:left;font-weight:500;transition:background var(--t-fast) var(--ease-out)}.menu button:hover{background:var(--color-neutral-200)}.menu button.danger:hover{background:var(--status-danger-bg)}.composer{background:var(--color-surface);border-top:1px solid var(--color-divider);padding:10px 12px;flex-shrink:0}.banner{display:flex;align-items:center;gap:10px;padding:0 2px 8px;color:var(--color-accent-600)}.banner-text{flex:1;min-width:0;display:flex;flex-direction:column;border-left:2px solid var(--color-accent);padding-left:8px}.banner-text b{font-size:12px}.banner-text span{color:var(--color-neutral-700);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compose-row{display:flex;align-items:flex-end;gap:8px}.compose-row textarea{flex:1;resize:none;min-height:40px;border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:10px 14px;background:var(--color-surface-2);outline:none;line-height:1.35;font-size:var(--msg-size);max-height:140px;overflow-y:hidden;transition:border-color var(--t-fast) var(--ease-out),box-shadow var(--t-fast) var(--ease-out)}.compose-row textarea::placeholder{color:var(--color-neutral-700)}.compose-row textarea:focus{border-color:var(--color-accent);background:var(--color-surface);box-shadow:var(--focus-ring)}.send{width:40px;height:40px;border-radius:50%;background:var(--color-ink);color:var(--color-on-ink);display:grid;place-items:center;flex-shrink:0;transition:background var(--t-fast) var(--ease-out)}.send:hover:not(:disabled){background:var(--color-ink-hover)}.send:disabled{background:var(--color-neutral-200);color:var(--color-neutral-600)}.settings{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:12px;background-color:var(--color-page);background-image:var(--page-glow)}.card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:14px;display:flex;flex-direction:column;gap:14px}.me-head{display:flex;align-items:center;gap:12px}.me-text{display:flex;flex-direction:column;min-width:0}.me-text b{font-size:15px;font-weight:600}.me-text span{color:var(--color-neutral-700);font-size:12.5px}.nick label,.setting-label{font-size:12.5px;font-weight:600}.nick{display:flex;flex-direction:column;gap:6px}.nick-row{display:flex;gap:8px}.field.with-prefix{display:flex;align-items:center;gap:2px;flex:1}.field.with-prefix:focus-within{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.field.with-prefix input{flex:1;min-width:0;border:0;outline:none;background:none;height:100%}.prefix{color:var(--color-neutral-700)}.hint.ok{color:var(--status-success-fg)}.hint.bad{color:var(--status-danger-fg)}.nick .hint{margin:0}.setting{display:flex;flex-direction:column;gap:8px}.seg{display:flex;padding:3px;gap:2px;border-radius:var(--radius-md);background:var(--color-neutral-200)}.seg button{flex:1;height:30px;border-radius:var(--radius-sm);font-size:12.5px;font-weight:500;color:var(--color-neutral-800);white-space:nowrap;transition:background var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out)}.seg button:hover:not(.on){color:var(--color-text)}.seg button.on{background:var(--color-ink);color:var(--color-on-ink)}.toggle-row{flex-direction:row;align-items:center;gap:12px;cursor:pointer}.toggle-text{flex:1;display:flex;flex-direction:column;gap:2px}.toggle-text .hint{margin:0}.switch{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:38px;height:22px;border-radius:999px;background:var(--color-neutral-400);position:relative;cursor:pointer;flex-shrink:0;margin:0;transition:background var(--t-fast) var(--ease-out)}.switch:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm);transition:transform var(--t) var(--ease-out)}.switch:checked{background:var(--color-ink)}.switch:checked:after{transform:translate(16px);background:var(--color-on-ink)}.settings{overflow-x:hidden}.field.with-prefix{width:auto;min-width:0}.nick-row .btn{flex-shrink:0}.seg button{min-width:0;padding:0 6px;overflow:hidden;text-overflow:ellipsis}.list,.messages,.settings,.compose-row textarea{overflow-x:hidden}@supports not selector(::-webkit-scrollbar){.list,.messages,.settings,.compose-row textarea{scrollbar-width:thin;scrollbar-color:transparent transparent}.list:hover,.messages:hover,.settings:hover,.compose-row textarea:hover{scrollbar-color:var(--color-neutral-400) transparent}}.list::-webkit-scrollbar,.messages::-webkit-scrollbar,.settings::-webkit-scrollbar,.compose-row textarea::-webkit-scrollbar{width:6px;height:0}.list::-webkit-scrollbar-track,.messages::-webkit-scrollbar-track,.settings::-webkit-scrollbar-track,.compose-row textarea::-webkit-scrollbar-track{background:transparent}.list::-webkit-scrollbar-thumb,.messages::-webkit-scrollbar-thumb,.settings::-webkit-scrollbar-thumb,.compose-row textarea::-webkit-scrollbar-thumb{background:transparent;border-radius:var(--radius-xs)}.list:hover::-webkit-scrollbar-thumb,.messages:hover::-webkit-scrollbar-thumb,.settings:hover::-webkit-scrollbar-thumb,.compose-row textarea:hover::-webkit-scrollbar-thumb{background:var(--color-neutral-400)}.list::-webkit-scrollbar-button,.messages::-webkit-scrollbar-button,.settings::-webkit-scrollbar-button,.compose-row textarea::-webkit-scrollbar-button{display:none}html,body{overflow:hidden}:root{--solid-blue: #4f6ef0;--solid-blue-hover: #3a55cc}.av-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;border-radius:50%}.av .av-dot{z-index:1;right:-1px;bottom:-1px;width:30%;height:30%;min-width:10px;min-height:10px;max-width:16px;max-height:16px;box-sizing:border-box;border:2px solid var(--color-surface)}.row:hover .av .av-dot{border-color:var(--color-surface-2)}.bubble.media{padding:4px;position:relative}.bubble.media .who,.bubble.media .quote{margin:2px 6px 4px}.bubble.media .cap{padding:6px 7px 2px}.bubble.media .cap .text{display:inline}.body-line:after,.cap:after{content:"";display:block;clear:both}.bubble.att{min-width:0}.att-image{position:relative;max-width:100%;border-radius:calc(var(--radius-md) - 4px);overflow:hidden;background:var(--color-neutral-200);cursor:zoom-in}.att-image img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block}.att-cover{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#00000059;color:#fff;cursor:default}.meta.over{position:absolute;right:10px;bottom:9px;margin:0;padding:2px 7px;border-radius:var(--radius-pill);background:#00000073;color:#fff}.meta.over .ticks,.meta.over .ticks.read{color:#fff}.progress-ring{position:relative;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;color:inherit;flex-shrink:0}.progress-ring svg:first-child{position:absolute;top:0;right:0;bottom:0;left:0}.progress-ring svg+svg{width:16px;height:16px}.att-file{display:flex;align-items:center;gap:10px;padding:2px 0 4px;min-width:200px}.att-file .progress-ring,.att-voice .progress-ring{background:var(--color-accent-100);color:var(--color-accent-600)}.att-file-icon{position:relative;width:44px;height:44px;border-radius:var(--radius-md);background:var(--solid-blue);color:#fff;display:grid;place-items:center;flex-shrink:0;text-decoration:none}.att-file-icon .ext{font:700 10.5px/1 var(--font-body);letter-spacing:.02em}.att-file-icon .dl{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border-radius:inherit;background:var(--solid-blue-hover);opacity:0;transition:opacity var(--t-fast) var(--ease-out)}.att-file-icon:hover .dl{opacity:1}.att-file-text{display:flex;flex-direction:column;min-width:0;gap:2px}.att-file-text b{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.att-file-text span{font-size:12px;color:var(--color-neutral-700)}.att-voice{display:flex;align-items:center;gap:10px;padding:2px 0 4px}.voice-btn{width:40px;height:40px;border-radius:50%;background:var(--solid-blue);color:#fff;display:grid;place-items:center;flex-shrink:0;padding-left:2px}.voice-btn:hover{background:var(--solid-blue-hover)}.voice-body{flex:0 1 auto;display:flex;flex-direction:column;gap:3px;min-width:124px}.wave{height:26px;max-width:100%;display:flex;align-items:center;gap:2px;cursor:pointer;overflow:hidden}.wave i{flex:0 0 3px;border-radius:2px;background:var(--color-neutral-500)}.wave i.on{background:var(--color-accent-600)}.voice-time{font-size:11.5px;color:var(--color-neutral-700)}.bubble.att.nocap .meta{float:none;display:flex;justify-content:flex-end;margin:-17px 0 0 auto;width:max-content}.bubble.att.nocap .att-voice,.bubble.att.nocap .att-file{padding-bottom:0}.bubble.att.nocap .voice-time,.bubble.att.nocap .att-file-text span{padding-right:64px}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0a0a0ce0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 16px 16px}.lightbox img{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--radius-sm);box-shadow:0 18px 40px #00000080}.lightbox-bar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:6px;padding:10px 12px;color:#fff}.lightbox-bar span{flex:1;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lightbox-bar .icon-btn{color:#fff}.lightbox-bar .icon-btn:hover{background:#ffffff1f;color:#fff}.sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;background:#0a0c1459;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:520px;max-height:80%;display:flex;flex-direction:column;background:var(--color-surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-float)}@media(min-width:720px){.sheet-backdrop{align-items:center}.sheet{border-radius:var(--radius-lg)}}.sheet-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 6px;font-size:15px}.sheet-list{overflow-y:auto;padding:4px 14px;display:flex;flex-direction:column;gap:8px}.sheet-item{display:flex;align-items:center;gap:10px;min-width:0}.sheet-item img,.sheet-ext{width:52px;height:52px;border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0}.sheet-ext{display:grid;place-items:center;background:var(--solid-blue);color:#fff;font:700 11px/1 var(--font-body)}.sheet-item.bad{opacity:.55}.sheet-text{display:flex;flex-direction:column;min-width:0}.sheet-text b{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sheet-text span{font-size:12px;color:var(--color-neutral-700)}.sheet-foot{display:flex;gap:8px;padding:12px 14px 14px;border-top:1px solid var(--color-divider);margin-top:8px}.drop-zone{position:absolute;top:64px;right:12px;bottom:72px;left:12px;z-index:30;display:grid;place-items:center;border:2px dashed var(--color-accent);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-surface) 80%,transparent);color:var(--color-accent-600);font-weight:600;pointer-events:none}.compose-row.recording{align-items:center}.rec-dot{width:10px;height:10px;border-radius:50%;background:var(--status-danger-solid);animation:rec 1s infinite;flex-shrink:0}@keyframes rec{50%{opacity:.25}}.rec-time{font-variant-numeric:tabular-nums;font-weight:500;min-width:40px}.rec-wave{flex:1;height:28px;display:flex;align-items:center;justify-content:flex-end;gap:2px;overflow:hidden}.rec-wave i{width:3px;border-radius:2px;background:var(--color-accent-600);flex-shrink:0}.compose-error{margin:0 4px 6px}.to-bottom{position:absolute;right:16px;bottom:76px;z-index:6;width:40px;height:40px;border-radius:50%;background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-md);display:grid;place-items:center}.to-bottom svg{transform:rotate(-90deg)}.to-bottom .badge{position:absolute;top:-6px;right:-4px}.person-head,.info-head{align-items:center;text-align:center}.person-head h2,.info-head h2{margin:0;font-size:18px;font-weight:600}.info-rows{gap:0;padding:4px 14px}.info-row{display:flex;flex-direction:column;gap:2px;padding:10px 0;border-bottom:1px solid var(--color-divider)}.info-row:last-child{border-bottom:0}.info-label{font-size:11.5px;color:var(--color-neutral-700)}.info-value{font-size:14px;overflow-wrap:anywhere}.info-value.multi{white-space:pre-wrap}.link-phone{display:inline-flex;align-items:center;gap:8px;color:var(--color-accent-600);text-decoration:none;font-weight:500}.photo-avatar{display:inline-flex;flex-direction:column;align-items:center;gap:6px;flex-shrink:0}.photo-avatar-pic{position:relative;display:inline-flex}.photo-avatar-pic.busy .av{opacity:.55}.photo-cam{position:absolute;right:-4px;bottom:-2px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--color-ink);color:var(--color-on-ink);border:2px solid var(--color-surface);box-shadow:var(--shadow-sm);transition:background var(--t-fast) var(--ease-out),transform var(--t-fast) var(--ease-out)}.photo-cam:hover:not(:disabled){background:var(--color-ink-hover);transform:scale(1.06)}.photo-cam svg{width:14px;height:14px}.photo-remove{position:absolute;right:-4px;top:-2px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--color-surface);color:var(--color-neutral-800);border:1px solid var(--color-divider);box-shadow:var(--shadow-sm)}.photo-remove:hover:not(:disabled){color:var(--status-danger-fg);background:var(--status-danger-bg)}.photo-remove svg{width:12px;height:12px}.photo-avatar .hint{margin:0;text-align:center}.form-gap{margin-top:8px}.field.area{height:auto;padding:9px 12px;resize:vertical;min-height:64px;line-height:1.4}.nick.full{width:100%;text-align:left}.nick .btn{align-self:flex-end}.group-desc{margin:0;white-space:pre-wrap;color:var(--color-neutral-800)}.members-card{padding:10px 6px;gap:6px}.members-card>.btn{margin:0 8px}.list.plain{padding:0;overflow:visible}.member-who{flex:1;min-width:0;display:flex;align-items:center;gap:12px;text-align:left}.settings>.btn.wide{margin:0;width:100%}.view.conv{position:relative}.search-clear{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;color:var(--color-neutral-700);flex-shrink:0}.search-clear:hover{background:var(--color-neutral-200);color:var(--color-text)}.search-clear svg{width:12px;height:12px}.members-card .search{margin:0 8px}.members-head{display:flex;align-items:center;justify-content:space-between;padding:2px 8px}.members-head b{font-size:13px;font-weight:600}.btn.small{height:var(--ctl-sm);padding:0 12px;font-size:12px;border-radius:var(--radius-sm)}.member-row{position:relative}.more-wrap{position:relative;flex-shrink:0}.icon-btn.more{font-size:18px;line-height:1;letter-spacing:1px;color:var(--color-neutral-700)}.member-menu{right:0;top:100%;min-width:190px}
