:root{--bg:#0f1216;--panel:#171b21;--panel-2:#1e242c;--surface-hover:#252d37;--surface-active:#2c3541;--border:#2a323d;--border-strong:#3a4552;--text:#e7ecf1;--text-2:#a9b4c0;--muted:#8b96a3;--accent:#22c55e;--accent-dark:#15803d;--danger:#ef4444;--amber:#f59e0b;--bubble-in:#1e242c;--bubble-out:#14532d;--info:#38bdf8;--space-2xs:2px;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--fs-11:11px;--fs-12:12px;--fs-13:13px;--fs-14:14px;--fs-16:16px;--fs-18:18px;--fs-22:22px;--lh-tight:1.25;--lh:1.45;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:999px;--control-sm:28px;--control-md:32px;--control-lg:40px;--shadow-1:0 1px 2px #0006;--shadow-2:0 10px 30px -8px #0009;--dur-fast:.11s;--dur:.17s;--ease:cubic-bezier(.2, .7, .3, 1);--focus-ring:0 0 0 2px var(--bg), 0 0 0 4px var(--accent)}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:var(--fs-14);line-height:var(--lh);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}.hidden{display:none!important}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}button{cursor:pointer;font:inherit;color:inherit}button:disabled{cursor:default;opacity:.5}:where(button,a,input,textarea,select,[tabindex]):focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:none}input,textarea,select{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-md);height:var(--control-lg);transition:border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);outline:none;padding:0 10px}textarea{height:auto;line-height:var(--lh);padding:9px 10px}select{padding-right:6px}select[multiple]{height:auto;padding:var(--space-xs) var(--space-2xs)}select[multiple] option{border-radius:var(--radius-sm);padding:5px 8px}input[type=file]{height:auto;font-size:var(--fs-13);color:var(--text-2);padding:6px}input[type=file]::file-selector-button{height:var(--control-sm);margin-right:var(--space-sm);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);font:inherit;font-size:var(--fs-12);cursor:pointer;padding:0 12px;font-weight:500}input[type=file]::file-selector-button:hover{background:var(--surface-hover);border-color:var(--border-strong)}input:hover,textarea:hover,select:hover{border-color:var(--border-strong)}input:focus,textarea:focus,select:focus{border-color:var(--accent-dark);background:var(--bg)}::placeholder{color:var(--muted);opacity:1}.icon{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.28em;flex:none;width:1.25em;height:1.25em}.icon-sprite{width:0;height:0;position:absolute;overflow:hidden}.login-view{justify-content:center;align-items:center;min-height:100dvh;display:flex}.login-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-2xl);gap:var(--space-md);text-align:center;flex-direction:column;width:340px;display:flex}.login-card h1{font-size:var(--fs-22);letter-spacing:-.02em;margin:0;font-weight:700}.login-card h1 span,.sidebar-header h1 span{color:var(--accent)}.login-card p{color:var(--muted);margin:0 0 8px}.login-card button,.primary-btn{justify-content:center;align-items:center;gap:var(--space-sm);height:var(--control-lg);padding:0 var(--space-lg);background:var(--accent-dark);color:#fff;border-radius:var(--radius-md);font-size:var(--fs-14);transition:background var(--dur-fast) var(--ease);border:none;font-weight:600;display:inline-flex}.login-card button:hover,.primary-btn:hover{background:#166534}.login-card button:active,.primary-btn:active{background:#14532d}.form-error{color:var(--danger);font-size:13px}.ms-login-btn{justify-content:center;align-items:center;gap:10px;display:flex}.ms-logo{flex:none;width:16px;height:16px}.login-hint{color:var(--muted);font-size:12.5px}.app{height:100dvh;display:flex;position:relative}.app.connection-degraded{padding-top:42px}.connection-banner{z-index:50;justify-content:center;align-items:center;gap:var(--space-md);min-height:42px;padding:7px var(--space-lg);color:#fef3c7;background:#78350f;border-bottom:1px solid #f59e0b8c;font-size:13px;font-weight:600;display:flex;position:absolute;inset:0 0 auto}.connection-banner .small-btn{color:#fff7ed;background:#0f121659;border-color:#fff7ed73}.sidebar{background:var(--panel);border-right:1px solid var(--border);flex-direction:column;flex:none;width:340px;min-width:260px;display:flex;overflow:hidden;container:sidebar/inline-size}.sidebar-header{align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-md) var(--space-md) var(--space-lg);border-bottom:1px solid var(--border);display:flex}.sidebar-header h1{font-size:var(--fs-16);letter-spacing:-.01em;flex:none;margin:0;font-weight:700}.user-chip{text-align:right;flex-direction:column;flex:1;justify-content:center;min-width:0;margin:0;line-height:1.3;display:flex}.user-chip span{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:600;overflow:hidden}.user-chip small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.section-title{justify-content:space-between;align-items:center;gap:var(--space-sm);min-height:var(--control-md);padding:var(--space-lg) var(--space-sm) var(--space-xs) var(--space-lg);color:var(--muted);font-size:var(--fs-11);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;text-overflow:ellipsis;font-weight:600;display:flex;overflow:hidden}.small-btn,.ghost-btn{justify-content:center;align-items:center;gap:var(--space-xs);height:var(--control-sm);background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-md);font-size:var(--fs-12);white-space:nowrap;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);padding:0 10px;font-weight:500;display:inline-flex}.small-btn:hover,.ghost-btn:hover{background:var(--surface-hover);border-color:var(--border-strong)}.small-btn:active,.ghost-btn:active{background:var(--surface-active)}.small-btn.is-destructive:hover,.small-btn.is-destructive:focus-visible{color:#fca5a5;background:#ef44441f;border-color:#ef444480}.team-bar{align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-sm) var(--space-sm) var(--space-lg);border-bottom:1px solid var(--border);min-height:48px;display:flex}.team-name{min-width:0;font-size:var(--fs-13);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.team-select{flex:1;min-width:0;padding:5px 8px;font-size:13px}.icon-btn{width:var(--control-md);height:var(--control-md);color:var(--muted);font-size:var(--fs-14);border-radius:var(--radius-md);transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.icon-btn:hover{color:var(--text);background:var(--surface-hover)}.icon-btn:active{background:var(--surface-active)}.icon-btn:disabled:hover{color:var(--muted);background:0 0}.instance-list{flex:1;margin:0;padding:0 8px 12px;list-style:none;overflow-y:auto}.instance-list li{gap:var(--space-2xs);padding:var(--space-sm);border-radius:var(--radius-md);font-size:var(--fs-13);flex-direction:column;display:flex}.instance-list li:hover{background:var(--panel-2)}.instance-head{align-items:center;gap:8px;display:flex}.instance-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.instance-bottom{align-items:center;gap:6px;padding-left:16px;display:flex}.instance-actions{align-items:center;gap:var(--space-2xs);flex:none;margin-left:auto;display:flex}.instance-list .dot{border-radius:50%;flex:none;width:8px;height:8px}.dot.connected{background:var(--accent);box-shadow:0 0 0 3px #22c55e29}.dot.connecting{background:var(--amber)}.dot.created,.dot.disconnected{background:var(--danger)}.instance-list .status{white-space:nowrap;color:var(--muted);background:var(--panel-2);border:1px solid var(--border);border-radius:999px;flex:none;padding:1px 7px;font-size:10.5px;font-weight:600}.instance-list .status.connected{color:var(--accent);background:#22c55e1f;border-color:#22c55e59}.instance-list .status.connecting{color:var(--amber);background:#f59e0b1f;border-color:#f59e0b59}.instance-list .status.disconnected,.instance-list .status.created{color:var(--danger);background:#ef44441f;border-color:#ef444459}.instance-meta{align-items:baseline;gap:5px;min-width:0;font-size:11.5px;display:flex;overflow:hidden}.instance-phone{color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}.instance-profile{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.instance-profile:before{content:"· "}.instance-actions>button{width:var(--control-sm);height:var(--control-sm);border-radius:var(--radius-sm);color:var(--muted);font-size:var(--fs-12);transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.instance-actions>button:hover{background:var(--surface-hover)}.instance-list .settings-btn:hover{color:var(--info)}.instance-list .repair-btn:hover,.instance-list .reconnect-btn:hover{color:var(--accent)}.instance-list .reconnect-btn.is-busy{color:var(--accent);cursor:progress}.instance-list .reconnect-btn.is-busy .icon{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.instance-list .reconnect-btn.is-busy .icon{animation:none}.instance-list .reconnect-btn.is-busy{opacity:.7}}.instance-list .delete-btn:hover{color:var(--danger)}.instance-list .transfer-btn:hover{color:var(--accent)}.numbers .empty-inline{color:var(--muted);padding:4px 16px 8px;font-size:12px}.transfer-target{color:var(--muted);margin:0;font-size:13px}.conversations{flex-direction:column;flex:1;display:flex;overflow:hidden}.search-field{margin:0 var(--space-md) var(--space-sm);align-items:center;display:flex;position:relative}.search-field>.icon{color:var(--muted);pointer-events:none;position:absolute;left:11px}.search-field input{width:100%;height:var(--control-md);font-size:var(--fs-13);padding-left:34px}.search-field input:focus~.icon,.search-field:focus-within>.icon{color:var(--text-2)}.conversation-list{padding:0 var(--space-sm) var(--space-md);flex:1;margin:0;list-style:none;overflow-y:auto}.conversation-list li{border-radius:var(--radius-lg);transition:background var(--dur-fast) var(--ease);align-items:center;display:flex;position:relative}.conv-open{align-items:center;gap:var(--space-md);min-width:0;padding:var(--space-sm);border-radius:var(--radius-lg);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;display:flex}.conv-open:focus-visible{border-radius:var(--radius-lg)}.conv-menu-btn:focus-visible{border-radius:var(--radius-md);opacity:1;pointer-events:auto}.conversation-list li:hover{background:var(--surface-hover)}.conversation-list li.active{background:var(--surface-active)}.conv-main{gap:var(--space-2xs);flex-direction:column;flex:1;min-width:0;display:flex}.conv-top{align-items:baseline;gap:var(--space-sm);display:flex}.conv-top .who{font-weight:600;font-size:var(--fs-14);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.conv-top .time{color:var(--muted);font-size:var(--fs-11);font-variant-numeric:tabular-nums;flex:none;margin-left:auto}.conv-bottom{align-items:center;gap:var(--space-sm);display:flex}.conv-bottom .preview{color:var(--muted);font-size:var(--fs-13);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.conversation-list li.is-unread .who{color:var(--text)}.conversation-list li.is-unread .conv-bottom .preview{color:var(--text-2);font-weight:500}.avatar{border-radius:var(--radius-pill);background:hsl(var(--avatar-h,152) 30% 24%);width:38px;height:38px;color:hsl(var(--avatar-h,152) 70% 84%);font-size:var(--fs-13);letter-spacing:.02em;-webkit-user-select:none;user-select:none;flex:none;justify-content:center;align-items:center;font-weight:700;display:flex;overflow:hidden}.avatar.is-group{border-radius:var(--radius-lg)}.avatar.avatar-sm{width:32px;height:32px;font-size:var(--fs-12)}.badge{min-height:18px;font-size:var(--fs-11);border-radius:var(--radius-pill);border:1px solid var(--border);color:var(--muted);flex:none;justify-content:center;align-items:center;padding:0 7px;font-weight:600;line-height:1;display:inline-flex}.badge.unread{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff;font-variant-numeric:tabular-nums;min-width:20px;font-weight:700}.badge.instance{background:var(--panel-2);color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:90px;overflow:hidden}.admin-panel{flex-direction:column;flex:1;min-height:0;display:flex}.admin-tabs{margin:var(--space-md) var(--space-lg);flex:none}.admin-body{padding:0 var(--space-lg) var(--space-xl);flex:1;overflow-y:auto}.admin-view,.admin-teams{gap:var(--space-md);flex-direction:column;display:flex}.admin-team{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel);padding:var(--space-md) var(--space-lg)}.admin-team-head{justify-content:space-between;align-items:baseline;gap:var(--space-md);display:flex}.admin-team-head strong{font-size:var(--fs-16)}.admin-team-head small{color:var(--muted);font-size:var(--fs-12);white-space:nowrap}.admin-team-admins{margin-top:var(--space-xs);color:var(--text-2);font-size:var(--fs-12)}.admin-team-empty{margin:var(--space-sm) 0 0;color:var(--amber);font-size:var(--fs-12)}.admin-instances{margin:var(--space-md) 0 0;gap:var(--space-xs);flex-direction:column;padding:0;list-style:none;display:flex}.admin-instances li{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-md);display:flex}.admin-instance-id{flex-direction:column;flex:1;min-width:0;display:flex}.admin-instance-id strong{font-size:var(--fs-13);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-instance-id small{color:var(--muted);font-size:var(--fs-11);font-variant-numeric:tabular-nums}.admin-instance-count{color:var(--muted);font-size:var(--fs-12);font-variant-numeric:tabular-nums;flex:none}.admin-instances .status{font-size:var(--fs-11);border-radius:var(--radius-pill);border:1px solid var(--border);color:var(--muted);flex:none;padding:2px 8px;font-weight:600}.admin-instances .status.connected{color:var(--accent);background:#22c55e1f;border-color:#22c55e59}.admin-instances .status.connecting{color:var(--amber);background:#f59e0b1f;border-color:#f59e0b59}.admin-instances .status.disconnected,.admin-instances .status.created{color:var(--danger);background:#ef44441f;border-color:#ef444459}.admin-orphans{border-radius:var(--radius-lg);padding:var(--space-md) var(--space-lg);background:#f59e0b14;border:1px solid #f59e0b59}.admin-orphans h3{font-size:var(--fs-13);color:var(--amber);margin:0}.admin-notice{margin:0 var(--space-lg) var(--space-md);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);color:var(--accent);font-size:var(--fs-13);background:#22c55e1a;border:1px solid #22c55e59}.admin-access{gap:var(--space-md);flex-direction:column;display:flex}.admin-access-head{align-items:center;gap:var(--space-sm);display:flex}.admin-access-head strong{font-size:var(--fs-16)}.admin-access-block h3{margin:0 0 var(--space-sm);font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700}.admin-audit{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.admin-audit li{gap:2px var(--space-md);padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);grid-template-columns:1fr auto;display:grid}.audit-line{font-size:var(--fs-13);grid-column:1}.audit-line strong{font-weight:600}.audit-team{margin-left:var(--space-sm);border-radius:var(--radius-pill);border:1px solid var(--border);color:var(--muted);font-size:var(--fs-11);padding:1px 8px}.audit-detail{color:var(--muted);font-size:var(--fs-12);grid-column:1}.audit-when{color:var(--muted);font-size:var(--fs-11);white-space:nowrap;font-variant-numeric:tabular-nums;grid-area:1/2/span 2;align-self:center}.composer-dock{flex:none;position:relative}.template-picker{bottom:100%;left:var(--space-lg);right:var(--space-lg);z-index:20;max-height:320px;margin-bottom:var(--space-xs);background:var(--panel-2);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);animation:pop-up var(--dur-fast) var(--ease);flex-direction:column;display:flex;position:absolute;overflow:hidden}@keyframes pop-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.template-picker,.popup-menu{animation:none}}.template-picker-list{padding:var(--space-xs);overscroll-behavior:contain;margin:0;list-style:none;overflow-y:auto}.template-option{align-items:baseline;gap:var(--space-md);width:100%;min-height:var(--control-md);padding:0 var(--space-md);border-radius:var(--radius-md);color:var(--text-2);cursor:pointer;display:flex}.template-option.active{background:var(--surface-active);color:var(--text)}.template-option-name{font-size:var(--fs-13);color:var(--text);white-space:nowrap;flex:none;font-weight:600;display:inline-block}.template-option-slash{color:var(--muted);margin-right:1px;font-weight:500}.template-option.active .template-option-slash{color:var(--accent)}.template-option mark{color:var(--accent);background:0 0;font-weight:700}.template-option-preview{min-width:0;font-size:var(--fs-12);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.template-option.active .template-option-preview{color:var(--text-2)}.template-picker-empty{gap:var(--space-2xs);padding:var(--space-md);flex-direction:column;display:flex}.template-picker-empty strong{font-size:var(--fs-13);color:var(--text);font-weight:600}.template-picker-empty small{font-size:var(--fs-12);color:var(--muted)}.template-picker.is-empty .template-picker-foot{display:none}.template-picker-foot{gap:var(--space-md);padding:var(--space-xs) var(--space-md);border-top:1px solid var(--border);background:var(--panel);color:var(--muted);font-size:var(--fs-11);flex:none;display:flex}.template-picker-foot kbd{min-width:16px;padding:0 var(--space-xs);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--panel-2);color:var(--text-2);font:inherit;text-align:center;margin-right:3px;display:inline-block}.mention-option{align-items:baseline;gap:var(--space-md);width:100%;min-height:var(--control-md);padding:0 var(--space-md);border-radius:var(--radius-md);color:var(--text-2);cursor:pointer;display:flex}.mention-option.active{background:var(--surface-active);color:var(--text)}.mention-option-name{max-width:60%;font-size:var(--fs-13);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:none;font-weight:600;overflow:hidden}.mention-option-phone{min-width:0;font-size:var(--fs-12);font-variant-numeric:tabular-nums;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.mention-option.active .mention-option-phone{color:var(--text-2)}.mention-picker-count{display:none}.mention-picker.is-truncated .mention-picker-count{padding:var(--space-xs) var(--space-md);border-top:1px solid var(--border);background:var(--panel);color:var(--text-2);font-size:var(--fs-11);font-variant-numeric:tabular-nums;flex:none;order:1;display:block}.mention-picker .template-picker-foot{order:2}.new-conv-dock{text-align:left;width:100%}.new-conv-dock textarea{box-sizing:border-box;width:100%;display:block}.new-conv-dock .template-picker{left:0;right:0}#new-conv-template-warning{text-align:left;margin:0}.template-warning{margin:0 var(--space-lg);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);color:var(--amber);font-size:var(--fs-12);background:#f59e0b1a;border:1px solid #f59e0b59}.template-variables{gap:var(--space-xs);flex-wrap:wrap;display:flex}.template-preview{padding:var(--space-md);background:var(--bubble-out);border-radius:var(--radius-lg);border-bottom-right-radius:var(--space-xs)}.template-preview small{color:#ffffffad;font-size:var(--fs-11)}.template-preview p{margin:var(--space-xs) 0 0;white-space:pre-wrap;font-size:var(--fs-14)}.conversation-filters{row-gap:var(--space-xs);flex-wrap:wrap;align-items:center}.active-filters{display:contents}.filter-chip-menu{gap:var(--space-2xs);flex:none}.filter-chip-menu .icon{width:14px;height:14px}.filter-chip-menu.is-on{color:var(--accent);border-color:var(--accent-dark);font-weight:600}.filter-chip-remove{gap:var(--space-2xs);padding-right:var(--space-sm);flex:none}.filter-chip-remove .icon{opacity:.7;width:12px;height:12px}.filter-chip-remove:hover .icon{opacity:1}.filter-chip-action{color:var(--text-2);border-style:dashed}.filter-chip-action:hover{border-style:solid;border-color:var(--accent-dark);color:var(--text)}.saved-views{gap:var(--space-xs);padding:0 var(--space-md) var(--space-sm);flex-wrap:wrap;display:flex}.saved-view-wrap{align-items:stretch;display:inline-flex}.saved-view{align-items:center;gap:var(--space-xs);max-width:190px;height:var(--control-sm);padding:0 var(--space-sm) 0 10px;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-pill) 0 0 var(--radius-pill);color:var(--text-2);font-size:var(--fs-12);cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);border-right:none;font-weight:500;display:inline-flex}.saved-view span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.saved-view:hover{background:var(--surface-hover);color:var(--text)}.saved-view.active{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}.saved-view-remove{width:26px;height:var(--control-sm);background:var(--panel-2);border:1px solid var(--border);border-radius:0 var(--radius-pill) var(--radius-pill) 0;color:var(--muted);cursor:pointer;font-size:var(--fs-11);justify-content:center;align-items:center;padding:0;display:inline-flex}.saved-view-remove:hover{color:#fca5a5;background:#ef444424;border-color:#ef444480}.saved-view.active+.saved-view-remove{border-color:var(--accent-dark)}.list-more{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md) var(--space-md);border-top:1px solid var(--border);flex:none;display:flex}.list-more-count{color:var(--muted);font-size:var(--fs-11);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.conversations>.form-error{padding:var(--space-sm) var(--space-md);border-top:1px solid var(--border);flex:none}.empty{color:var(--muted);text-align:center;padding:var(--space-xl) var(--space-lg);font-size:var(--fs-13);line-height:var(--lh)}#no-team-empty{flex:none}.chat{flex-direction:column;flex:1;min-width:0;display:flex}.chat-empty{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-xl);color:var(--muted);text-align:center;flex-direction:column;flex:1;display:flex}.chat-empty .empty-art{width:48px;height:48px;margin-bottom:var(--space-xs);fill:none;stroke:currentColor;stroke-width:1.1px;stroke-linecap:round;stroke-linejoin:round;color:var(--border-strong)}.chat-empty p{color:var(--text-2);font-size:var(--fs-14);margin:0}.chat-empty small{color:var(--muted);font-size:var(--fs-12);max-width:34ch}.chat-empty b{color:var(--text-2);font-weight:600}.chat-panel{flex-direction:column;flex:1;min-height:0;display:flex}.chat-header{align-items:center;gap:var(--space-md);min-height:64px;padding:var(--space-sm) var(--space-lg);border-bottom:1px solid var(--border);background:var(--panel);display:flex}.chat-title{min-width:0;padding:var(--space-2xs) var(--space-xs);margin-left:calc(var(--space-xs) * -1);border-radius:var(--radius-md);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;gap:1px;display:flex}.chat-title:hover:not(:disabled){background:var(--surface-hover)}.chat-title:disabled{cursor:default}.chat-title-row strong{font-size:var(--fs-16);letter-spacing:-.01em;font-weight:600}.chat-title-row{align-items:center;gap:var(--space-sm);min-width:0;display:flex}.chat-title-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-title small{color:var(--muted);font-size:var(--fs-12)}.back-btn{flex:none;display:none}.chat-actions{align-items:center;gap:var(--space-2xs);flex:none;display:flex}.messages{padding:var(--space-lg) var(--space-xl);flex-direction:column;flex:1;gap:0;display:flex;overflow-y:auto}.msg+.msg{margin-top:var(--space-md)}.msg.inbound+.msg.inbound,.msg.outbound+.msg.outbound{margin-top:var(--space-2xs)}.msg.inbound:not(:has(+.msg.inbound)){border-bottom-left-radius:var(--space-xs)}.msg.outbound:not(:has(+.msg.outbound)){border-bottom-right-radius:var(--space-xs)}.history-banner{color:var(--muted);text-align:center;flex:none;align-self:center;padding:4px 12px;font-size:11.5px}.history-banner-error{color:var(--danger)}.timeline-empty{align-items:center;gap:var(--space-xs);max-width:32ch;padding:var(--space-lg);color:var(--muted);text-align:center;flex-direction:column;margin:auto;display:flex}.timeline-empty strong{color:var(--text-2);font-size:var(--fs-13);font-weight:600}.timeline-empty small{font-size:var(--fs-12);line-height:1.5}.timeline-empty.is-loading strong{color:var(--muted);animation:timeline-empty-pulse 1.4s var(--ease) infinite;font-weight:500}@keyframes timeline-empty-pulse{0%,to{opacity:1}50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.timeline-empty.is-loading strong{animation:none}}.history-actions{gap:var(--space-sm);margin-top:var(--space-xs);justify-content:center;display:flex}.history-actions button{border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text);cursor:pointer;background:0 0;padding:3px 10px;font-size:11.5px}.history-actions button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.history-actions button:disabled{cursor:default;opacity:.6}.msg{border-radius:var(--radius-lg);white-space:pre-wrap;word-break:break-word;max-width:min(68%,560px);line-height:var(--lh);padding:7px 11px 6px;display:flow-root;position:relative}.msg.inbound{background:var(--bubble-in);align-self:flex-start}.msg.outbound{background:var(--bubble-out);align-self:flex-end}.msg .meta{color:var(--muted);font-size:var(--fs-11);text-align:right;margin-top:2px;display:block}.msg.outbound .meta{color:#ffffffad}.msg.outbound .media-link{color:#6ee7a0}.msg.outbound .via-badge{color:#ffffffad;border-color:#ffffff38}.msg:not(:has(.media)):not(:has(.transcription)):not(:has(.via-badge)):not(:has(.media-link))>.msg-text{display:inline}.msg:not(:has(.media)):not(:has(.transcription)):not(:has(.via-badge)):not(:has(.media-link))>.meta{float:right;margin:5px 0 0 var(--space-md)}.reactions{clear:both}.msg .media-link{color:var(--accent);word-break:break-all;margin-top:6px;font-size:13px;text-decoration:none;display:block}.msg .media-link:hover{text-decoration:underline}.msg .via-badge{border:1px solid var(--border);color:var(--muted);background:#0000002e;border-radius:999px;margin-top:6px;padding:1px 7px;font-size:10px;display:inline-block}.chat-error{border-top:1px solid var(--border);background:#ef444414;padding:8px 18px}.composer{align-items:flex-end;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-top:1px solid var(--border);background:var(--panel);display:flex}.composer textarea{resize:none;min-height:var(--control-lg);border-radius:var(--radius-lg);flex:1;max-height:140px}.send-btn{align-items:center;gap:var(--space-sm);height:var(--control-lg);padding:0 var(--space-lg);background:var(--accent-dark);color:#fff;border-radius:var(--radius-md);font-size:var(--fs-14);transition:background var(--dur-fast) var(--ease);border:none;flex:none;font-weight:600;display:inline-flex}.send-btn:hover{background:#166534}.send-btn:active{background:#14532d}.composer .icon-btn{width:var(--control-lg);height:var(--control-lg);border:1px solid var(--border);color:var(--muted);font-size:var(--fs-16);cursor:pointer;background:0 0;padding:0}.composer .icon-btn:hover{background:var(--surface-hover);color:var(--text);border-color:var(--border-strong)}.composer .icon-btn.recording{color:#fff;background:#7f1d1d;border-color:#b91c1c;animation:1.4s ease-in-out infinite recording-pulse}@keyframes recording-pulse{50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.composer .icon-btn.recording{animation:none}}.record-timer{font-variant-numeric:tabular-nums;color:#fca5a5;align-self:center;min-width:44px;font-size:13px}.attachment-bar{border-top:1px solid var(--border);background:var(--panel);align-items:center;gap:12px;padding:10px 18px;display:flex}.attachment-preview{border:1px solid var(--border);border-radius:8px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;font-size:20px;display:flex;overflow:hidden}.attachment-preview img{object-fit:cover;width:100%;height:100%}.attachment-meta{flex-direction:column;flex:1;min-width:0;display:flex}.attachment-meta strong{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;overflow:hidden}.attachment-meta small{color:var(--muted);font-size:12px}.group-badge{color:var(--muted);vertical-align:middle;align-items:center;display:inline-flex}.conv-top .group-badge{margin-right:var(--space-xs);flex:none}#chat-group-badge{gap:var(--space-xs);border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--panel-2);font-size:var(--fs-11);text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;font-weight:600}.modal{z-index:10;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-2);padding:var(--space-xl);gap:var(--space-md);text-align:center;flex-direction:column;width:340px;display:flex}.modal-card h2{font-size:var(--fs-18);margin:0;font-weight:600}.modal-card .ghost-btn,.modal-card .small-btn{height:var(--control-lg)}.modal-card .ghost-btn{border-color:var(--border);color:var(--text-2);background:0 0}.modal-card .ghost-btn:hover{background:var(--surface-hover);color:var(--text)}#qr-name-step{flex-direction:column;gap:10px;display:flex}#qr-image{background:#fff;border-radius:10px;width:230px;margin:0 auto;padding:6px}.qr-status{color:var(--muted);margin:0;font-size:12.5px}.qr-status.connected{color:var(--accent);font-weight:600}.qr-status.error{color:var(--danger);font-weight:600}#new-conv-message{resize:vertical}.confirm-message{overflow-wrap:anywhere;margin:0;font-size:14px}.danger-btn{justify-content:center;align-items:center;gap:var(--space-sm);height:var(--control-lg);padding:0 var(--space-lg);color:#fff;border-radius:var(--radius-md);font-size:var(--fs-14);transition:background var(--dur-fast) var(--ease);background:#b91c1c;border:none;font-weight:600;display:inline-flex}.danger-btn:hover{background:#991b1b}.danger-btn:active{background:#7f1d1d}.transfer-empty{color:var(--muted);margin:0;font-size:12.5px}.dev-login{flex-direction:column;gap:8px;margin-top:6px;display:flex}.dev-login-divider{color:var(--muted);letter-spacing:.06em;font-size:11px}.drawer{z-index:5;background:#00000080;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer-panel{background:var(--panel);border-left:1px solid var(--border);width:min(420px,100%);height:100%;padding:var(--space-lg) var(--space-xl) var(--space-xl);gap:var(--space-md);flex-direction:column;animation:.18s ease-out drawer-in;display:flex;overflow-y:auto}@keyframes drawer-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.drawer-panel{animation:none}}.drawer-header{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.drawer-header h2{margin:0;font-size:17px}.drawer-section{gap:var(--space-sm);flex-direction:column;display:flex}.drawer-section h3{margin:var(--space-md) 0 0;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.drawer-row{gap:var(--space-sm);align-items:center;display:flex}.drawer-row select{flex:1;min-width:0}.drawer-list{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.drawer-list li{align-items:center;gap:var(--space-sm);padding:var(--space-sm);border:1px solid var(--border);background:var(--panel-2);border-radius:10px;display:flex}.drawer-list .who{flex-direction:column;flex:1;min-width:0;display:flex}.drawer-list .who strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.drawer-list .who small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.badge.admin{color:var(--info);border-color:var(--info);border-radius:var(--radius-pill)}.badge.inactive{color:var(--muted)}.badge.capability{color:var(--muted);border-color:var(--border-strong)}.drawer-list .row-actions{gap:var(--space-xs);flex:none;display:flex}.drawer-empty{color:var(--muted);font-size:12.5px}.drawer-hint{margin:var(--space-xs) 0 0;color:var(--muted);font-size:12.5px;line-height:1.45}.drawer-list li.clickable{cursor:pointer}.drawer-list li.clickable:hover{border-color:var(--accent-dark)}.conv-group-header{z-index:1;background:var(--panel);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--border);cursor:default;padding:8px 14px 4px;font-size:11px;font-weight:700;position:sticky;top:0}@media (width<=760px){.sidebar{border-right:none;width:100%;min-width:0}.chat,.app.chat-open .sidebar{display:none}.app.chat-open .chat{width:100%;display:flex}.back-btn{display:inline-flex}.msg{max-width:85%}.messages{padding:var(--space-md)}.chat-header{padding:var(--space-sm) var(--space-md);gap:var(--space-sm)}.msg.inbound .reaction-add{right:4px}.msg.outbound .reaction-add{left:4px}.msg.inbound .msg-menu-btn{right:34px}.msg.outbound .msg-menu-btn{left:34px}.msg .msg-menu-btn,.msg .reaction-add{opacity:1}}@media (width<=560px){.send-btn{width:var(--control-lg);padding:0}.send-btn span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.composer{padding:var(--space-sm) var(--space-md);gap:var(--space-xs)}}.msg .media{min-height:20px;color:var(--muted);margin-top:6px;font-size:12px}.msg .media-image-btn{cursor:zoom-in;background:0 0;border:0;border-radius:8px;padding:0;display:block}.msg .media-image-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.msg .media img{object-fit:contain;background:#0000000f;border-radius:8px;max-width:100%;max-height:320px;display:block}.msg .media audio{width:100%;min-width:220px;margin-top:2px;display:block}.msg .media video{background:#000;border-radius:8px;width:100%;max-height:320px;display:block}.msg .media-error{color:var(--muted);font-style:italic}.msg .msg-text{display:block}.msg.is-sticker{background:0 0;max-width:168px;padding:0}.msg.is-sticker .media img{max-height:168px}.msg.is-sticker .msg-text{color:var(--muted);font-size:var(--fs-11)}.msg.is-sticker .meta{color:var(--muted)}.msg .transcription{margin-top:6px}.msg .transcribe-btn{border:1px solid var(--border);min-height:44px;color:var(--accent);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:0 14px;font-size:12.5px;display:inline-flex}.msg .transcribe-btn:hover:not(:disabled){border-color:var(--accent)}.msg .transcribe-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.msg .transcribe-btn:disabled{cursor:progress;opacity:.7}.msg .transcription-text{border-left:2px solid var(--border);color:var(--text);margin:0;padding-left:10px;font-size:12.5px;line-height:1.45}.msg .transcription-error{margin:6px 0 0}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lightbox{z-index:60;background:#000000e0;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:16px;display:flex;position:fixed;inset:0}.lightbox.hidden{display:none}.lightbox-bar{align-items:center;gap:12px;width:100%;max-width:1100px;display:flex}.lightbox-caption{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-size:12.5px;overflow:hidden}.lightbox-action{border:1px solid var(--border);min-height:44px;color:var(--text);cursor:pointer;background:#ffffff0f;border-radius:8px;align-items:center;padding:0 16px;font-size:13px;text-decoration:none;display:inline-flex}.lightbox-action:hover{background:#ffffff1f}.lightbox-action:focus-visible{outline:2px solid var(--accent);outline-offset:2px}#lightbox-image{object-fit:contain;max-width:100%;max-height:calc(100dvh - 96px)}.destination-nav{gap:var(--space-2xs);margin:0 var(--space-md) var(--space-md);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:3px;display:flex;overflow:hidden}.destination{justify-content:center;align-items:center;gap:var(--space-2xs);min-width:0;height:var(--control-sm);border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;font-size:var(--fs-13);padding:0 var(--space-sm);white-space:nowrap;text-overflow:ellipsis;transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;flex:1;font-weight:600;display:inline-flex;overflow:hidden}.destination-icon{display:none}.destination-label{text-overflow:ellipsis;min-width:0;overflow:hidden}@container sidebar (width<=420px){.destination{height:auto;padding:var(--space-2xs) 2px;flex-direction:column;gap:1px}.destination-icon{display:inline-flex}.destination-label{font-size:var(--fs-11);font-weight:500}}.destination:hover{color:var(--text)}.destination.active{background:var(--panel-2);border-color:var(--border);color:var(--text);box-shadow:var(--shadow-1)}.section-actions{align-items:center;gap:var(--space-2xs);flex:none;display:flex}.contact-list{flex:1;margin:0;padding:0 8px 12px;list-style:none;overflow-y:auto}.contact-list li{padding:var(--space-sm);border-radius:var(--radius-lg);cursor:pointer;align-items:center;gap:var(--space-md);transition:background var(--dur-fast) var(--ease);display:flex}.contact-list li:hover{background:var(--surface-hover)}.contact-main{gap:var(--space-2xs);flex-direction:column;flex:1;min-width:0;display:flex}.contact-list .contact-name{font-weight:600;font-size:var(--fs-14);align-items:center;gap:var(--space-sm);min-width:0;display:flex}.contact-list .contact-name>:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contact-list .contact-phone{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px}.picker-list{border:1px solid var(--border);border-radius:10px;flex:none;max-height:190px;padding:0}.picker-list:empty{display:none}.picker-list li.selected{background:var(--panel-2);outline:1px solid var(--accent-dark)}.contact-tags{gap:var(--space-xs);flex-wrap:wrap;margin-top:2px;display:flex}.contact-tag{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--muted);padding:1px 8px;font-size:10.5px}.field-label{color:var(--muted);font-size:12px;display:block}.field-hint{color:var(--muted);font-size:11.5px}.opt-out-row{align-items:center;gap:var(--space-sm);font-size:13px;display:flex}.csv-preview{background:var(--panel-2);border:1px solid var(--border);max-height:220px;padding:var(--space-md);text-align:left;border-radius:10px;font-size:12.5px;overflow-y:auto}.csv-preview ul{margin:var(--space-sm) 0 0;padding:0;list-style:none}.csv-preview li{color:var(--muted);padding:2px 0}.csv-preview .csv-bad{color:var(--amber)}.campaign-list{flex:1;margin:0;padding:0 8px 12px;list-style:none;overflow-y:auto}.campaign-list li{cursor:pointer;border-radius:10px;flex-direction:column;gap:4px;padding:10px;display:flex}.campaign-list li:hover{background:var(--panel-2)}.campaign-list li.active{background:var(--panel-2);outline:1px solid var(--border)}.campaign-list .campaign-name{align-items:center;gap:var(--space-sm);font-weight:600;display:flex}.campaign-list .campaign-name span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.campaign-panel{flex-direction:column;flex:1;min-height:0;display:flex}.campaign-body{gap:var(--space-md);padding:var(--space-lg);flex-direction:column;display:flex;overflow-y:auto}.progress-bar{border-radius:var(--radius-pill);background:var(--panel-2);border:1px solid var(--border);height:10px;display:flex;overflow:hidden}.progress-bar span{height:100%;display:block}.progress-bar .seg-sent{background:var(--accent)}.progress-bar .seg-failed{background:var(--danger)}.progress-bar .seg-optOut{background:var(--muted)}.progress-bar .seg-queued{background:var(--info)}.progress-legend{gap:var(--space-md);color:var(--muted);flex-wrap:wrap;font-size:12px;display:flex}.progress-legend b{color:var(--text);font-variant-numeric:tabular-nums}.progress-legend .dot{border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.breaker-banner{margin:var(--space-md) var(--space-lg) 0;padding:var(--space-md);color:var(--amber);background:#f59e0b1f;border:1px solid #f59e0b59;border-radius:10px;font-size:13px}.modal-wide{text-align:left;width:min(560px,92vw)}.wizard-actions{justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-sm);display:flex}.wizard-actions .ghost-btn,.wizard-actions .primary-btn{height:var(--control-lg)}.wizard-actions .ghost-btn{color:var(--text-2);background:0 0}.wizard-actions .ghost-btn:hover{background:var(--surface-hover);color:var(--text)}.wizard-actions .wizard-exit{margin-right:auto}.wizard-steps{gap:var(--space-sm);margin:0 0 var(--space-md);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding:0;font-size:11.5px;list-style:none;display:flex}.wizard-steps li{border-bottom:2px solid var(--border);flex:1;padding-bottom:4px}.wizard-steps li.active{color:var(--text);border-bottom-color:var(--accent)}.wizard-steps li.done{color:var(--accent);border-bottom-color:var(--accent-dark)}.wizard-step{gap:var(--space-sm);flex-direction:column;display:flex}.wizard-step summary{cursor:pointer;color:var(--muted);font-size:12.5px}.campaign-body .drawer-row select{flex:0 260px}.reactions{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.reactions:has(.reaction-chip){margin-top:5px}.reaction-picker{display:contents}.reaction-chip{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text);font-size:var(--fs-12);cursor:pointer;transition:border-color var(--dur-fast) var(--ease);padding:4px 8px;line-height:1}.reaction-chip.mine,.reaction-chip:hover{border-color:var(--accent)}.reaction-picker{display:inline-flex;position:relative}.msg .reaction-add{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-pill);width:26px;height:26px;color:var(--muted);cursor:pointer;font-size:var(--fs-12);opacity:0;transition:opacity var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.msg.inbound .reaction-add{right:-30px}.msg.outbound .reaction-add{left:-30px}.msg .reaction-add:hover{color:var(--text)}.msg .reaction-add.is-pending{cursor:progress;opacity:1}.msg:hover .reaction-add,.reaction-add:focus-visible,.reaction-add[aria-expanded=true]{opacity:1}.msg .reaction-menu{z-index:5;gap:var(--space-2xs);background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-pill);box-shadow:var(--shadow-2);padding:4px 6px;display:flex;position:absolute;bottom:calc(100% + 4px)}.msg.inbound .reaction-menu{left:0}.msg.outbound .reaction-menu{right:0}.reaction-menu.hidden{display:none}.reaction-option{cursor:pointer;background:0 0;border:none;padding:2px;font-size:15px;line-height:1}.reaction-option:hover{transform:scale(1.2)}.msg .msg-menu-btn{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-pill);width:26px;height:26px;color:var(--muted);cursor:pointer;opacity:0;transition:opacity var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.msg.inbound .msg-menu-btn{right:-60px}.msg.outbound .msg-menu-btn{left:-60px}.msg .msg-menu-btn:hover{color:var(--text)}.msg:hover .msg-menu-btn,.msg-menu-btn:focus-visible,.msg-menu-btn[aria-expanded=true]{opacity:1}.msg-quote{border:0;border-left:3px solid var(--muted);border-radius:var(--radius-sm);width:100%;color:inherit;font:inherit;text-align:left;background:#00000038;margin-bottom:5px;padding:4px 9px;display:block}.msg-quote.mine{border-left-color:var(--accent)}button.msg-quote{cursor:pointer}button.msg-quote:hover{background:#0000004d}.msg-quote-author{font-size:var(--fs-12);color:var(--accent);display:block}.msg.outbound .msg-quote-author{color:#6ee7a0}.msg-quote-body{font-size:var(--fs-12);color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.msg.outbound .msg-quote-body{color:#ffffffad}.msg.is-highlighted{outline:2px solid var(--accent);outline-offset:2px}.msg-forwarded{font-size:var(--fs-11);color:var(--muted);align-items:center;gap:4px;margin-bottom:3px;font-style:italic;display:flex}.msg.outbound .msg-forwarded{color:#fff9}.msg-edited{font-style:italic}.msg.is-deleted{opacity:.72}.msg-deleted{color:var(--muted);font-style:italic}.msg.outbound .msg-deleted{color:#ffffffad}.msg.is-selectable{cursor:pointer}.msg.is-selectable:hover{outline:1px dashed var(--border);outline-offset:2px}.msg.is-selected,.msg.is-selectable:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.reply-bar{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);border-top:1px solid var(--border);background:var(--panel-2);display:flex}.reply-bar .icon{color:var(--accent);flex:none}.reply-bar-body{flex-direction:column;flex:1;min-width:0;display:flex}.reply-bar-body strong{font-size:var(--fs-12);color:var(--accent)}.reply-bar-body span{font-size:var(--fs-12);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.forward-bar{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-top:1px solid var(--border);background:var(--panel-2);display:flex}.forward-count{font-size:var(--fs-13);color:var(--muted);flex:1}.conversation-filters{gap:var(--space-xs);padding:0 var(--space-md) var(--space-sm);display:flex}.filter-chip{height:var(--control-sm);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--muted);cursor:pointer;font-size:var(--fs-12);white-space:nowrap;transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);align-items:center;padding:0 12px;font-weight:500;display:inline-flex}.filter-chip:hover{color:var(--text);background:var(--surface-hover)}.filter-chip.active{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff;font-weight:600}.badge.unread.manual{text-align:center;min-width:18px;padding:3px 6px;font-size:14px;line-height:1}.pane-resizer{cursor:col-resize;touch-action:none;background:0 0;flex:0 0 4px;position:relative}.pane-resizer:before{content:"";position:absolute;inset:0 -3px}.pane-resizer:hover,.pane-resizer:focus-visible,.app.resizing .pane-resizer{background:var(--accent)}.pane-resizer:focus-visible{outline:none}.app.resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}@media (width<=760px){.pane-resizer{display:none}}.popup-menu{z-index:60;min-width:224px;padding:var(--space-xs);background:var(--panel-2);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);animation:pop-up var(--dur-fast) var(--ease);position:fixed}.popup-menu-list{margin:0;padding:0;list-style:none}.popup-menu-item{align-items:center;gap:var(--space-sm);width:100%;min-height:var(--control-md);padding:0 var(--space-md);border-radius:var(--radius-md);color:var(--text-2);font:inherit;font-size:var(--fs-13);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.popup-menu-item .icon{width:16px;height:16px;color:var(--muted);flex:none}.popup-menu-label{flex:none}.popup-menu-hint{color:var(--muted);font-size:var(--fs-11);margin-left:auto}.popup-menu-item:hover,.popup-menu-item:focus-visible{background:var(--surface-hover);color:var(--text);outline:none}.popup-menu-item:hover .icon,.popup-menu-item:focus-visible .icon{color:var(--text-2)}.popup-menu-item.is-destructive:hover,.popup-menu-item.is-destructive:focus-visible{color:var(--danger);background:#ef44441f}.popup-menu-item.is-destructive:hover .icon,.popup-menu-item.is-destructive:focus-visible .icon{color:var(--danger)}.popup-menu-sep{height:1px;margin:var(--space-xs) var(--space-sm);background:var(--border)}.popup-menu-heading{padding:var(--space-sm) var(--space-md) var(--space-2xs);color:var(--muted);font-size:var(--fs-11);letter-spacing:.04em;text-transform:uppercase;font-weight:600}.popup-menu-list{max-height:min(56vh,380px);overflow-y:auto}.conv-menu-btn{width:var(--control-sm);height:var(--control-sm);margin-right:var(--space-sm);border-radius:var(--radius-md);color:var(--muted);cursor:pointer;opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);background:0 0;border:0;flex:none;justify-content:center;align-items:center;display:inline-flex}.conv-menu-btn .icon{width:16px;height:16px}.conversation-list li:hover .conv-menu-btn,.conversation-list li:focus-within .conv-menu-btn,.conversation-list li.menu-open .conv-menu-btn{opacity:1;pointer-events:auto}.conv-menu-btn:hover{background:var(--surface-active);color:var(--text)}@media (hover:none){.conv-menu-btn{opacity:1;pointer-events:auto}}.conversation-list li.menu-open{background:var(--surface-hover)}.conversation-list li.menu-open .conv-menu-btn{background:var(--surface-active);color:var(--text)}.mention-badge{border-radius:var(--radius-pill);background:var(--accent-dark);color:#eafff2;flex:none;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.mention-badge .icon{width:12px;height:12px}.conversation-list li.has-mention:after{content:"";border-radius:var(--radius-pill);background:var(--accent);width:3px;height:60%;position:absolute;top:20%;right:2px}.bell-slot{flex:none;display:flex;position:relative}.bell-btn{position:relative}.bell-btn.has-unread{color:var(--text)}.bell-badge{border-radius:var(--radius-pill);background:var(--accent);color:#08120c;font-variant-numeric:tabular-nums;min-width:15px;height:15px;box-shadow:0 0 0 2px var(--panel);justify-content:center;align-items:center;padding:0 3px;font-size:10px;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:2px;right:2px}.notifications-panel{z-index:60;background:var(--panel-2);border:1px solid var(--border-strong);border-radius:var(--radius-lg);width:min(380px,100vw - 32px);max-height:min(70vh,520px);box-shadow:var(--shadow-2);animation:pop-up var(--dur-fast) var(--ease);flex-direction:column;display:flex;position:fixed;overflow:hidden}@media (prefers-reduced-motion:reduce){.notifications-panel{animation:none}}.notifications-head{align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-md) var(--space-sm);border-bottom:1px solid var(--border);flex:none;display:flex}.notifications-head h2{font-size:var(--fs-13);color:var(--text);margin:0;font-weight:600}.notifications-head .small-btn{margin-left:auto}.notifications-list{padding:var(--space-xs);flex:1;margin:0;list-style:none;overflow-y:auto}.notification-item{align-items:flex-start;gap:var(--space-sm);width:100%;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);color:var(--text-2);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.notification-item:hover:not(:disabled){background:var(--surface-hover)}.notification-item:disabled{cursor:default;opacity:.55}.notification-dot{border-radius:var(--radius-pill);background:0 0;flex:none;width:7px;height:7px;margin-top:6px}.notification-item.is-unread .notification-dot{background:var(--accent)}.notification-body{gap:var(--space-2xs);flex-direction:column;flex:1;min-width:0;display:flex}.notification-top{align-items:baseline;gap:var(--space-sm);display:flex}.notification-top strong{min-width:0;font-size:var(--fs-13);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.notification-top small{color:var(--muted);font-size:var(--fs-11);flex:none}.notification-line{font-size:var(--fs-12);color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.notification-item.is-unread{color:var(--text)}.notification-item.is-unread .notification-line{color:var(--text-2)}.notifications-empty{align-items:center;gap:var(--space-xs);padding:var(--space-2xl) var(--space-xl);text-align:center;flex-direction:column;display:flex}.notifications-empty .icon{width:24px;height:24px;color:var(--border-strong)}.notifications-empty p{font-size:var(--fs-13);color:var(--text-2);margin:0}.notifications-empty small{color:var(--muted);font-size:var(--fs-12);max-width:30ch}.mention-tip{z-index:70;max-width:320px;padding:var(--space-sm) var(--space-md);background:var(--panel-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-2);font-size:var(--fs-12);color:var(--text-2);pointer-events:none;position:fixed}.mention-tip-line+.mention-tip-line{margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--border)}.mention-tip-head{align-items:baseline;gap:var(--space-sm);display:flex}.mention-tip-head strong{color:var(--accent);font-size:var(--fs-12);font-weight:600}.mention-tip-head small{color:var(--muted);font-size:var(--fs-11);margin-left:auto}.mention-tip p{margin:var(--space-2xs) 0 0}.mention-tip p.is-empty{color:var(--muted);font-style:italic}.mention-banner{align-items:flex-start;gap:var(--space-sm);margin:var(--space-sm) var(--space-lg) 0;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);color:#d6f2e1;font-size:var(--fs-13);background:#22c55e17;border:1px solid #22c55e4d;display:flex}.mention-banner>.icon{width:16px;height:16px;color:var(--accent);flex:none;margin-top:2px}.mention-banner-text{flex:1;min-width:0}.mention-banner-text p{margin:0}.mention-banner-text p+p{margin-top:var(--space-xs)}.mention-banner-text strong{color:var(--accent);font-weight:600}.mention-banner .icon-btn{width:var(--control-sm);height:var(--control-sm);color:#9fd8b8;flex:none}.mention-banner .icon-btn:hover{color:#eafff2;background:#22c55e29}.list-note{padding:var(--space-sm) var(--space-md);border-top:1px solid var(--border);color:var(--muted);font-size:var(--fs-11);line-height:var(--lh);flex:none}.filter-chip .chip-count{margin-left:var(--space-2xs);opacity:.65;font-variant-numeric:tabular-nums}.conv-tags{gap:var(--space-2xs);flex:none;display:inline-flex}.conv-tag{max-width:84px;padding:0 var(--space-2xs);border-radius:var(--radius-sm);background:var(--surface-hover);color:var(--muted);font-size:var(--fs-11);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.drawer-danger{margin-top:var(--space-xl);padding-top:var(--space-md);border-top:1px solid var(--border)}.contact-info-head{align-items:center;gap:var(--space-2xs);padding:var(--space-md) 0 var(--space-lg);border-bottom:1px solid var(--border);text-align:center;flex-direction:column;display:flex}.contact-info-head .avatar{width:64px;height:64px;font-size:var(--fs-18);margin-bottom:var(--space-xs)}.contact-info-head strong{font-size:var(--fs-16);font-weight:600}.contact-info-head small{color:var(--muted);font-size:var(--fs-13)}#contact-info .contact-tags{gap:var(--space-xs);flex-wrap:wrap;display:flex}.contact-info-notes{font-size:var(--fs-13);white-space:pre-wrap;margin:0;line-height:1.55}.contact-info-notes.is-empty{color:var(--muted);font-style:italic}.member-picker{margin:0 0 var(--space-md);padding:var(--space-2xs);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);max-height:216px;list-style:none;overflow-y:auto}.member-pick{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);cursor:pointer;display:flex}.member-pick:hover{background:var(--surface-hover)}.member-pick.is-chosen{background:#22c55e1f}.member-pick input{accent-color:var(--accent);flex:none;width:15px;height:15px}.member-pick input:disabled{cursor:not-allowed;opacity:.7}.member-pick:has(input:disabled){cursor:default}.member-pick-text{flex-direction:column;min-width:0;display:flex}.member-pick-text strong{font-size:var(--fs-13);color:var(--text);font-weight:600}.member-pick-text small{font-size:var(--fs-11);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mention-people{padding:var(--space-2xs);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);max-height:216px;margin:0;list-style:none;overflow-y:auto}.mention-person{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);cursor:pointer;display:flex}.mention-person:hover{background:var(--surface-hover)}.mention-person.is-chosen{background:#22c55e1f}.mention-person input{accent-color:var(--accent);flex:none;width:15px;height:15px}.mention-person-text{flex-direction:column;min-width:0;display:flex}.mention-person-text strong{font-size:var(--fs-13);color:var(--text);font-weight:600}.mention-person-text small{font-size:var(--fs-11);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.field-optional{color:var(--muted);font-weight:400}.modal-card .field-label,.modal-card .field-hint{text-align:left}.variation-note{border-left:2px solid var(--border);padding:0 0 0 var(--space-sm);margin:0 0 var(--space-sm);color:var(--muted);font-size:var(--fs-12);line-height:var(--lh)}.variation-note.is-warn{border-left-color:var(--amber);color:var(--amber)}.variation-note.is-info{border-left-color:var(--info);color:var(--text-2)}.variation-note.is-ok{border-left-color:var(--accent);color:var(--text-2)}.settings-section{text-align:left;margin:var(--space-lg) 0 var(--space-xs);padding-top:var(--space-md);border-top:1px solid var(--border);color:var(--text-2);font-size:var(--fs-12);font-weight:600}#instance-settings-modal .member-picker{flex:none;max-height:180px;overflow-y:auto}#instance-settings-modal .modal-card{max-height:88vh;overflow-y:auto}#instance-settings-modal .settings-actions{bottom:calc(var(--space-xl) * -1);gap:var(--space-sm);margin:var(--space-md) calc(var(--space-xl) * -1) calc(var(--space-xl) * -1);padding:var(--space-md) var(--space-xl) var(--space-xl);background:var(--panel);border-top:1px solid var(--border);flex-direction:column;display:flex;position:sticky}
