:root{--bg: #ffffff;--bg-soft: #f4f4f5;--bg-chat: #efeae4;--text: #18181b;--muted: #71717a;--line: #e4e4e7;--accent: #ea580c;--accent-ink: #ffffff;--mine: #ffe8d6;--mine-ink: #18181b;--theirs: #ffffff;--tick: #71717a;--tick-read: #c2410c;--warn-bg: #fef3c7;--warn-ink: #92400e;--danger: #dc2626;--chip-warn-bg: #ffedd5;--chip-warn-ink: #9a3412;--chip-danger-bg: #fee2e2;--chip-danger-ink: #991b1b;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: #18181b;--bg-soft: #27272a;--bg-chat: #0f0f10;--text: #f4f4f5;--muted: #a1a1aa;--line: #333338;--mine: #7c2d12;--mine-ink: #fff7ed;--theirs: #27272a;--tick: #fdba74;--tick-read: #ffffff;--warn-bg: #451a03;--warn-ink: #fde68a;--chip-warn-bg: #431407;--chip-warn-ink: #fdba74;--chip-danger-bg: #450a0a;--chip-danger-ink: #fca5a5}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font:15px/1.4 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif;overscroll-behavior:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.55}input,textarea{font:inherit;font-size:16px;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}textarea:focus-visible{outline:none;border-color:var(--accent)}.splash,.pane-empty{height:100%;display:flex;align-items:center;justify-content:center;color:var(--muted)}.pane-empty{background:var(--bg-chat)}.login{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--bg-soft)}.login-card{width:100%;max-width:360px;background:var(--bg);padding:28px 24px;border-radius:16px;display:flex;flex-direction:column;gap:14px;text-align:center;border:1px solid var(--line)}.login-card img{align-self:center;border-radius:16px}.login-card h1{margin:0;font-size:22px}label{display:flex;flex-direction:column;gap:4px;text-align:left;font-size:13px;color:var(--muted)}label input,label textarea{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text)}.btn-primary{padding:12px;border:0;border-radius:10px;background:var(--accent);color:var(--accent-ink);font-weight:600}.form-error{margin:0;color:var(--danger);font-size:14px}.form-note{margin:0;color:var(--muted);font-size:14px}.app{height:100dvh;display:grid;grid-template-columns:360px 1fr;overflow:hidden}.sidebar{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--line);padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left)}.sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 6px 16px}.sidebar-head h1{margin:0;font-size:22px}.icon-btn{width:44px;height:44px;flex:none;display:flex;align-items:center;justify-content:center;border:0;background:none;border-radius:50%;color:var(--muted)}.icon-btn:hover{background:var(--bg-soft)}.sidebar-tools{padding:4px 12px 8px;display:flex;flex-direction:column;gap:8px}.sidebar-tools input{width:100%;padding:9px 12px;border:0;border-radius:10px;background:var(--bg-soft)}.tabs{display:flex;gap:4px;background:var(--bg-soft);padding:3px;border-radius:10px}.tab{flex:1;padding:7px;border:0;background:none;border-radius:8px;font-size:14px;color:var(--muted)}.tab.active{background:var(--bg);color:var(--text);font-weight:600}.banner{padding:8px 14px;font-size:13px}.banner-warn{background:var(--warn-bg);color:var(--warn-ink)}.chat-list{flex:1;overflow-y:auto;min-height:0;padding-bottom:env(safe-area-inset-bottom)}.list-empty{text-align:center;color:var(--muted);padding:32px 16px;margin:0}.chat-item{width:100%;display:flex;gap:12px;padding:10px 14px;border:0;background:none;text-align:left;align-items:flex-start}.chat-item:hover{background:var(--bg-soft)}.chat-item.selected{background:var(--mine);color:var(--mine-ink)}.avatar{width:46px;height:46px;flex:none;border-radius:50%;background:#18181b;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600}.chat-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.chat-item-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.chat-item-title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-item-time{font-size:12px;color:var(--muted);flex:none}.chat-item-preview{color:var(--muted);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-item.selected .chat-item-preview,.chat-item.selected .chat-item-time,.chat-item.selected .assigned{color:inherit;opacity:.8}.chat-item-preview.typing{color:var(--accent)}.you{color:var(--text)}.unread{flex:none;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--accent);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}.chat-item-meta{min-height:18px}.assigned{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip{flex:none;padding:1px 7px;border-radius:8px;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.chip-warn{background:var(--chip-warn-bg);color:var(--chip-warn-ink)}.chip-danger{background:var(--chip-danger-bg);color:var(--chip-danger-ink)}.chip-muted{background:var(--bg-soft);color:var(--muted)}.pane{min-width:0;min-height:0;height:100%;overflow:hidden}.chat,.settings{height:100%;display:flex;flex-direction:column;min-height:0}.chat-head{display:flex;align-items:center;gap:6px;padding:6px 8px;padding-top:calc(6px + env(safe-area-inset-top));padding-right:calc(8px + env(safe-area-inset-right));border-bottom:1px solid var(--line);background:var(--bg);position:relative;z-index:2}.chat-head-main{flex:1;min-width:0;padding:0 6px}.chat-head-title{font-weight:600;display:flex;align-items:center;gap:8px}.chat-head-sub{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.back{display:none}.btn-small{padding:8px 14px;border-radius:9px;border:0;background:var(--accent);color:#fff;font-weight:600;font-size:14px;min-height:38px}.btn-plain{background:var(--bg-soft);color:var(--text)}.menu-wrap{position:relative}.menu{position:absolute;right:0;top:46px;min-width:220px;background:var(--bg);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 8px 24px #0000002e}.menu button{display:block;width:100%;padding:12px 14px;border:0;background:none;text-align:left}.menu button:hover{background:var(--bg-soft)}.menu .danger{color:var(--danger)}.page-link{display:block;padding:7px 14px;font-size:13px;background:var(--bg-soft);color:var(--accent);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-bottom:1px solid var(--line)}.messages{flex:1;min-height:0;overflow-y:auto;padding:12px;background:var(--bg-chat);overscroll-behavior:contain}.day-sep{text-align:center;margin:10px 0}.day-sep span{font-size:12px;padding:3px 10px;border-radius:10px;background:#00000059;color:#fff}.bubble-row{display:flex;flex-direction:column;margin:3px 0}.bubble-row.left{align-items:flex-start}.bubble-row.right{align-items:flex-end}.bubble{max-width:min(75%,560px);padding:7px 10px 5px;border-radius:14px;word-wrap:break-word;overflow-wrap:anywhere}.bubble.theirs{background:var(--theirs);border-bottom-left-radius:4px}.bubble.mine{background:var(--mine);color:var(--mine-ink);border-bottom-right-radius:4px}.bubble-text{white-space:pre-wrap}.bubble a{color:inherit;text-decoration:underline}.bubble-meta{float:right;display:inline-flex;align-items:center;gap:3px;margin:5px 0 0 10px;font-size:11px;opacity:.75;line-height:1}.ticks{width:18px;height:14px;color:var(--tick)}.ticks-read{color:var(--tick-read)}.retry{margin-top:3px;border:0;background:none;color:var(--danger);font-size:13px;padding:4px}.composer{display:flex;align-items:flex-end;gap:8px;padding:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom));padding-right:calc(8px + env(safe-area-inset-right));border-top:1px solid var(--line);background:var(--bg)}.composer textarea{flex:1;resize:none;padding:10px 14px;border-radius:20px;border:1px solid var(--line);background:var(--bg-soft);max-height:140px;line-height:1.3}.send{width:44px;height:44px;flex:none;border-radius:50%;border:0;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center}.settings-body{flex:1;overflow-y:auto;padding:14px;padding-bottom:calc(14px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:14px;background:var(--bg-soft)}.settings-card{background:var(--bg);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:12px;max-width:560px;width:100%;align-self:center}.settings-card h3{margin:0;font-size:16px}.settings-card p,.settings-card ol{margin:0}.settings-card ol{padding-left:20px;display:flex;flex-direction:column;gap:4px}.switch-row{flex-direction:row;align-items:center;justify-content:space-between;gap:12px;color:var(--text);font-size:15px}.switch-row small{display:block;color:var(--muted);font-size:13px}.switch-row input{width:22px;height:22px;accent-color:var(--accent);flex:none}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.button-row{display:flex;gap:8px}.btn-plain-wide{max-width:560px;width:100%;align-self:center;padding:12px;border-radius:12px;border:0;background:var(--bg);color:var(--danger)}@media(max-width:760px){.app{grid-template-columns:1fr}.sidebar{border-right:0}.app .pane,.app.pane-open .sidebar{display:none}.app.pane-open .pane{display:block}.back{display:flex}.bubble{max-width:85%}}
