/* AI Chat only. Provider state, connection flow and the outer shell own behavior. */
#chat-center,
#agent-provider-connection-modal {
  --chat-surface:var(--bb-theme-surface, #ffffff);
  --chat-soft:var(--bb-theme-inset, #f4f6f7);
  --chat-text:var(--bb-theme-ink, #202628);
  --chat-muted:var(--bb-theme-muted, #626d73);
  --chat-line:var(--bb-theme-line, #dce2e5);
  --chat-accent:var(--bb-theme-up, #287455);
  --chat-selected:var(--bb-theme-inset, #eaf5ee);
  --chat-action:var(--bb-theme-inverse, #202628);
  --chat-action-text:var(--bb-theme-inverse-ink, #ffffff);
  letter-spacing:0;
}
#chat-center[data-chat-theme="dark"],
#agent-provider-connection-modal[data-chat-theme="dark"] {
  --chat-surface:var(--bb-theme-surface, #151c20);
  --chat-soft:var(--bb-theme-inset, #1d262b);
  --chat-text:var(--bb-theme-ink, #edf2f4);
  --chat-muted:var(--bb-theme-muted, #abb8bf);
  --chat-line:var(--bb-theme-line, #354148);
  --chat-accent:var(--bb-theme-accent, #a7d7b9);
  --chat-selected:var(--bb-theme-inset, #243b33);
  --chat-action:var(--bb-theme-ink, #c8e8d4);
  --chat-action-text:var(--bb-theme-canvas, #15261d);
  color-scheme:var(--bb-theme-color-scheme, dark);
}
#chat-center :is(.chat-list,.chat-panel,.panel-head-title,.msg-stack,.thread-item>div) {min-width:0}
#chat-center .chat-panel {
  display:flex;
  flex-direction:column;
  min-height:0;
}
#chat-center .panel-head {
  flex:none;
  gap:10px;
  padding:12px 16px;
  min-height:68px;
  align-items:center;
  background:var(--chat-surface);
  border-color:var(--chat-line);
}
#chat-center .panel-head-title {flex:1 1 140px;gap:4px}
#chat-center .panel-head-title strong {font-size:16px;line-height:1.35;color:var(--chat-text);overflow-wrap:anywhere}
#chat-center .panel-head-title span {font-size:12px;line-height:1.4;color:var(--chat-muted);overflow-wrap:anywhere}
#chat-center .support-head-action {
  min-height:36px;
  padding:7px 10px;
  border-radius:6px;
  font-size:12px;
  line-height:1.35;
  background:var(--chat-soft);
  color:var(--chat-text);
  border-color:var(--chat-line);
  white-space:normal;
  flex:0 0 auto;
  max-width:112px;
}
#chat-center .trace-pill {font-size:11px;color:var(--chat-muted);background:rgba(var(--bb-theme-surface-rgb, 0,0,0), 0.0);border-color:var(--chat-line)}
#chat-center .message-thread {
  flex:1 1 0;
  min-height:0;
  gap:20px;
  padding:20px 18px;
  background:rgba(var(--bb-theme-surface-rgb, 0,0,0), 0.0);
  scroll-padding-block:20px;
}
#chat-center .msg {max-width:min(92%,720px);gap:10px}
#chat-center .msg-meta {font-size:11px;line-height:1.5;color:var(--chat-muted);overflow-wrap:anywhere;margin-bottom:5px}
#chat-center .bubble {font-size:15px;line-height:1.65;box-shadow:none;overflow-wrap:anywhere;padding:12px 14px;border-radius:8px}
#chat-center .msg.assistant .bubble {background:var(--chat-surface);color:var(--chat-text);border-color:var(--chat-line)}
#chat-center .msg.user .bubble {background:var(--chat-selected);color:var(--chat-text);border-color:var(--chat-line)}
#chat-center .bubble :is(pre,table) {max-width:100%;overflow-x:auto}
#chat-center .bubble pre {white-space:pre-wrap;overflow-wrap:anywhere}
#chat-center .agent-provider-empty strong {color:var(--chat-text);font-size:16px;line-height:1.5}
#chat-center .agent-provider-empty span {color:var(--chat-muted);font-size:13px;line-height:1.55}
#chat-center .agent-provider-empty button {background:var(--chat-action);color:var(--chat-action-text);min-height:40px;font-size:13px}
#chat-center .agent-capability-action-card {background:var(--chat-surface);color:var(--chat-text);border-color:var(--chat-line);padding:12px;gap:12px}
#chat-center .agent-capability-action-head {flex-wrap:wrap}
#chat-center .agent-capability-action-head strong {font-size:14px}
#chat-center :is(.agent-capability-action-data,.agent-capability-action-note) {font-size:12px;line-height:1.5}
#chat-center :is(.agent-capability-action-data dt,.agent-capability-action-note,.agent-capability-action-state) {color:var(--chat-muted)}
#chat-center .agent-capability-action-state {border-color:var(--chat-line);font-size:11px}
#chat-center .agent-capability-action-controls button {min-height:38px;font-size:12px;background:var(--chat-action);color:var(--chat-action-text)}
#chat-center .agent-capability-action-controls button.secondary {background:var(--chat-soft);color:var(--chat-text);border-color:var(--chat-line)}
#chat-center :is(.thread-avatar,.msg-avatar) {flex-shrink:0;box-sizing:border-box}
#chat-center :is(.thread-avatar,.msg-avatar,.chat-sheet-avatar) img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
}
#chat-center :is(.thread-avatar,.msg-avatar,.chat-sheet-avatar) img[hidden] {display:none!important}
#chat-center :is(.thread-avatar,.msg-avatar):has(img) {padding:4px;background:var(--bb-theme-surface, #edf1f2);border-color:var(--chat-line);border-radius:8px}
#chat-center .thread-avatar:has(.broker-avatar-stack) {padding:0}
#chat-center .msg-avatar {width:32px;height:32px}
#chat-center .chat-realtime-anchor .thread-avatar {border-radius:50%}
#chat-center .chat-realtime-anchor[data-realtime-state="idle"] .thread-avatar {width:38px;height:38px}
#chat-center :is([data-primary-ai-header],[data-primary-ai-thread] .thread-avatar,.msg[data-primary-ai-message] .msg-avatar) {background:var(--bb-theme-inverse, #111b1e)}
#chat-center .chat-artwork-fallback {
  width:100%;height:100%;display:grid;place-items:center;
  color:var(--bb-theme-ink, #34484f);background:var(--bb-theme-surface, #edf1f2);font-size:12px;font-weight:700;
  overflow:hidden;line-height:1;
}
#chat-center .ai-workbench-entry {
  border:0;
  border-bottom:1px solid var(--chat-line);
  border-radius:0;
  background:rgba(var(--bb-theme-surface-rgb, 0,0,0), 0.0);
  box-shadow:none;
  padding:14px 0;
  gap:14px;
}
#chat-center .ai-workbench-entry-copy strong {font-size:16px;color:var(--chat-text)}
#chat-center .ai-workbench-entry-copy span {color:var(--chat-muted);font-size:12px;line-height:1.5}
#chat-center .agent-provider-toolbar {justify-content:flex-start;padding-top:8px;border-color:var(--chat-line)}
#chat-center .agent-provider-frame {
  width:100%;inline-size:100%;max-inline-size:100%;height:76px;block-size:76px;min-height:76px;min-block-size:76px;
  border:0;border-radius:0;background:rgba(var(--bb-theme-surface-rgb, 0,0,0), 0.0);padding:4px 0;
}
#chat-center .agent-provider-rail {
  --agent-rail-button-size:60px;
  --agent-rail-visual-size:34px;
  --agent-rail-gap:8px;
  justify-content:flex-start;height:68px;block-size:68px;min-height:68px;min-block-size:68px;max-height:68px;max-block-size:68px;
  padding:3px 2px;touch-action:pan-x pan-y;overflow-anchor:none;scroll-snap-type:none;
}
#chat-center .agent-provider-tab {
  width:60px;inline-size:60px;min-width:60px;min-inline-size:60px;
  height:60px;block-size:60px;min-height:60px;min-block-size:60px;
  flex:0 0 60px;padding:5px;gap:2px;border-radius:8px;
  background:var(--chat-soft);border-color:var(--chat-line);color:var(--chat-text);
}
#chat-center .agent-provider-tab[aria-selected="true"] {background:var(--chat-selected);border-color:var(--chat-accent);box-shadow:inset 0 0 0 1px var(--chat-accent)}
#chat-center .agent-provider-visual {width:34px;inline-size:34px;height:34px;block-size:34px;background:var(--bb-theme-surface, #f1f4f5);border-radius:6px}
#chat-center .agent-provider-visual img {padding:2px;box-sizing:border-box}
#chat-center :is(.agent-provider-tab-mt5,.agent-provider-mt5-add) {grid-template-rows:34px 12px}
#chat-center .agent-provider-mt5-badge {font-size:10px;line-height:12px;color:var(--chat-muted)}
#chat-center .agent-provider-status-dot {border-color:var(--chat-soft);width:10px;height:10px;inset-inline-end:4px;inset-block-end:4px}
#chat-center .agent-provider-tab-mt5 .agent-provider-status-dot {inset-block-start:30px}
html:not([data-mini-polish="ai"]) #chat-center .composer {flex:none;background:var(--chat-surface);border-color:var(--chat-line);padding:10px 14px}
/* Text owns the whole first row; optional artwork cannot steal its column. */
html:not([data-mini-polish="ai"]) #chat-center .input-row {
  display:grid;grid-template-columns:36px 36px minmax(0,1fr) 36px;
  grid-template-rows:minmax(38px,auto) 36px;gap:6px;
  border:1px solid var(--chat-line);border-radius:8px;
  padding:8px 10px;background:var(--chat-surface);box-shadow:none;
}
html:not([data-mini-polish="ai"]) #chat-center .input-row .chat-input {
  grid-column:1 / -1;grid-row:1;min-width:0;width:100%;min-height:38px;height:38px;max-height:112px;
  color:var(--chat-text);font-size:16px;line-height:24px;padding:6px 0!important;
}
html:not([data-mini-polish="ai"]) #chat-center .input-row .mini-composer-avatar {grid-column:3;grid-row:2;justify-self:end;width:32px;height:32px;object-fit:contain}
#chat-center button.mini-composer-avatar {padding:0;border:0;background:rgba(var(--bb-theme-surface-rgb, 0,0,0), 0.0);color:inherit;cursor:pointer}
#chat-center button.mini-composer-avatar img {display:block;width:100%;height:100%;object-fit:contain}
#chat-center button.mini-composer-avatar[hidden] {display:none!important}
html:not([data-mini-polish="ai"]) #chat-center .quick-toggle {grid-column:1;grid-row:2}
html:not([data-mini-polish="ai"]) #chat-center .chat-voice {grid-column:2;grid-row:2}
html:not([data-mini-polish="ai"]) #chat-center .chat-send {grid-column:4;grid-row:2;background:var(--chat-action);color:var(--chat-action-text);border:0}
html:not([data-mini-polish="ai"]) #chat-center :is(.quick-toggle,.chat-voice) {background:var(--chat-soft);color:var(--chat-text);border-color:var(--chat-line)}
html:not([data-mini-polish="ai"]) #chat-center .quick-toggle::before {color:var(--chat-text)}
html:not([data-mini-polish="ai"]) #chat-center :is(.input-row,.ai-workbench-composer) textarea::placeholder {color:var(--chat-muted)}
#chat-center #binance-chat-connections {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;
  padding:12px 16px;background:var(--chat-surface);color:var(--chat-text);border-color:var(--chat-line);
}
#chat-center #binance-chat-connections .binance-connection-option {display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:0;min-width:0}
#chat-center #binance-chat-connections .binance-connection-option label {flex:1 0 100%;min-height:28px;font-size:13px;overflow-wrap:anywhere}
#chat-center #binance-chat-connections small {color:var(--chat-muted);font-size:11px}
#chat-center #binance-chat-connections small[data-connected="true"] {color:var(--chat-accent)}
#chat-center #binance-chat-connections button {color:var(--chat-accent);min-height:28px;font-size:12px}
#chat-center #binance-chat-connections .binance-execution-target {grid-column:1 / -1;justify-content:space-between;gap:12px;border-top:1px solid var(--chat-line);padding-top:8px}
#chat-center #binance-chat-connections select {max-width:65%;min-height:34px;background:var(--chat-soft);border-color:var(--chat-line);color:var(--chat-text);border-radius:6px}
#chat-center #binance-chat-connections .binance-answer-author {grid-column:1 / -1;margin:0}
#chat-center :is(#binance-chat-connections,.support-head-action,.trace-pill,.agent-provider-toolbar)[hidden],
#agent-provider-connection-modal[hidden],
#agent-provider-connection-modal [hidden] {display:none!important}
#agent-provider-connection-modal .agent-provider-dialog {
  width:min(480px,100%);max-height:calc(100dvh - 32px);background:var(--chat-surface);color:var(--chat-text);border-color:var(--chat-line);
}
#agent-provider-connection-modal .agent-provider-dialog-head {padding:18px 20px;gap:12px;border-color:var(--chat-line)}
#agent-provider-connection-modal .agent-provider-dialog-title {gap:6px}
#agent-provider-connection-modal .agent-provider-dialog-title strong {font-size:17px;line-height:1.4}
#agent-provider-connection-modal .agent-provider-dialog-title span {font-size:12px}
#agent-provider-connection-modal .agent-provider-dialog-close {width:36px;height:36px;background:var(--chat-soft);color:var(--chat-text);border-color:var(--chat-line)}
#agent-provider-connection-modal .agent-provider-dialog-body {padding:18px 20px calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:16px}
#agent-provider-connection-modal :is(.agent-provider-guidance,.agent-provider-secret-preserve,.agent-provider-allowlist,.agent-provider-dialog-error) {margin:0;font-size:13px;line-height:1.55}
#agent-provider-connection-modal :is(.agent-provider-guidance,.agent-provider-secret-preserve) {color:var(--chat-muted)}
#agent-provider-connection-modal .agent-provider-connection-form {gap:14px}
#agent-provider-connection-modal .agent-provider-field {gap:6px}
#agent-provider-connection-modal .agent-provider-field span {font-size:12px;color:var(--chat-muted)}
#agent-provider-connection-modal .agent-provider-field :is(input,select) {min-height:44px;font-size:16px;background:var(--chat-soft);color:var(--chat-text);border-color:var(--chat-line)}
#agent-provider-connection-modal .agent-provider-dialog-actions {gap:10px;padding:0}
#agent-provider-connection-modal .agent-provider-dialog-actions :is(button,a) {min-height:42px;max-width:100%;font-size:13px;line-height:1.4;white-space:normal;overflow-wrap:anywhere;padding:10px 14px;background:var(--chat-action);color:var(--chat-action-text);border-color:var(--bb-theme-line, transparent)}
#agent-provider-connection-modal :is(.agent-provider-dialog-actions button.secondary,[data-agent-oauth-link]) {background:var(--chat-soft);color:var(--chat-text);border-color:var(--chat-line)}
#agent-provider-connection-modal .agent-provider-oauth {gap:18px}
#agent-provider-connection-modal [data-agent-oauth-qr] {width:min(240px,100%);height:auto;aspect-ratio:1;object-fit:contain;background:var(--bb-theme-surface, #fff);padding:12px;border:1px solid var(--bb-theme-line, #dce2e5);border-radius:8px;box-sizing:border-box}
#agent-provider-connection-modal .agent-provider-dialog-body>.agent-provider-dialog-actions {border-top:1px solid var(--chat-line);padding-top:14px}
#agent-provider-connection-modal[data-chat-theme="dark"] [data-status-tone="green"] {--agent-status-color:var(--bb-theme-muted, #a7d7b9)}
#agent-provider-connection-modal[data-chat-theme="dark"] [data-status-tone="yellow"] {--agent-status-color:var(--bb-theme-accent-text, #e6c96b)}
#agent-provider-connection-modal[data-chat-theme="dark"] [data-status-tone="red"] {--agent-status-color:var(--bb-theme-down, #ffaba5)}
#agent-provider-connection-modal[data-chat-theme="dark"] [data-status-tone="gray"] {--agent-status-color:var(--bb-theme-muted, #abb8bf)}
#agent-provider-connection-modal[data-chat-theme="dark"] .agent-provider-dialog-error {color:var(--bb-theme-down, #ffaba5);background:var(--bb-theme-surface, #38282a)}
#agent-provider-connection-modal[data-chat-theme="dark"] .agent-provider-allowlist {color:var(--bb-theme-accent-text, #e6c96b);background:var(--bb-theme-surface, #302d22)}
#chat-center.chat-workspace-embed:is(.external-ai,.external-workspace) :is(.input-row,.ai-workbench-composer) {display:none!important}
#chat-center.chat-workspace-embed:is(.external-ai,.external-workspace) .composer {position:static!important;min-height:0;left:auto!important;right:auto!important;box-shadow:none}
html:not([data-mini-polish="ai"]) #chat-center :is(button,a,input,textarea,select):focus-visible,
html[data-mini-polish="ai"] #chat-center :is(button,a,input,textarea,select):not(.composer *,.ai-workbench-composer *):focus-visible,
#agent-provider-connection-modal :is(button,a,input,select):focus-visible {outline:2px solid var(--chat-accent);outline-offset:2px}
html:not([data-mini-polish="ai"]) #chat-center :is(.input-row,.ai-workbench-composer):focus-within {border-color:var(--chat-accent);box-shadow:0 0 0 1px var(--chat-accent)}
html:not([data-mini-polish="ai"]) #chat-center :is(.input-row,.ai-workbench-composer) textarea:focus-visible {outline:none!important}
@media(max-width:820px) {
  #chat-center:not(.mobile-detail) .chat-panel {display:none}
  #chat-center.mobile-detail .chat-list {display:none}
  #chat-center .chat-list {display:flex;flex-direction:column;gap:10px;padding:12px;height:100%;min-height:0}
  #chat-center .chat-list>div:last-child {flex:1 1 0;min-height:0;overflow:auto;padding-bottom:132px}
  #chat-center .ai-workbench-entry {min-block-size:0;flex:none;grid-template-rows:auto auto;overflow:visible;padding:12px 0}
  #chat-center .panel-head {flex-wrap:wrap!important;padding:10px 12px;gap:8px!important}
  #chat-center .panel-head>.panel-head-title {flex:1 1 110px!important;min-width:0}
  #chat-center .panel-head-title #active-title {white-space:normal!important;overflow-wrap:anywhere;font-size:15px;line-height:1.35}
  #chat-center .panel-head-title #active-subtitle {white-space:normal!important;font-size:11px;line-height:1.35}
  #chat-center .panel-head .support-head-action {font-size:11px;max-width:88px}
  #chat-center .chat-back {width:30px;flex:0 0 30px}
  #chat-center .message-thread {padding:16px 12px calc(var(--chat-composer-height,112px) + 28px)}
  #chat-center .msg {max-width:96%;gap:8px}
  html:not([data-mini-polish="ai"]) #chat-center :is(.composer,.ai-workbench-composer) {
    border-radius:8px;box-shadow:0 4px 20px rgba(var(--bb-theme-shadow-rgb, 0,0,0), 0.13333333333333333);
    background:var(--chat-surface)!important;color:var(--chat-text);border-color:var(--chat-line);
  }
  html:not([data-mini-polish="ai"]) #chat-center.mobile-detail .composer {padding:8px!important;left:max(8px,env(safe-area-inset-left))!important;right:max(8px,env(safe-area-inset-right))!important;min-height:112px;z-index:70}
  html:not([data-mini-polish="ai"]) #chat-center .ai-workbench-composer {
    position:fixed!important;left:max(8px,env(safe-area-inset-left))!important;right:max(8px,env(safe-area-inset-right))!important;
    bottom:var(--chat-composer-bottom)!important;z-index:70;
    height:auto;min-height:112px;padding:10px;
    grid-template-columns:34px minmax(0,1fr) 36px;grid-template-rows:minmax(38px,auto) 36px;gap:6px;
  }
  html:not([data-mini-polish="ai"]) #chat-center .ai-workbench-composer textarea {grid-column:1 / -1;grid-row:1;width:100%;min-width:0;height:38px;min-height:38px;min-block-size:38px;max-height:90px;padding:6px 0;margin:0;line-height:24px;font-size:16px;color:var(--chat-text)}
  html:not([data-mini-polish="ai"]) #chat-center .ai-workbench-composer .mini-composer-avatar {grid-column:1;grid-row:2;align-self:center;object-fit:contain}
  html:not([data-mini-polish="ai"]) #chat-center .ai-workbench-send {grid-column:3;grid-row:2;width:36px;height:36px;inline-size:36px;block-size:36px;min-width:0;background:var(--chat-action);color:var(--chat-action-text);border-radius:50%}
  html:not([data-mini-polish="ai"]) #chat-center .input-row {grid-template-columns:36px 36px minmax(0,1fr) 36px;gap:6px;padding:6px 8px}
  html:not([data-mini-polish="ai"]) #chat-center .chat-input {color:var(--chat-text)}
  #agent-provider-connection-modal .agent-provider-dialog {max-height:calc(100dvh - 24px)}
  #agent-provider-connection-modal :is(.agent-provider-dialog-head,.agent-provider-dialog-body) {padding-left:16px;padding-right:16px}
  #agent-provider-connection-modal .agent-provider-dialog-title strong {font-size:16px}
}
@media(min-width:821px) {
  #chat-center #binance-chat-connections {grid-template-columns:repeat(2,minmax(0,1fr));max-height:230px;overflow:auto}
}
/* The outer workspace owns the input; its embedded footer only holds shortcuts. */
html:not([data-mini-polish="ai"]) #chat-center.chat-workspace-embed.external-workspace .composer {
  height:auto;min-height:0;min-block-size:0;align-self:end;align-content:start;
}
#chat-center.chat-workspace-embed.external-workspace .chat-quick {
  height:auto;min-height:0;align-items:center;align-content:start;
}
#chat-center.chat-workspace-embed.external-workspace .chat-quick button {
  flex:0 0 auto;height:36px;min-height:36px;max-height:36px;
  padding:0 10px;line-height:20px;box-sizing:border-box;
}

/* 2026-10-07 theme audit: an avatar initial on the green disc is white, not the same green. */
.cc-avatar{color:#fff}
