/* Task controls: one semantic status, one view toolbar, one model selector. */
.task-detail__head { min-height:36px; padding:5px 10px; }
.task-detail__title h2 { font-size:12px; }
.task-detail__goal { min-height:28px; padding:5px 10px; }
.task-detail__goal > span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.task-settings-menu,.runtime-controls details { position:relative; }
.task-settings-menu > summary,.runtime-controls details > summary { list-style:none; cursor:pointer; }
.task-settings-menu > summary::-webkit-details-marker,.runtime-controls details > summary::-webkit-details-marker { display:none; }
.task-settings-popover,.runtime-menu-panel { position:absolute; z-index:30; right:0; top:calc(100% + 4px); box-sizing:border-box; width:300px; max-width:calc(100vw - 24px); max-height:60vh; overflow:auto; padding:10px; border:1px solid var(--border,#30363d); border-radius:6px; background:#161b22; box-shadow:0 10px 30px #0005; color:#d9e2ef; font:11px/1.5 var(--font,system-ui); }
.task-settings-popover > b { display:block; margin-bottom:8px; }
.task-settings-popover p,.runtime-menu-panel p { color:var(--text2,#89939e); overflow-wrap:anywhere; }
.task-inspection-facts { display:grid; grid-template-columns:auto 1fr; gap:5px 12px; font-size:10px; }
.task-inspection-facts dt { color:var(--text2,#89939e); }.task-inspection-facts dd { margin:0; overflow-wrap:anywhere; }
.runtime-head,.task-runtime--inline .runtime-head { min-height:36px; gap:8px; padding:4px 10px; flex-wrap:wrap; position:relative; z-index:6; }
.runtime-team { display:flex; align-items:center; gap:10px; flex:1 1 320px; min-width:0; flex-wrap:wrap; color:#aab7c7; font:10px/1.4 var(--font,system-ui); }
.runtime-team b { color:#d9e2ef; font-weight:500; }
.runtime-node-counts { white-space:nowrap; }.runtime-node-counts .is-failing { color:var(--red,#f85149); }
.runtime-controls { flex:0 1 auto; width:auto; margin-left:auto; flex-wrap:wrap; overflow:visible; gap:4px; }
.runtime-controls .runtime-btn { height:25px; padding:0 7px; font:10px var(--font,system-ui); border-radius:4px; }
.runtime-menu-panel { display:flex; flex-direction:column; gap:8px; }
.runtime-controls details:not([open]) > .runtime-menu-panel,.task-settings-menu:not([open]) > .task-settings-popover { display:none; }
.runtime-spacing { display:flex; flex-wrap:wrap; align-items:center; gap:6px; }.runtime-spacing input { width:100%; }.runtime-spacing span { color:var(--text2,#89939e); font-size:10px; }
.runtime-authority[hidden] { display:none; }
.runtime-controls .runtime-adaptive { font-size:10px; }.runtime-controls .runtime-adaptive__head { flex-wrap:wrap; }
#agent-chat-mount .ai-header-controls { overflow:visible!important; justify-content:flex-start; }
#agent-chat-mount .ai-window-controls { margin-left:auto; display:flex; align-items:center; gap:3px; }
#agent-chat-mount .ai-window-controls .chat-collapse-btn { margin-left:0; }
#agent-chat-mount .ai-header .ca-btn { border-radius:4px; padding:4px 6px; }
#agent-chat-mount .assistant-scope-tabs { padding:0 7px; gap:2px; }
#agent-chat-mount .assistant-scope-tab { padding:6px 6px; font-size:11px; }
#agent-chat-mount .mx-resource-fact { display:flex; gap:8px; justify-content:space-between; margin:5px 0; font-size:10px; }
#agent-chat-mount .mx-resource-fact > span { color:var(--text2); flex:0 0 70px; }
#agent-chat-mount .mx-resource-fact > b { font-weight:500; text-align:right; overflow-wrap:anywhere; }
#agent-chat-mount .mx-resource-facts p { margin:6px 0; font-size:10px; color:var(--text2); line-height:1.5; }
#agent-chat-mount .mx-resource-facts details { margin:8px 0; font-size:10px; }
#agent-chat-mount .mx-resource-facts summary { cursor:pointer; color:var(--text2); }
#agent-chat-mount .mx-next-role { display:block; border-top:1px solid var(--border); padding-top:8px; margin-top:8px; font-size:11px; }
#agent-chat-mount .chat-input-row textarea { min-height:32px; }
#agent-chat-mount .chat-input-row button.send-btn,#agent-chat-mount .chat-input-row button.stop-btn { min-width:52px; padding:6px 9px; }
@media (max-width:800px) { .runtime-team { flex-basis:100%; }.runtime-controls { order:initial; width:auto; }.runtime-menu-panel { position:fixed; top:auto; right:10px; } }

#agent-chat-mount .mx-chat-recipient { display:block; font-size:10px; color:var(--text2); }

/* ---- PRD 1.2.0 unified Task graph: viewing line, interaction cards, delivery chip ---- */
.runtime-viewing { padding:3px 10px; border-bottom:1px solid var(--border,#30363d); font:11px/1.4 var(--font-mono,ui-monospace,monospace); color:var(--text2,#8b949e); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#agent-chat-mount .mx-viewing { display:block; font-size:10px; color:var(--text2,#8b949e); line-height:1.5; padding:2px 0; }
#agent-chat-mount .mx-viewing b { color:var(--text,#e6edf3); font-weight:600; }
#agent-chat-mount .mx-viewing i { font-style:normal; opacity:.75; }
#agent-chat-mount .mx-viewing button { margin-left:6px; font-size:10px; padding:1px 6px; border-radius:4px; border:1px solid var(--border,#30363d); background:var(--bg2,#161b22); color:var(--text,#e6edf3); cursor:pointer; }
#agent-chat-mount .mx-delivery { display:inline-block; font-size:10px; padding:1px 7px; border-radius:10px; border:1px solid var(--border,#30363d); color:var(--text2,#8b949e); margin:2px 0; }
#agent-chat-mount .mx-delivery--steer { border-color:#d29922; color:#d29922; }
#agent-chat-mount .mx-delivery--queued { border-color:#58a6ff; color:#58a6ff; }
#agent-chat-mount .mx-delivery--unsupported { border-color:#f85149; color:#f85149; }
.task-ai-echo__viewing { font-size:11px; color:var(--text2,#8b949e); padding:4px 0; border-top:1px dashed var(--border,#30363d); }
.task-ai-echo__viewing small { text-transform:uppercase; letter-spacing:.4px; font-size:9px; margin-right:4px; }
.task-ai-echo__interactions { display:flex; flex-direction:column; gap:6px; padding:4px 0; }
.task-ai-echo__interaction { border:1px solid #d29922; border-left-width:3px; border-radius:6px; padding:6px 8px; background:rgba(210,153,34,.06); font-size:11px; }
.task-ai-echo__interaction--resolved { border-color:#3fb950; background:rgba(63,185,80,.06); }
.task-ai-echo__interaction--cancelled,.task-ai-echo__interaction--stale { border-color:#8b949e; opacity:.7; }
.task-ai-echo__interaction header { display:flex; flex-direction:column; gap:2px; margin-bottom:4px; }
.task-ai-echo__interaction header small { font-family:var(--font-mono,ui-monospace,monospace); color:var(--text2,#8b949e); font-size:9px; }
.task-ai-echo__interaction p { margin:2px 0 4px; }
.task-ai-echo__decisions { display:flex; gap:6px; flex-wrap:wrap; }
.task-ai-echo__answer { display:flex; gap:6px; }
.task-ai-echo__answer input { flex:1; min-width:0; font:inherit; padding:2px 6px; border-radius:4px; border:1px solid var(--border,#30363d); background:var(--bg,#0d1117); color:var(--text,#e6edf3); }
.task-ai-echo__reply { margin:4px 0 0; font-size:10px; }
.task-ai-echo__reply--accepted { color:#3fb950; }
.task-ai-echo__reply--rejected { color:#f85149; }
.task-ai-echo__reply--sending { color:var(--text2,#8b949e); }

/* ---- PRD 1.2.0 goal-first creation wizard ---- */
.task-wiz-section { border:1px solid var(--border,#30363d); border-radius:8px; padding:8px 10px 6px; margin:0 0 10px; }
.task-wiz-section > legend { font-size:12px; font-weight:600; padding:0 4px; }
.task-mode-choices--compact label { padding:4px 8px; }
.task-wiz-check { display:flex; gap:8px; align-items:flex-start; font-size:12px; margin:4px 0; }
.task-wiz-check small { display:block; color:var(--text2,#8b949e); font-size:11px; }
.task-wiz-pending { border:1px solid #d29922; border-radius:6px; padding:6px 8px; display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.task-seat-actions { margin:4px 0 0; }
.task-wiz-summary { border-top:1px dashed var(--border,#30363d); margin-top:10px; padding-top:8px; }
.task-wiz-summary h4 { margin:0 0 4px; font-size:12px; }
.task-wiz-summary ul { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:auto 1fr; gap:2px 10px; font-size:11px; }
.task-wiz-summary li { display:contents; }
/* The modal is always drawn on the GitHub-dark surface (components.css pins
   #e6edf3 / #c9d1d9 for its text), so the summary must not inherit the page
   theme tokens: on a light-theme page `--text` resolved to #172033 and the
   values were unreadable (contrast 1.16:1, controller browser evidence). */
.task-wiz-summary li span { color:#8b949e; }
.task-wiz-summary li b { font-weight:500; color:#e6edf3; }
.mx-modal .task-wiz-check small, .mx-modal .task-wiz-optional { color:#8b949e; }
.mx-modal .task-wiz-section > legend { color:#e6edf3; }

/* ---- Chat-first Task creation: the Task Chat DRAFT panel inside the Assistant ---- */
#agent-chat-mount .mx-task-draft { margin:6px 8px; padding:8px 10px; border:1px solid var(--border,#30363d); border-left:3px solid #58a6ff; border-radius:8px; background:var(--bg2,#161b22); color:var(--text,#e6edf3); font-size:11px; flex:0 0 auto; max-height:min(52vh,460px); overflow:auto; }
#agent-chat-mount .mx-task-draft form { display:flex; flex-direction:column; gap:6px; }
#agent-chat-mount .mx-task-draft__head { display:flex; align-items:center; gap:8px; }
#agent-chat-mount .mx-task-draft__head b { font-size:12px; }
#agent-chat-mount .mx-task-draft__head .mx-close { margin-left:auto; }
#agent-chat-mount .mx-task-draft__binding { color:var(--text2,#8b949e); font-size:10px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0; }
#agent-chat-mount .mx-task-draft__binding code { color:var(--text,#e6edf3); }
#agent-chat-mount .mx-task-draft__row { display:flex; gap:8px; flex-wrap:wrap; }
#agent-chat-mount .mx-task-draft__field { display:flex; flex-direction:column; gap:2px; flex:1 1 120px; min-width:0; }
#agent-chat-mount .mx-task-draft__field > span, #agent-chat-mount .mx-task-draft__field-label { font-size:10px; color:var(--text2,#8b949e); }
#agent-chat-mount .mx-task-draft select, #agent-chat-mount .mx-task-draft input[type="text"], #agent-chat-mount .mx-task-draft .mx-input, #agent-chat-mount .mx-task-draft textarea { width:100%; box-sizing:border-box; font:inherit; font-size:11px; padding:4px 6px; border-radius:5px; border:1px solid var(--border,#30363d); background:var(--bg,#0d1117); color:var(--text,#e6edf3); }
#agent-chat-mount .mx-task-draft__source { color:#58a6ff; font-size:9px; text-transform:uppercase; letter-spacing:.3px; margin-left:4px; }
#agent-chat-mount .mx-task-draft__seats .task-seat-row { display:flex; gap:6px; align-items:center; flex-wrap:wrap; margin:3px 0; }
#agent-chat-mount .mx-task-draft__seats .task-seat-row b { font-size:10px; flex:0 0 auto; }
#agent-chat-mount .mx-task-draft__seats .task-seat-row select { flex:1 1 110px; width:auto; }
#agent-chat-mount .mx-task-draft__requirements { margin:0; padding:5px 8px; border-radius:6px; border:1px solid #d29922; background:rgba(210,153,34,.08); color:var(--text,#e6edf3); font-size:10.5px; line-height:1.45; }
#agent-chat-mount .mx-task-draft__requirements[data-blocking="true"] { border-color:#f85149; background:rgba(248,81,73,.08); }
#agent-chat-mount .mx-task-draft__requirements .mx-btn { margin-left:4px; }
#agent-chat-mount .mx-task-draft__advanced summary { cursor:pointer; color:var(--text2,#8b949e); font-size:10.5px; }
#agent-chat-mount .mx-task-draft__advanced .mx-field { display:flex; flex-direction:column; gap:2px; margin:6px 0; font-size:10.5px; }
#agent-chat-mount .mx-task-draft__foot { display:flex; gap:6px; align-items:center; flex-wrap:wrap; border-top:1px dashed var(--border,#30363d); padding-top:6px; }
#agent-chat-mount .mx-task-draft__hint { flex:1 1 160px; color:var(--text2,#8b949e); font-size:10px; }
#agent-chat-mount .mx-task-draft__foot [data-create-intent="start"] { display:none; } /* the composer's Send is the primary action */
#agent-chat-mount .mx-task-draft .task-operation-status { margin:0; font-size:10.5px; }
#agent-chat-mount .mx-task-draft .task-operation-status--warn { color:#d29922; }
#agent-chat-mount .mx-task-draft .task-operation-status--danger { color:#f85149; }
#agent-chat-mount .mx-task-draft .task-operation-status--ok { color:#3fb950; }
#agent-chat-mount .mx-task-draft .wf-scenario-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(140px,1fr)); gap:6px; }
#agent-chat-mount .mx-task-draft .wf-card { text-align:left; font:inherit; font-size:10.5px; padding:6px; border-radius:6px; border:1px solid var(--border,#30363d); background:var(--bg,#0d1117); color:var(--text,#e6edf3); cursor:pointer; }
#agent-chat-mount .mx-task-draft .wf-card.is-selected { border-color:#58a6ff; }
#agent-chat-mount .mx-task-draft .wf-scenario-tabs { display:flex; gap:4px; flex-wrap:wrap; margin:4px 0; }
#agent-chat-mount .mx-task-draft .wf-scenario-tab { font:inherit; font-size:10px; padding:2px 6px; border-radius:10px; border:1px solid var(--border,#30363d); background:transparent; color:var(--text2,#8b949e); cursor:pointer; }
#agent-chat-mount .mx-task-draft .wf-scenario-tab.is-active { color:var(--text,#e6edf3); border-color:#58a6ff; }
#agent-chat-mount .mx-delivery--create { border-color:#3fb950; color:#3fb950; }
#agent-chat-mount.mx-task-draft-open .send-btn[data-draft-send="true"] { min-width:96px; background:#238636; border-color:#2ea043; color:#fff; }
#agent-chat-mount .send-btn[data-draft-send="true"] { min-width:96px; }

/* ---- Task execution controls + tools bar (Stop · Pause/Continue · Terminal · Files) ---- */
#agent-chat-mount .mx-task-tools { display:flex; gap:4px; align-items:center; flex-wrap:wrap; padding:3px 8px; border-bottom:1px solid var(--border,#30363d); flex:0 0 auto; }
#agent-chat-mount .mx-task-tools__btn { font:inherit; font-size:10.5px; padding:3px 8px; border-radius:5px; border:1px solid var(--border,#30363d); background:var(--bg2,#161b22); color:var(--text,#e6edf3); cursor:pointer; }
#agent-chat-mount .mx-task-tools__btn[disabled] { opacity:.5; cursor:not-allowed; }
#agent-chat-mount .mx-task-tools__btn--danger { border-color:rgba(248,81,73,.6); color:#f85149; }
#agent-chat-mount .mx-task-tools__btn[aria-pressed="true"] { border-color:#58a6ff; color:#58a6ff; }
#agent-chat-mount .mx-task-tools__spacer { flex:1 1 auto; }
#agent-chat-mount .mx-task-tools__confirm { display:inline-flex; gap:4px; }

/* ---- Task Chat: concise pending-decision summary (same interaction as the Execution Context card) ---- */
#agent-chat-mount .mx-pending-summary { display:flex; flex-direction:column; gap:4px; margin:4px 0; padding:6px 8px; border:1px solid #d29922; border-left-width:3px; border-radius:6px; background:rgba(210,153,34,.06); font-size:10.5px; }
#agent-chat-mount .mx-pending-summary__row { display:flex; gap:6px; align-items:center; justify-content:space-between; }
#agent-chat-mount .mx-pending-summary__row button { font:inherit; font-size:10px; padding:2px 6px; border-radius:4px; border:1px solid #d29922; background:transparent; color:#d29922; cursor:pointer; white-space:nowrap; }
.task-ai-echo__interactions--context { padding:6px 0 8px; }
.task-ai-echo__interaction.is-revealed { box-shadow:0 0 0 2px rgba(210,153,34,.45); }
.task-ai-echo__decisions--confirm { align-items:center; }
.task-ai-echo__decisions--confirm > span { flex:1 1 100%; font-size:10.5px; }
.task-ai-echo__btn--primary { border-color:#2ea043; background:#238636; color:#fff; }

/* ---- Attention: fixed pending indicator (never steals focus) + other-Task badge ---- */
.mx-pending-indicator { position:fixed; left:50%; bottom:14px; transform:translateX(-50%); z-index:12040; display:flex; gap:8px; align-items:center; padding:6px 10px; border-radius:20px; border:1px solid #d29922; background:#1f1a0b; color:#f0d38a; font-size:11px; box-shadow:0 6px 24px rgba(0,0,0,.4); }
.mx-pending-indicator button { font:inherit; font-size:11px; padding:2px 8px; border-radius:12px; border:1px solid #d29922; background:#d29922; color:#111; cursor:pointer; }
.mx-pending-indicator button[data-pending-dismiss] { background:transparent; color:#f0d38a; padding:2px 6px; }
#agent-chat-mount .mx-other-task-pending { position:absolute; top:-8px; left:8px; z-index:3; font-size:9.5px; padding:1px 6px; border-radius:10px; background:#d29922; color:#111; pointer-events:none; }

/* ---- Task-bound terminal in the task region (VL Agent runtime on the Task Device) ---- */
.task-detail__tools:empty { display:none; }
.mx-task-terminal { margin:8px 0; border:1px solid var(--mx-line,#30363d); border-radius:8px; background:#0b0f14; color:#e6edf3; font-size:11px; }
.mx-task-terminal__head { display:flex; gap:8px; align-items:center; flex-wrap:wrap; padding:6px 10px; border-bottom:1px solid #30363d; }
.mx-task-terminal__head b { font-size:12px; }
.mx-task-terminal__head .mx-btn { margin-left:auto; }
.mx-task-terminal__binding { color:#8b949e; font-size:10px; }
.mx-task-terminal__binding code { color:#e6edf3; }
.mx-task-terminal__mode { font-size:10px; padding:1px 6px; border-radius:10px; border:1px solid #30363d; color:#8b949e; }
.mx-task-terminal__mode[data-terminal-mode="vl-agent-terminal"] { border-color:#3fb950; color:#3fb950; }
.mx-task-terminal__reason { margin:0; padding:8px 10px; color:#f0d38a; }
.mx-task-terminal__note, .mx-task-terminal__cwd { margin:0; padding:4px 10px; color:#8b949e; font-size:10px; }
.mx-task-terminal__sessions { display:flex; gap:6px; align-items:center; flex-wrap:wrap; padding:4px 10px; }
.mx-task-terminal__sessions select { font:inherit; font-size:11px; background:#0d1117; color:#e6edf3; border:1px solid #30363d; border-radius:5px; padding:2px 6px; }
.mx-task-terminal__output { margin:0 10px; padding:8px; min-height:120px; max-height:280px; overflow:auto; background:#000; color:#c9d1d9; font:11px/1.45 var(--font-mono,ui-monospace,monospace); white-space:pre-wrap; overflow-wrap:anywhere; border-radius:6px; }
.mx-task-terminal__input { display:flex; gap:6px; padding:6px 10px 8px; }
.mx-task-terminal__input input { flex:1; font:11px var(--font-mono,ui-monospace,monospace); background:#000; color:#e6edf3; border:1px solid #30363d; border-radius:5px; padding:4px 8px; }
.mx-task-terminal__error { margin:0; padding:4px 10px 8px; color:#f85149; }
.mx-task-terminal .mx-btn { padding:2px 8px; font-size:10.5px; }
@media (max-width:560px) {
  #agent-chat-mount .mx-task-draft { max-height:46vh; margin:4px; padding:6px 8px; }
  #agent-chat-mount .mx-task-draft__field { flex-basis:100%; }
  #agent-chat-mount .mx-task-tools { padding:3px 4px; }
  .mx-pending-indicator { bottom:auto; top:calc(var(--bar-h, 56px) + 6px); }
}
.task-ai-echo__interaction-ref { display:flex; gap:6px; align-items:center; justify-content:space-between; border:1px solid #d29922; border-left-width:3px; border-radius:6px; padding:5px 8px; background:rgba(210,153,34,.06); font-size:10.5px; }
.task-ai-echo__interaction-ref i { font-style:normal; }
.task-ai-echo__interaction-ref button { white-space:nowrap; }

/* Keep terminal text readable inside the global document/pre theme. */
.mx-task-terminal pre.mx-task-terminal__output { background:#05080c; color:#e6edf3; }
/* Mac 1.3.100 M07: matrix-light-glass.css forces every light-theme <pre> to
   background:#f2f5f9 !important, which left this light-grey terminal text on a
   near-white box. The terminal stays a dark surface in both themes. */
html[data-theme="light"] .mx-task-terminal pre.mx-task-terminal__output { background:#05080c !important; color:#e6edf3; border-color:#1f2937; }
