/* Scoped Team Build controls; voice-team.css supplies the surrounding room. */
#workspace-avatar .team-build-panel {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 16px;
  color: var(--voice-room-ink, #e5edf8);
  background: var(--voice-room-well, #0b1422);
  border-radius: 0 0 14px 14px;
}
#workspace-avatar .team-build-panel[hidden] { display: none !important; }
#workspace-avatar .team-build-panel [hidden] { display: none !important; }
#workspace-avatar .avatar-realtime-link { display: inline-flex; align-items: center; min-height: 44px; max-width: 100%; box-sizing: border-box; margin-top: 8px; padding: 8px 12px; border: 1px solid var(--voice-room-line, #354963); border-radius: 8px; color: var(--voice-room-ink, #e5edf8); font-size: .8125rem; line-height: 1.4; overflow-wrap: anywhere; }
#workspace-avatar .avatar-realtime-link:focus-visible { outline: 3px solid #92e7fa; outline-offset: 3px; }
#workspace-avatar .team-build-panel :is(h3, h4, p) { margin: 0; }
#workspace-avatar .team-build-heading h3 { font-size: 1rem; line-height: 1.4; }
#workspace-avatar .team-build-heading { display: grid; gap: 5px; }
#workspace-avatar .team-build-panel :is(.team-build-note, .team-build-meta) {
  color: var(--voice-room-muted, #b5c4d8);
  font-size: .8125rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
#workspace-avatar .team-build-panel label { display: grid; gap: 7px; color: inherit; font-size: .875rem; font-weight: 600; }
#workspace-avatar .team-build-panel .team-build-mode { grid-template-columns: auto minmax(120px, 1fr); align-items: center; }
#workspace-avatar .team-build-panel :is(select, textarea) {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--voice-room-line, #354963);
  border-radius: 9px;
  background: #101d2e;
  color: #edf5ff;
  font: inherit;
  font-size: max(16px, 1em);
  line-height: 1.5;
}
#workspace-avatar .team-build-panel textarea { resize: vertical; min-height: 112px; max-height: 320px; }
#workspace-avatar .team-build-panel textarea::placeholder { color: #a8b9ce; opacity: 1; }
#workspace-avatar .team-build-actions { display: flex; flex-wrap: wrap; gap: 8px; }
#workspace-avatar .team-build-panel button {
  min-height: 44px;
  min-width: 0;
  max-width: 100%;
  padding: 10px 14px;
  white-space: normal;
  overflow-wrap: anywhere;
  font-size: .875rem;
  line-height: 1.4;
}
#workspace-avatar .team-build-actions button { flex: 1 1 140px; }
#workspace-avatar .team-build-panel [data-team-build-create] { background: #18434d; border-color: #5c9cab; color: #edfdff; font-weight: 700; }
#workspace-avatar .team-build-panel button:disabled { opacity: .6; cursor: default; }
#workspace-avatar .team-build-status { padding: 11px 12px; border-left: 3px solid #74cadb; background: #112331; font-size: .875rem; line-height: 1.5; overflow-wrap: anywhere; }
#workspace-avatar .team-build-receipt { display: grid; gap: 9px; padding: 13px; border: 1px solid var(--voice-room-line, #354963); border-radius: 11px; }
#workspace-avatar .team-build-receipt-head { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; }
#workspace-avatar .team-build-receipt h4 { font-size: .9375rem; }
#workspace-avatar .team-build-state { padding: 4px 8px; border: 1px solid #455f79; border-radius: 6px; color: #d8e9ff; font-size: .75rem; overflow-wrap: anywhere; }
#workspace-avatar .team-build-state[data-state="running"],
#workspace-avatar .team-build-state[data-state="working"] { background: #12362f; border-color: #448675; color: #b9f1df; }
#workspace-avatar .team-build-worker { font-size: .875rem; line-height: 1.5; overflow-wrap: anywhere; }
#workspace-avatar .team-build-files { font-size: .8125rem; line-height: 1.5; }
#workspace-avatar .team-build-files summary { cursor: pointer; min-height: 44px; padding: 10px 0; box-sizing: border-box; }
#workspace-avatar .team-build-files ul { margin: 0; padding-left: 22px; }
#workspace-avatar .team-build-files li { margin: 4px 0; overflow-wrap: anywhere; }
#workspace-avatar .team-build-panel :is(button, select, textarea, summary):focus-visible { outline: 3px solid #92e7fa; outline-offset: 3px; }
#app #workspace-avatar[data-avatar-view="build"] .avatar-stage { height: clamp(190px, 28dvh, 300px); }
@media (max-width: 520px) {
  #workspace-avatar .team-build-panel { padding: 12px; }
  #workspace-avatar .team-build-panel .team-build-mode { grid-template-columns: 1fr; }
  #workspace-avatar .avatar-conversation-tabs button { flex-basis: 90px; }
}
@media (forced-colors: active) {
  #workspace-avatar .team-build-panel :is(button, select, textarea, .team-build-receipt, .team-build-status, .team-build-state) { color: CanvasText; background: Canvas; border: 1px solid CanvasText; }
  #workspace-avatar .team-build-panel :focus-visible { outline-color: Highlight; }
}

/* HAL_AVATAR_THEME_CONTRAST_V2
 * The room intentionally keeps its dark stage palette in either shell theme.
 * experience.css uses --panel-3 !important for workspace buttons; isolate the
 * entire local token pair, including the outer headings' backing surface.
 */
:is(#app #workspace-avatar, #avatar-room) {
  --voice-room-ink: #eef4ff;
  --voice-room-muted: #b3c2d8;
  --voice-room-panel: #101a2b;
  --voice-room-well: #0a1220;
  --voice-room-line: #536b87;
  --voice-room-accent: #80e7fa;
  --panel: var(--voice-room-well);
  --panel-2: var(--voice-room-panel);
  --panel-3: #152238;
  --divider: var(--voice-room-line);
  --divider-strong: #7086a1;
  --surface: var(--voice-room-panel);
  --text: var(--voice-room-ink);
  --muted: var(--voice-room-muted);
  --avatar-muted: var(--voice-room-muted);
  background: var(--voice-room-well);
  color: var(--voice-room-ink);
  color-scheme: dark;
}

:is(#app #workspace-avatar, #avatar-room) :is(.avatar-workspace-truth, .avatar-conversation-heading, .avatar-console-head) {
  background: #102330;
  color: var(--voice-room-ink);
}
:is(#app #workspace-avatar, #avatar-room) :is(.avatar-roster-block, .avatar-live-voice) {
  background: var(--voice-room-panel);
  color: var(--voice-room-ink);
}
:is(#app #workspace-avatar, #avatar-room) .avatar-provider-status {
  background: #101f1c !important;
  color: #b9edcc !important;
}

/* Paired colors also cover the direct room, which uses .button. The important
 * background is limited to these controls to beat the existing shell rule.
 */
:is(#app #workspace-avatar, #avatar-room) :is(.workspace-button, .button, .avatar-conversation-tabs button) {
  background: #152238 !important;
  color: var(--voice-room-ink);
  border-color: var(--voice-room-line);
}
:is(#app #workspace-avatar, #avatar-room) :is(.workspace-button, .button, .avatar-conversation-tabs button):not(:disabled, [aria-selected="true"], [data-recording="true"], [data-team-build-create]):hover {
  background: #23364d !important;
  color: #f4f8ff;
  border-color: #8ba9c3;
}
:is(#app #workspace-avatar, #avatar-room) .avatar-conversation-tabs button {
  color: var(--voice-room-muted);
}
:is(#app #workspace-avatar, #avatar-room) .avatar-conversation-tabs button[aria-selected="true"] {
  background: #173742 !important;
  color: #c3f6ff;
  border-color: #80c7d6;
}
:is(#app #workspace-avatar, #avatar-room) [data-team-build-create]:not(:disabled) {
  background: #18434d !important;
  color: #edfdff;
  border-color: #83c8d7;
}
:is(#app #workspace-avatar, #avatar-room) .avatar-mic-button[data-recording="true"] {
  background: #8a2530 !important;
  color: #fff;
  border-color: #ff999f;
}
:is(#app #workspace-avatar, #avatar-room) :is(.workspace-button, .button, .avatar-conversation-tabs button):disabled {
  opacity: 1;
  background: #182334 !important;
  color: #a9b9cf;
  border-color: #45566f;
}
:is(#app #workspace-avatar, #avatar-room) :is(button, input, select, textarea, summary, a, [tabindex]):focus-visible {
  outline: 3px solid var(--voice-room-accent);
  outline-offset: 3px;
}

@media (forced-colors: active) {
  :is(#app #workspace-avatar, #avatar-room) {
    --voice-room-ink: CanvasText;
    --voice-room-muted: CanvasText;
    --voice-room-panel: Canvas;
    --voice-room-well: Canvas;
    --voice-room-line: CanvasText;
    --voice-room-accent: Highlight;
    background: Canvas;
    color: CanvasText;
  }
  :is(#app #workspace-avatar, #avatar-room) :is(.avatar-workspace-truth, .avatar-conversation-heading, .avatar-console-head, .avatar-roster-block, .avatar-live-voice) {
    background: Canvas;
    color: CanvasText;
  }
  :is(#app #workspace-avatar, #avatar-room) .avatar-provider-status {
    background: Canvas !important;
    color: CanvasText !important;
  }
  :is(#app #workspace-avatar, #avatar-room) :is(.workspace-button, .button, .avatar-conversation-tabs button),
  :is(#app #workspace-avatar, #avatar-room) :is(.workspace-button, .button, .avatar-conversation-tabs button):not(:disabled, [aria-selected="true"], [data-recording="true"], [data-team-build-create]):hover,
  :is(#app #workspace-avatar, #avatar-room) [data-team-build-create]:not(:disabled) {
    background: ButtonFace !important;
    color: ButtonText;
    border-color: ButtonText;
  }
  :is(#app #workspace-avatar, #avatar-room) .avatar-conversation-tabs button[aria-selected="true"],
  :is(#app #workspace-avatar, #avatar-room) .avatar-mic-button[data-recording="true"] {
    background: Highlight !important;
    color: HighlightText;
    border-color: Highlight;
  }
  :is(#app #workspace-avatar, #avatar-room) :is(.workspace-button, .button, .avatar-conversation-tabs button):disabled {
    background: ButtonFace !important;
    color: GrayText;
    border-color: GrayText;
  }
}
