/* Messenger categories share the current theme's surfaces and focus treatment. */
html:root #messenger-shell { display:grid;grid-template-columns:64px minmax(260px,300px) minmax(0,1fr); }
html:root .messenger-spaces { display:flex;flex-direction:column;gap:4px;padding:8px 4px;background:color-mix(in srgb,var(--theme-soft) 50%,var(--surface));border-right:1px solid var(--border);overflow-y:auto;min-height:0; }
html:root #messenger-spaces .messenger-space { display:flex;flex:none;flex-direction:column;align-items:center;justify-content:center;gap:5px;position:relative;min-height:56px;width:100%;padding:7px 0;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--text-secondary);box-shadow:none;font-size:9px;font-weight:550;transition:background-color var(--motion-popup) ease,color var(--motion-popup) ease; }
html:root #messenger-spaces .messenger-space[hidden] { display:none; }
html:root #messenger-spaces .messenger-space:hover { background:var(--surface-hover);color:var(--accent); }
html:root #messenger-spaces .messenger-space[aria-pressed="true"] { background:var(--accent-soft);color:var(--accent);border-color:transparent;box-shadow:none; }
.messenger-space-icon { position:relative;width:21px;height:21px; }
.messenger-space-icon svg { width:21px;height:21px; }
html:root .messenger-space-count { position:absolute;top:-7px;right:-10px;min-width:17px;padding:1px 4px;border-radius:20px;background:var(--accent);color:var(--theme-on-accent);font:700 10px/14px system-ui; }
html:root .messenger-space-count[hidden] { display:none; }
html:root #messenger-view .messenger-unread-filter { flex:0 0 auto;margin:0 0 0 auto;padding:4px 8px;min-height:28px;border-radius:16px;font-size:10px;background:transparent;color:var(--text-secondary); }
html:root #messenger-view .messenger-unread-filter[aria-pressed="true"] { background:var(--accent-soft);color:var(--accent);border-color:var(--accent); }
html:root #messenger-view :is(.favorite-open,.notification-history-open,#assistant-open) { flex:none;gap:9px;margin:0;width:100%;min-height:55px;padding:8px 12px;border-radius:0;border:0;border-bottom:1px solid var(--border);box-shadow:none;background:transparent; }
html:root .favorite-open.active { background:var(--accent-soft);box-shadow:inset 3px 0 var(--accent); }
html:root #messenger-view :is(.favorite-open,.notification-history-open)>.chat-avatar { flex:0 0 32px;width:32px;height:32px; }
html:root .favorite-open[hidden] { display:none; }
html:root .favorite-copy { display:grid;gap:3px;flex:1;min-width:0;text-align:left; }
html:root #messenger-view :is(.favorite-open,.notification-history-open,#assistant-open) strong { font-size:12px;line-height:1.35; }
html:root #messenger-view :is(.favorite-copy>span,.notification-history-open>span:nth-child(2)>span) { display:block;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;line-height:1.4;color:var(--text-secondary);font-weight:400; }
html:root #messenger-view :is(.favorite-open,.notification-history-open,#assistant-open):is(:hover,.active) { background:var(--accent-soft); }
html:root #messenger-view #assistant-open>img { width:32px;height:32px;border-radius:9px; }
html:root .favorite-avatar { background:var(--accent-soft);color:var(--accent); }
.favorite-avatar svg { width:18px;height:18px; }
html:root #notification-history-open>.chat-avatar svg { width:18px;height:18px; }
.messenger-history-count { flex:0 0 auto; }
html:root #notification-history-open .history-pin { display:none; }
.task-chat-avatar svg { width:24px;height:24px; }
html:root .task-chat-avatar { border-radius:14px;color:var(--accent);background:var(--accent-soft); }
.favorite-pin { color:var(--text-secondary);font-size:14px; }
.chat-message-quote { margin:8px 0;padding:8px 12px;border-left:3px solid var(--accent);font-size:.8rem;color:var(--text-secondary);white-space:pre-wrap; }
html:root #messenger-view>.employee-dialog-head { padding:10px 16px;gap:10px; }
html:root #messenger-view>.employee-dialog-head .eyebrow { display:none; }
html:root #messenger-title { margin:0;font-size:17px;line-height:1.35; }
html:root #messenger-view .messenger-overview { margin:3px 0 0;font-size:11px;line-height:1.3;color:var(--text-secondary); }
html:root #messenger-view .compose-icon-button { width:36px;height:36px;min-width:36px;min-height:36px;padding:7px;border-radius:9px; }
html:root #messenger-view .compose-icon-button svg { width:20px;height:20px; }
html:root #messenger-view .chat-search { padding:10px 12px; }
html:root #messenger-view .chat-inbox-heading { gap:6px;margin-bottom:8px;font-size:12px; }
html:root #messenger-view #chat-search { min-height:36px;padding:7px 10px;font-size:12px;border-radius:9px; }
html:root #messenger-view .chat-row { grid-template-columns:minmax(0,1fr) 40px;gap:6px;padding:7px 10px; }
html:root #messenger-view .chat-row .chat-open { grid-template-columns:36px minmax(0,1fr);gap:9px;padding:0;min-height:52px; }
html:root #messenger-view .chat-row .chat-avatar { width:36px;height:36px;font-size:12px; }
html:root #messenger-view .task-chat-avatar { border-radius:10px; }
html:root #messenger-view .task-chat-avatar svg { width:19px;height:19px; }
html:root #messenger-view .chat-row-title { margin-bottom:2px;gap:4px; }
html:root #messenger-view .chat-row-title strong { min-width:0;font-size:12px;line-height:1.35; }
html:root #messenger-view .chat-row-preview { font-size:11px;line-height:1.4; }
.chat-row-meta { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;color:var(--text-secondary);font-size:10px;line-height:1.35;font-weight:400; }
.chat-row-meta.chat-meta-overdue { color:var(--danger); }
html:root #messenger-view .chat-row-tools { gap:2px;min-width:0; }
html:root #messenger-view .chat-row-tools time { max-width:40px;font-size:9px;white-space:nowrap; }
html:root #messenger-view .chat-row-tools .chat-icon-button { width:28px;min-width:28px;height:28px;min-height:28px;padding:5px;border-radius:7px; }
html:root #messenger-view .chat-row-tools .chat-icon-button svg { width:16px;height:16px; }
html:root #messenger-view .chat-welcome { padding:24px; }
html:root #messenger-view .chat-welcome .crm-empty-state { --empty-art-size:140px;min-height:225px;max-width:420px;padding:158px 8px 8px;font-size:12px; }
html:root #messenger-view .chat-welcome .crm-empty-state>strong { font-size:14px;font-weight:600; }
html:root #messenger-view .messenger-welcome-summary { display:flex;justify-content:center;flex-wrap:wrap;gap:5px 14px;margin-top:6px;font-size:11px; }
@media(max-width:850px) and (min-width:651px){html:root #messenger-shell { grid-template-columns:60px minmax(235px,40%) minmax(0,1fr); }html:root .messenger-space-label { font-size:9px; }}
@media(max-width:650px){
  html:root #messenger-shell { grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);min-height:0; }
  html:root .messenger-spaces { flex-direction:row;gap:4px;padding:5px 8px;border-right:0;border-bottom:1px solid var(--border);overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none; }
  html:root .messenger-spaces::-webkit-scrollbar { display:none; }
  html:root #messenger-spaces .messenger-space { flex:1 0 64px;min-width:64px;width:auto;min-height:48px;gap:3px;padding:5px 1px;border-radius:9px;font-size:10px; }
  html:root .messenger-space-icon,html:root .messenger-space-icon svg { width:19px;height:19px; }
  html:root #messenger-shell .chat-sidebar,html:root #messenger-shell .chat-conversation { min-height:0;height:auto;grid-row:2;grid-column:1; }
  html:root #messenger-shell .chat-conversation { display:none; }
  html:root #messenger-shell.chat-is-open .chat-sidebar { display:none; }
  html:root #messenger-shell.chat-is-open .chat-conversation { display:flex;flex-direction:column; }
  html:root #messenger-view .messenger-unread-filter { min-height:44px; }
  html:root #messenger-view #chat-search { min-height:44px;font-size:13px; }
  html:root #messenger-view .chat-row-title strong { font-size:13px; }
  html:root #messenger-view .chat-row-preview { font-size:12px; }
  html:root #messenger-view .chat-row { grid-template-columns:minmax(0,1fr) 44px;padding-block:7px; }
  html:root #messenger-view .chat-row-tools .chat-icon-button { width:44px;min-width:44px;height:44px;min-height:44px;padding:12px; }
  html:root #messenger-view .compose-icon-button { width:44px;min-width:44px;height:44px;min-height:44px;padding:11px; }
}
@media(prefers-reduced-motion:reduce){html:root #messenger-spaces .messenger-space { transition:none; }}
