:root{color-scheme:dark;--bg: #0e1014;--panel: #161a21;--panel-2: #1c212b;--line: #2a3140;--text: #e8eaed;--muted: #8b919c;--accent: #6ea8fe;--accent-dim: #243044;--ok: #3dd68c;--bad: #ff6b6b;--mine: #2a3d5c;--theirs: #222733;--sys: #8b919c;font-family:ui-sans-serif,system-ui,-apple-system,PingFang SC,sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--text)}button,input{font:inherit;color:inherit}button{cursor:pointer}.hidden{display:none!important}.muted{color:var(--muted)}.mobile{display:none}.gate{min-height:100%;display:grid;place-items:center;padding:24px;background:radial-gradient(900px 420px at 20% -10%,rgba(110,168,254,.12),transparent 55%),var(--bg)}.card{width:min(400px,100%);background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:32px 28px 24px}.mark{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--accent-dim);color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.06em;margin-bottom:16px}.card h1{margin:0 0 8px;font-size:22px;font-weight:650}.card p{margin:0 0 22px;color:var(--muted);font-size:13px;line-height:1.55}.card label{display:block;font-size:12px;color:var(--muted)}.card input,.dialog input,.composer input{width:100%;margin-top:8px;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px 12px}.card button,.dialog button[type=submit],.composer button,.me .ghost{margin-top:16px;border:0;border-radius:10px;padding:10px 14px;background:var(--accent);color:#0b1220;font-weight:650}.err{min-height:1.2em;margin-top:10px;color:var(--bad);font-size:12px}.shell{height:100dvh;display:grid;grid-template-columns:280px 1fr 240px;background:var(--bg)}.nav,.people{background:var(--panel);border-right:1px solid var(--line);display:flex;flex-direction:column;min-width:0}.people{border-right:0;border-left:1px solid var(--line)}.me,.chat-bar,.people header{display:flex;align-items:center;gap:10px;padding:14px;border-bottom:1px solid var(--line)}.me-meta{flex:1;min-width:0}.me-meta strong,.chat-title strong{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.state{font-size:11px;color:var(--muted)}.state.on{color:var(--ok)}.state.off{color:var(--bad)}.me .ghost{margin:0;background:var(--panel-2);color:var(--text);padding:6px 10px;font-size:12px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:14px;font-weight:650;color:#0b1220;flex:0 0 auto}.convs,.people-list,.log{flex:1;overflow:auto}.conv,.person{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border:0;background:transparent;color:inherit;text-align:left}.conv:hover,.person:hover{background:var(--panel-2)}.conv.active{background:var(--accent-dim)}.conv-body,.person-body{min-width:0;flex:1}.conv-body strong,.person-body strong{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview,.role{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dot{width:8px;height:8px;border-radius:50%;background:#3a4150}.dot.on{background:var(--ok)}.chat{display:flex;flex-direction:column;min-width:0;background:#12151b}.chat-title{flex:1;min-width:0}.chat-title .muted{font-size:12px}.icon{border:0;background:transparent;color:var(--text);font-size:22px;padding:0 6px}.log{padding:16px;display:flex;flex-direction:column;gap:10px}.msg{max-width:min(72%,520px);padding:8px 12px;border-radius:12px;background:var(--theirs);font-size:14px;line-height:1.5}.msg.mine{align-self:flex-end;background:var(--mine)}.msg .who{font-size:12px;color:var(--accent);margin-bottom:2px}.msg .meta{color:var(--muted);font-size:11px;margin-top:4px}.sys{align-self:center;color:var(--sys);font-size:12px;padding:4px 0}.composer{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line);background:var(--panel)}.composer input{margin:0}.composer button{margin:0;white-space:nowrap}.people header{font-weight:650}.hint{margin:0;padding:12px 14px 16px;color:var(--muted);font-size:12px}.dialog{border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--text);padding:0;width:min(420px,calc(100vw - 32px))}.dialog::backdrop{background:#0000008c}.dialog form{padding:22px}.dialog h2{margin:0 0 14px;font-size:18px}.dialog input{margin:0 0 12px}.pick{max-height:240px;overflow:auto;border:1px solid var(--line);border-radius:10px}.pick label{display:flex;align-items:center;gap:8px;padding:8px 10px;font-size:14px}.pick input{width:auto;margin:0}.actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.dialog .ghost{background:var(--panel-2);color:var(--text);border:0;border-radius:10px;padding:10px 14px}@media(max-width:860px){.mobile{display:inline-flex}.shell{grid-template-columns:1fr}.nav,.people{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2}.nav{transform:translate(-100%);transition:transform .2s ease}.people{transform:translate(100%);transition:transform .2s ease}.shell.show-nav .nav,.shell.show-people .people{transform:none}}
