:root {
  color-scheme: dark;
  --bg: #0e1117;
  --panel: #151922;
  --panel-strong: #1b202b;
  --rail: #090b10;
  --rail-soft: #151923;
  --ink: #eef2f7;
  --muted: #9aa6b2;
  --line: #2a3140;
  --line-dark: #242b38;
  --green: #7fc950;
  --green-dark: #4f9f3a;
  --teal: #3bb9ad;
  --amber: #d7a846;
  --red: #e05b5b;
  --you: #202432;
  --codex: #172923;
  --shadow: 0 20px 70px rgba(0, 0, 0, 0.38);
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  min-height: 100vh;
  background: var(--bg);
  color: var(--ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

button,
input,
select,
textarea {
  font: inherit;
}

button {
  min-height: 38px;
  border: 1px solid transparent;
  border-radius: 7px;
  padding: 0 14px;
  background: linear-gradient(180deg, #63bd52, #438d38);
  color: #fff;
  cursor: pointer;
}

button:hover {
  background: linear-gradient(180deg, #75ce63, #4a9a3e);
}

button:disabled {
  cursor: not-allowed;
  opacity: 0.58;
}

button:disabled:hover {
  background: linear-gradient(180deg, #63bd52, #438d38);
}

.danger-button {
  background: var(--red);
}

.danger-button:hover {
  background: #842424;
}

input,
select,
textarea {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 10px 11px;
  color: var(--ink);
  background: #10141d;
  outline: none;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--teal);
  box-shadow: 0 0 0 3px rgba(59, 185, 173, 0.18);
}

textarea {
  resize: vertical;
  min-height: 52px;
  max-height: 220px;
}

h1,
h2,
h3,
p,
dl,
dd {
  margin: 0;
}

.app-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 276px minmax(0, 1fr);
  background:
    linear-gradient(90deg, var(--rail) 0 276px, transparent 276px),
    var(--bg);
}

.sidebar {
  color: #f7faf2;
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 22px;
  border-right: 1px solid #293129;
}

.brand {
  min-height: 54px;
  display: flex;
  align-items: center;
  gap: 12px;
}

.brand-mark {
  width: 46px;
  height: 46px;
  object-fit: contain;
  filter: drop-shadow(0 0 10px rgba(59, 185, 173, 0.22));
}

.brand h1 {
  font-size: 19px;
  line-height: 1.1;
}

.brand p,
.sidebar-status,
.session-info {
  color: #aeb9aa;
  font-size: 13px;
}

.nav-tabs {
  display: grid;
  gap: 8px;
}

.nav-tab {
  min-height: 44px;
  text-align: left;
  background: transparent;
  color: #e4eadf;
  border: 1px solid transparent;
}

.nav-tab:hover,
.nav-tab.active {
  background: var(--rail-soft);
  border-color: var(--line-dark);
  box-shadow: inset 4px 0 0 var(--green);
}

.sidebar .advanced-tab {
  display: none;
}

.sidebar-status {
  margin-top: auto;
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line-dark);
  border-radius: 8px;
  background: #171d19;
}

.status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #f7faf2;
}

.dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: #d49b26;
}

.dot.online {
  background: var(--green);
}

.workspace {
  min-width: 0;
  padding: 18px;
}

.view {
  display: none;
  height: calc(100vh - 36px);
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  overflow: hidden;
}

.view.active {
  display: flex;
  flex-direction: column;
}

.cockpit-dgx-card {
  border-color: rgba(59, 185, 173, 0.36);
}

.view-header,
.subpanel-header {
  min-height: 66px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.view-header {
  padding: 16px 18px;
  border-bottom: 1px solid var(--line);
  background: var(--panel-strong);
}

.view-header h2 {
  font-size: 22px;
  line-height: 1.1;
}

.view-header p {
  color: var(--muted);
  margin-top: 4px;
  font-size: 13px;
}

.header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.mode-pill {
  min-height: 35px;
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(59, 185, 173, 0.46);
  border-radius: 999px;
  padding: 0 12px;
  background: rgba(59, 185, 173, 0.12);
  color: #c9fff7;
  font-size: 13px;
  font-weight: 750;
}

.counter {
  min-width: 92px;
  text-align: center;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 8px 10px;
  color: #dff7d5;
  background: #17251c;
  font-size: 13px;
  font-weight: 650;
}

.messages,
.log-list,
.schedule-list,
.action-list,
.agents-grid,
.locks-list,
.snapshots-list,
.gate-list,
.command-list {
  flex: 1;
  overflow: auto;
  padding: 16px 18px;
}

.file-list {
  flex: 1;
  overflow: auto;
  padding: 10px;
}

.message {
  max-width: min(840px, 86%);
  margin-bottom: 12px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--green);
  border-radius: 8px;
  padding: 12px;
  background: var(--codex);
}

.message.you {
  margin-left: auto;
  border-left-color: var(--amber);
  background: var(--you);
}

.meta,
.log-row,
.schedule-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.meta {
  color: var(--muted);
  font-size: 12px;
  margin-bottom: 7px;
}

.message-body,
.log-body {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  line-height: 1.45;
}

.message-automation {
  display: grid;
  gap: 8px;
  margin-top: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #151b25;
  padding: 10px;
}

.message-intent-pipeline {
  display: grid;
  gap: 7px;
  margin-top: 10px;
  border: 1px solid #284160;
  border-radius: 8px;
  background: #101925;
  padding: 10px;
  font-size: 13px;
}

.message-intent-pipeline.failed {
  border-color: #6f3030;
  background: #231719;
}

.message-intent-topline,
.message-automation-topline {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 13px;
}

.message-intent-topline span,
.message-automation-topline span {
  color: var(--muted);
}

.message-intent-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.message-intent-meta span {
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  padding: 4px 8px;
}

.message-intent-error {
  color: #ffb8b8;
  overflow-wrap: anywhere;
}

.message-automation-blockers {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.message-automation-blockers span {
  border: 1px solid #6f3030;
  border-radius: 999px;
  background: #2a171a;
  color: #ffb8b8;
  padding: 4px 8px;
  font-size: 12px;
}

.message-attachments {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.attachment-card,
.pipeline-attachment {
  display: grid;
  gap: 3px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #151b25;
  padding: 8px;
  color: var(--ink);
  text-decoration: none;
  font-size: 12px;
}

.attachment-card {
  width: 180px;
}

.attachment-card.image img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  border-radius: 5px;
  background: #10141d;
}

.attachment-card span,
.attachment-card small,
.pipeline-attachment span {
  color: var(--muted);
  overflow-wrap: anywhere;
}

.message-steps {
  border-top: 1px solid #050706;
  background: #050608;
  color: #f7fbf5;
  padding: 0;
  max-height: 360px;
  overflow: auto;
}

.message-steps:empty,
.native-loop-panel:empty {
  display: none;
}

.message-approval-card {
  margin: 10px 14px 0;
  max-height: 340px;
  overflow: auto;
}

.thinking-panel {
  background: #050608;
  color: #f7fbf5;
}

.thinking-summary {
  width: 100%;
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 0;
  border-radius: 0;
  padding: 0 18px;
  background: #050608;
  color: #f7fbf5;
  text-align: left;
}

.thinking-summary:hover {
  background: #090c11;
}

.thinking-summary > div {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.thinking-summary strong {
  font-size: 14px;
  font-weight: 650;
}

.thinking-summary span {
  color: #aeb9c5;
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.thinking-summary > span {
  flex: 0 0 auto;
  border-radius: 999px;
  background: #26282d;
  color: #f7fbf5;
  padding: 8px 13px;
  font-size: 12px;
}

.thinking-details {
  border-top: 1px solid var(--line);
  padding: 10px 14px 12px;
  background: #0b0e14;
}

.thinking-native-detail {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  border-top: 1px solid var(--line);
  margin-top: 10px;
  padding-top: 10px;
  color: var(--muted);
  font-size: 12px;
}

.thinking-native-detail strong {
  color: var(--ink);
}

.thinking-native-detail span {
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 4px 8px;
  background: #10141d;
}

.native-loop-panel {
  border-top: 1px solid var(--line);
  background: #10141d;
  padding: 12px 14px;
  display: grid;
  gap: 10px;
  max-height: 260px;
  overflow: auto;
}

.native-loop-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.native-loop-topline > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.native-loop-topline strong {
  font-size: 14px;
}

.native-loop-topline span:not(.status-pill) {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.native-loop-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.native-loop-grid article {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #171c26;
  padding: 10px;
  display: grid;
  gap: 8px;
  align-content: start;
  max-height: 170px;
  overflow: auto;
}

.native-loop-grid h3 {
  font-size: 12px;
  color: #dbe5ec;
}

.native-loop-row {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.native-loop-row strong,
.native-loop-row span,
.native-loop-facts dd {
  overflow-wrap: anywhere;
}

.native-loop-row strong {
  font-size: 12px;
}

.native-loop-row span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

.native-loop-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.native-loop-facts div {
  min-width: 0;
  border: 1px solid #263040;
  border-radius: 7px;
  background: #111722;
  padding: 7px;
}

.native-loop-facts dt {
  color: var(--muted);
  font-size: 10px;
  text-transform: uppercase;
}

.native-loop-facts dd {
  margin-top: 2px;
  font-size: 12px;
  color: var(--ink);
}

.native-reasoning-trace {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #111722;
  padding: 10px;
  display: grid;
  gap: 8px;
}

.native-loop-header.compact {
  margin: 0;
}

.native-trace-list {
  display: grid;
  gap: 7px;
}

.native-trace-row {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 8px;
  border: 1px solid #263040;
  border-left: 3px solid var(--teal);
  border-radius: 7px;
  background: #171c26;
  padding: 8px;
}

.native-trace-row.blocked,
.native-trace-row.failed,
.native-trace-row.error {
  border-left-color: var(--red);
}

.native-trace-row.queued,
.native-trace-row.running,
.native-trace-row.proposed,
.native-trace-row.awaiting_approval {
  border-left-color: var(--amber);
}

.native-trace-row.completed,
.native-trace-row.passed,
.native-trace-row.approved_patch_cycle {
  border-left-color: var(--green);
}

.native-trace-kind {
  align-self: start;
  border-radius: 999px;
  background: #10141d;
  border: 1px solid var(--line);
  color: var(--muted);
  font-size: 10px;
  font-weight: 700;
  padding: 3px 6px;
  text-align: center;
  text-transform: uppercase;
}

.native-trace-row div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.native-trace-row strong,
.native-trace-row small,
.native-trace-row p {
  overflow-wrap: anywhere;
}

.native-trace-row strong {
  font-size: 12px;
}

.native-trace-row small,
.native-trace-row p {
  color: var(--muted);
  font-size: 12px;
}

.native-trace-row p {
  margin: 4px 0 0;
}

.native-loop-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.native-loop-chips span {
  border: 1px solid #2b3a46;
  border-radius: 999px;
  padding: 3px 7px;
  color: #dbe5ec;
  background: #101722;
  font-size: 11px;
}

.activity-steps {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-height: 24px;
}

.activity-panel {
  padding: 10px 14px 12px;
}

.activity-panel-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #f7fbf5;
}

.activity-panel-topline > div {
  display: flex;
  align-items: baseline;
  gap: 8px;
  min-width: 0;
}

.activity-panel-topline strong {
  font-size: 13px;
  font-weight: 650;
}

.activity-panel-topline span {
  color: #b9c2b6;
  font-size: 12px;
}

.activity-close {
  width: 26px;
  min-width: 26px;
  min-height: 26px;
  padding: 0;
  border-color: transparent;
  background: transparent;
  color: #d8ded5;
  font-size: 18px;
  line-height: 1;
}

.activity-close:hover {
  background: #171c18;
}

.activity-progress {
  height: 3px;
  border-radius: 999px;
  background: #252b26;
  margin: 9px 0 12px;
  overflow: hidden;
}

.activity-progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #d7dfd1;
}

.activity-list {
  position: relative;
  display: grid;
  gap: 0;
}

.activity-list::before {
  content: "";
  position: absolute;
  top: 10px;
  bottom: 10px;
  left: 8px;
  width: 1px;
  background: #495147;
}

.activity-step {
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr);
  gap: 7px;
  align-items: start;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  padding: 6px 8px;
  color: var(--ink);
  font-size: 12px;
}

.activity-timeline-row {
  position: relative;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #f7fbf5;
  padding: 8px 0 10px;
}

.activity-step-compact {
  border-radius: 7px;
}

.activity-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  margin-top: 4px;
  background: var(--muted);
  z-index: 1;
}

.activity-timeline-row .activity-dot {
  background: #d7dfd1;
  box-shadow: 0 0 0 4px #030504;
}

.activity-step.running .activity-dot,
.activity-step.queued .activity-dot {
  background: var(--amber);
}

.activity-step.stale {
  border-color: #b17216;
}

.activity-step.stale .activity-dot {
  background: #b17216;
  box-shadow: 0 0 0 3px rgba(177, 114, 22, 0.14);
}

.activity-timeline-row.stale .activity-dot {
  box-shadow: 0 0 0 4px #030504, 0 0 0 7px rgba(177, 114, 22, 0.24);
}

.activity-step.completed .activity-dot {
  background: var(--green);
}

.activity-step.failed .activity-dot,
.activity-step.error .activity-dot,
.activity-step.canceled .activity-dot {
  background: var(--red);
}

.stale-badge {
  display: inline-flex;
  align-items: center;
  min-height: 18px;
  margin-left: 6px;
  border-radius: 999px;
  background: #312615;
  color: #f2cf76;
  padding: 2px 7px;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.activity-step small,
.activity-step p {
  display: block;
  margin: 2px 0 0;
  color: var(--muted);
  overflow-wrap: anywhere;
}

.activity-timeline-row small,
.activity-timeline-row p {
  color: #b9c2b6;
}

.activity-step-copy {
  min-width: 0;
}

.activity-step-copy strong {
  display: block;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.activity-step-copy p {
  max-width: 760px;
}

.activity-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 6px;
}

.activity-chips span {
  display: inline-flex;
  align-items: center;
  min-height: 20px;
  border-radius: 999px;
  background: #1a201c;
  color: #dce4d8;
  padding: 2px 8px;
  font-size: 11px;
}

.activity-empty {
  color: #b9c2b6;
  border-color: #252b26;
  background: #101411;
}

.composer {
  border-top: 1px solid var(--line);
  padding: 14px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 10px;
  background: var(--panel-strong);
}

.composer > #author,
.send-stack .toggle {
  display: none;
}

.composer-main {
  min-width: 0;
}

.send-stack {
  display: grid;
  gap: 8px;
}

.send-stack button {
  min-width: 92px;
  min-height: 46px;
}

.attachment-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  color: var(--muted);
  font-size: 12px;
}

.file-picker {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 0 11px;
  background: #151b25;
  color: #dff7d5;
  font-size: 12px;
  font-weight: 650;
  cursor: pointer;
}

.file-picker:hover {
  border-color: var(--teal);
  background: #1c2430;
}

.file-picker input {
  position: absolute;
  inset: 0;
  width: 100%;
  opacity: 0;
  cursor: pointer;
}

.selected-file-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 7px;
  margin-top: 8px;
}

.selected-file-list:empty {
  display: none;
}

.selected-file-list.compact {
  grid-template-columns: 1fr;
}

.selected-file,
.pipeline-attachment {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
}

.selected-file {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #151b25;
  padding: 7px;
  font-size: 12px;
}

.field-help {
  margin-top: -4px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

select.has-selection {
  border-color: rgba(59, 185, 173, 0.72);
  background: #111f24;
  box-shadow: inset 3px 0 0 var(--green-dark);
}

.selected-file strong,
.selected-file small,
.pipeline-attachment strong,
.pipeline-attachment span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.selected-file small {
  color: var(--muted);
  margin-top: 2px;
}

.file-kind {
  display: inline-grid;
  place-items: center;
  min-height: 30px;
  border-radius: 6px;
  background: #102b2d;
  color: #9ce7df;
  font-size: 11px;
  font-weight: 750;
}

.toggle,
.checkbox-row {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--muted);
  font-size: 13px;
}

.toggle {
  justify-content: center;
}

.toggle input,
.checkbox-row input {
  width: 14px;
  height: 14px;
}

.tools {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 220px;
  gap: 10px;
  padding: 14px 18px;
  border-bottom: 1px solid var(--line);
  background: #151b25;
}

.log-group {
  margin-bottom: 22px;
}

.log-group h3 {
  position: sticky;
  top: -16px;
  z-index: 1;
  padding: 8px 0;
  background: var(--panel);
  color: var(--muted);
  font-size: 13px;
}

.log-item,
.action-item,
.schedule-card,
.task-card,
.agent-card,
.lock-card,
.snapshot-card,
.gate-card,
.command-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #151b25;
  padding: 12px;
  margin-bottom: 10px;
}

.log-item.error {
  border-left: 4px solid var(--red);
}

.log-item.scheduled_task {
  border-left: 4px solid var(--teal);
}

.log-item.action {
  border-left: 4px solid var(--green);
}

.log-item.task {
  border-left: 4px solid var(--amber);
}

.log-item.lock {
  border-left: 4px solid var(--teal);
}

.log-item.ownership {
  border-left: 4px solid var(--green-dark);
}

.log-item.snapshot {
  border-left: 4px solid var(--green-dark);
}

.log-item.gate {
  border-left: 4px solid var(--red);
}

.log-item.command {
  border-left: 4px solid var(--teal);
}

.log-item.agent_run {
  border-left: 4px solid var(--green-dark);
}

.status-pill.failed {
  background: #351c20;
  color: #ffb8b8;
}

.log-meta {
  color: var(--muted);
  font-size: 12px;
  margin: 6px 0;
}

.pill,
.status-pill {
  border-radius: 999px;
  padding: 4px 8px;
  background: #202a26;
  color: #dbe5ec;
  font-size: 12px;
  white-space: nowrap;
}

.status-pill.active,
.pill.safe {
  background: #19301d;
  color: #bff0aa;
}

.status-pill.paused {
  background: #312615;
  color: #f2cf76;
}

.status-pill.completed {
  background: #102b2d;
  color: #9ce7df;
}

.agents-toolbar {
  min-height: 56px;
  padding: 12px 18px;
  border-bottom: 1px solid var(--line);
  background: #151b25;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.agents-toolbar div {
  display: grid;
  gap: 2px;
}

.agents-toolbar span {
  color: var(--muted);
  font-size: 13px;
}

.agents-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(280px, 1fr));
  gap: 12px;
  align-content: start;
}

.agent-coordination-panel,
.agent-blackboard-panel {
  display: grid;
  gap: 8px;
  margin: 12px 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 0 10px 10px;
}

.agent-coordination-matrix {
  display: grid;
  gap: 8px;
}

.agent-coordination-row {
  display: grid;
  grid-template-columns: minmax(150px, 0.8fr) minmax(140px, 1fr) minmax(150px, 0.75fr);
  gap: 10px;
  align-items: start;
  border: 1px solid var(--line);
  border-left: 3px solid var(--green);
  border-radius: 7px;
  background: #151b25;
  padding: 9px;
}

.agent-coordination-row.disabled {
  border-left-color: var(--amber);
  opacity: 0.78;
}

.agent-coordination-row.at-limit {
  border-left-color: var(--red);
}

.agent-coordination-row strong,
.agent-coordination-row span,
.agent-coordination-row p,
.agent-coordination-row dd {
  overflow-wrap: anywhere;
}

.agent-coordination-row > div:first-child {
  display: grid;
  gap: 3px;
}

.agent-coordination-row > div:first-child span,
.agent-coordination-row p {
  color: var(--muted);
  font-size: 12px;
}

.agent-coordination-row p {
  grid-column: 1 / -1;
  margin: 0;
}

.agent-coordination-handoffs {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.agent-coordination-handoffs span {
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 3px 7px;
  color: var(--muted);
  font-size: 11px;
}

.agent-coordination-handoffs .ready {
  border-color: #315c38;
  color: #bff0aa;
}

.agent-coordination-handoffs .missing {
  border-color: #713333;
  color: #ffb8b8;
}

.agent-coordination-row dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  margin: 0;
}

.agent-blackboard-entries {
  display: grid;
  gap: 8px;
}

.agent-blackboard-entry {
  display: grid;
  gap: 7px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--green-dark);
  border-radius: 7px;
  background: #151b25;
  padding: 9px;
}

.agent-blackboard-entry.blocker {
  border-left-color: var(--red);
}

.agent-blackboard-entry.handoff {
  border-left-color: var(--amber);
}

.agent-blackboard-entry.decision,
.agent-blackboard-entry.verification {
  border-left-color: var(--green);
}

.agent-blackboard-entry.resolved {
  opacity: 0.72;
}

.agent-blackboard-entry p,
.agent-blackboard-entry strong,
.agent-blackboard-entry span {
  overflow-wrap: anywhere;
}

.agent-blackboard-entry p {
  margin: 0;
  color: var(--text);
  font-size: 13px;
}

.agent-blackboard-entry button {
  justify-self: start;
}

.agent-card {
  border-left: 4px solid var(--green);
  display: grid;
  gap: 10px;
}

.agent-card.disabled {
  border-left-color: var(--amber);
  opacity: 0.78;
}

.agent-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.agent-topline h3 {
  font-size: 16px;
}

.agent-mission {
  color: var(--ink);
  line-height: 1.4;
}

.agent-capabilities {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.agent-capabilities span {
  border-radius: 999px;
  background: #202a26;
  color: #dbe5ec;
  padding: 4px 8px;
  font-size: 12px;
}

.agent-prompt {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  padding: 9px;
  color: var(--muted);
  line-height: 1.4;
  font-size: 13px;
}

.agent-controls {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 10px;
}

.agent-controls label {
  display: grid;
  gap: 4px;
  color: var(--muted);
  font-size: 12px;
}

.agent-controls select {
  min-width: 84px;
}

.agent-warning {
  border-radius: 7px;
  background: #312615;
  color: #f2cf76;
  padding: 7px 9px;
  font-size: 12px;
}

.safe-exec-warning {
  border: 1px solid #ead39d;
  border-radius: 7px;
  background: #fff8e6;
  color: #6d4f00;
  padding: 9px;
  font-size: 13px;
  line-height: 1.4;
}

.edit-plan-disabled {
  border: 1px solid #e8b9b9;
  border-radius: 7px;
  background: #fff5f5;
  color: #8d2828;
  padding: 9px;
  font-size: 13px;
  line-height: 1.4;
}

.edit-plan-disabled.compact {
  margin: 10px 0;
  padding: 7px 9px;
  font-size: 12px;
}

.edit-file-picker-tools {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.edit-file-picker {
  display: grid;
  gap: 6px;
  max-height: 220px;
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 8px;
  background: #10141d;
}

.edit-file-option {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  min-height: 38px;
  padding: 6px 7px;
  border: 1px solid transparent;
  border-radius: 6px;
  background: #151b25;
}

.edit-file-option:hover {
  border-color: var(--teal);
  background: #1c2430;
}

.edit-file-option input {
  width: 16px;
  height: 16px;
  margin-top: 2px;
}

.edit-file-option strong,
.edit-file-option small {
  display: block;
  overflow-wrap: anywhere;
}

.edit-file-option small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 12px;
}

.safe-exec-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--line);
  background: #10141d;
}

.safe-exec-summary span {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #151b25;
  color: var(--muted);
  padding: 4px 8px;
  font-size: 12px;
}

.safe-history-controls {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.safe-history-controls button {
  min-height: 34px;
  padding: 0 10px;
  font-size: 12px;
}

.safe-history-controls select {
  min-width: 150px;
}

.terminal-session-list {
  display: grid;
  gap: 8px;
  margin-top: 10px;
  max-height: 430px;
  overflow: auto;
}

.terminal-session-card {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #090d14;
  overflow: hidden;
}

.terminal-session-topline {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 9px 10px;
  border-bottom: 1px solid var(--line);
}

.terminal-session-topline span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  margin-top: 2px;
}

.terminal-output {
  min-height: 180px;
  max-height: 320px;
  overflow: auto;
  margin: 0;
  padding: 10px;
  background: #05070b;
  color: #d7f7df;
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  line-height: 1.45;
  white-space: pre-wrap;
}

.terminal-history {
  display: flex;
  gap: 6px;
  padding: 8px;
  border-top: 1px solid var(--line);
  overflow-x: auto;
}

.terminal-history button {
  flex: 0 0 auto;
  max-width: 260px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 11px;
}

.terminal-input-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  margin-top: 10px;
}

.terminal-input-form.disabled {
  opacity: 0.55;
}

.task-grid,
.code-agent-grid,
.code-workspace-grid,
.locks-grid,
.snapshots-grid,
.gate-grid,
.terminal-grid,
.explorer-grid,
.diff-grid,
.isolation-grid,
.pipeline-grid,
.schedule-grid,
.settings-grid {
  flex: 1;
  min-height: 0;
  display: grid;
  grid-template-columns: 360px minmax(0, 1fr);
  gap: 14px;
  padding: 14px;
  overflow: hidden;
}

.code-workspace-grid {
  grid-template-columns: minmax(340px, 0.95fr) minmax(320px, 0.9fr) minmax(420px, 1.2fr);
  grid-template-rows: minmax(260px, 0.92fr) minmax(260px, 1fr);
}

.code-command-panel,
.code-map-panel,
.code-git-panel,
.code-worktree-panel,
.code-terminal-panel,
.code-review-panel,
.code-recovery-panel,
.code-agent-runs-panel {
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.code-command-panel {
  grid-row: 1 / -1;
  overflow: auto;
}

.code-agent-runs-panel {
  grid-column: 3;
  grid-row: 1 / -1;
}

.code-map-panel,
.code-git-panel,
.code-worktree-panel,
.code-terminal-panel,
.code-review-panel,
.code-recovery-panel {
  overflow: hidden;
}

.code-patch-form textarea:first-child {
  min-height: 190px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  line-height: 1.45;
}

.code-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.code-action-row button {
  flex: 1 1 120px;
}

.direct-edit-result {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.code-telemetry-panel {
  display: grid;
  gap: 8px;
  margin-top: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 0 10px 10px;
}

.senior-loop-worker-panel {
  display: grid;
  gap: 8px;
  margin-top: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 0 10px 10px;
}

.code-telemetry-failures {
  display: grid;
  gap: 7px;
}

.code-telemetry-row {
  border: 1px solid var(--line);
  border-left: 3px solid var(--amber);
  border-radius: 7px;
  background: #151b25;
  padding: 8px;
}

.code-telemetry-row.failed,
.code-telemetry-row.blocked,
.code-telemetry-row.canceled {
  border-left-color: var(--red);
}

.code-telemetry-row strong,
.code-telemetry-row span {
  display: block;
  overflow-wrap: anywhere;
}

.code-telemetry-row span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
}

.code-loop-phase-panel {
  display: grid;
  gap: 8px;
  margin-top: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 0 10px 10px;
}

.code-loop-phase-timeline {
  display: grid;
  gap: 7px;
  max-height: 330px;
  overflow: auto;
}

.code-loop-phase-row {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  border: 1px solid var(--line);
  border-left: 3px solid var(--amber);
  border-radius: 7px;
  background: #151b25;
  padding: 8px;
}

.code-loop-phase-row.completed {
  border-left-color: var(--green);
}

.code-loop-phase-row.active {
  border-left-color: var(--cyan);
}

.code-loop-phase-row.failed {
  border-left-color: var(--red);
}

.code-loop-phase-index {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #0d121a;
  border: 1px solid var(--line);
  color: var(--muted);
  font-size: 11px;
}

.code-loop-phase-topline {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: baseline;
}

.code-loop-phase-topline strong,
.code-loop-phase-row p,
.code-loop-phase-row small {
  overflow-wrap: anywhere;
}

.code-loop-phase-topline strong {
  font-size: 12px;
  color: #f5f8fb;
}

.code-loop-phase-topline span {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
  white-space: nowrap;
}

.code-loop-phase-row p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.code-loop-phase-row small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 11px;
}

.code-map-panel input {
  margin-bottom: 8px;
}

.code-repo-map,
.code-status-list,
.code-git-workflow,
.code-worktree-list,
.code-test-intelligence,
.code-test-panel,
.compact-review-list {
  min-height: 0;
  overflow: auto;
  display: grid;
  align-content: start;
  gap: 7px;
}

.git-workflow-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  color: var(--muted);
  font-size: 12px;
}

.git-workflow-list {
  display: grid;
  gap: 6px;
}

.git-workflow-list.compact {
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
}

.git-workflow-list.compact button {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.branch-lifecycle-dashboard {
  display: grid;
  gap: 9px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #0d121a;
  padding: 10px;
}

.branch-lifecycle-header {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
}

.branch-lifecycle-header strong,
.branch-lifecycle-header span {
  display: block;
  overflow-wrap: anywhere;
}

.branch-lifecycle-header span {
  color: var(--muted);
  font-size: 12px;
  margin-top: 3px;
}

.branch-lifecycle-facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
  margin: 0;
}

.branch-lifecycle-facts div {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #151b25;
  padding: 7px;
}

.branch-lifecycle-facts dt {
  color: var(--muted);
  font-size: 11px;
}

.branch-lifecycle-facts dd {
  margin: 2px 0 0;
  font-weight: 700;
}

.branch-lifecycle-list {
  display: grid;
  gap: 7px;
  max-height: 260px;
  overflow: auto;
}

.branch-lifecycle-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  border: 1px solid var(--line);
  border-left: 3px solid var(--teal);
  border-radius: 8px;
  background: #151b25;
  padding: 8px;
}

.branch-lifecycle-row.high {
  border-left-color: var(--red);
}

.branch-lifecycle-row.medium {
  border-left-color: var(--amber);
}

.branch-lifecycle-row.blocked,
.branch-lifecycle-row.current {
  border-left-color: var(--muted);
}

.branch-lifecycle-row strong,
.branch-lifecycle-row span {
  display: block;
  overflow-wrap: anywhere;
}

.branch-lifecycle-row span {
  color: var(--muted);
  font-size: 12px;
  margin-top: 3px;
}

.branch-lifecycle-actions {
  display: flex;
  gap: 6px;
}

.branch-lifecycle-actions button {
  min-height: 30px;
  padding: 0 9px;
  font-size: 12px;
}

.diff-status-row.conflict {
  border-color: rgba(239, 68, 68, 0.5);
  border-left-color: var(--danger);
}

.diff-status-row.conflict.active {
  background: rgba(239, 68, 68, 0.12);
}

.code-conflict-editor {
  display: grid;
  gap: 8px;
  margin: 8px 0;
}

.conflict-editor-header,
.conflict-actions {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
}

.conflict-actions {
  justify-content: flex-start;
  flex-wrap: wrap;
}

.conflict-actions button {
  min-height: 30px;
  padding: 0 10px;
  font-size: 12px;
}

.conflict-case-panel {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--amber);
  border-radius: 8px;
  background: #0d121a;
  padding: 9px;
}

.conflict-case-panel.inline_hunks {
  border-left-color: var(--teal);
}

.conflict-case-panel.index_checkout {
  border-left-color: var(--amber);
}

.conflict-case-panel strong,
.conflict-case-panel span {
  display: block;
  overflow-wrap: anywhere;
}

.conflict-case-panel span {
  color: var(--muted);
  font-size: 12px;
}

.conflict-stage-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.conflict-stage-list span {
  border-radius: 999px;
  background: #151b25;
  border: 1px solid var(--line);
  padding: 4px 8px;
  font: 11px/1.2 var(--mono);
}

.conflict-hunks {
  display: grid;
  gap: 8px;
  max-height: 360px;
  overflow: auto;
}

.conflict-hunk {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #0d121a;
  padding: 8px;
}

.conflict-hunk-title {
  color: var(--muted);
  font-size: 12px;
  margin-bottom: 6px;
}

.git-rebase-todo-editor {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #0d121a;
  padding: 10px;
}

.git-rebase-todo-editor textarea,
.conflict-hunk-edit {
  width: 100%;
  min-height: 96px;
  resize: vertical;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #080c12;
  color: var(--text);
  padding: 8px;
  font: 12px/1.45 var(--mono);
}

.reflog-row {
  display: grid;
  grid-template-columns: minmax(72px, auto) minmax(0, 1fr) auto auto;
  gap: 8px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #0d121a;
  padding: 6px;
}

.reflog-row span {
  min-width: 0;
  overflow: hidden;
  color: var(--muted);
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.conflict-sides {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.conflict-sides span {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.conflict-side {
  min-height: 70px;
  max-height: 170px;
  overflow: auto;
  margin: 4px 0 0;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #080c12;
  padding: 8px;
  white-space: pre-wrap;
}

.conflict-side.empty-side {
  color: var(--muted);
}

.code-worktree-card {
  border: 1px solid var(--line);
  border-left: 3px solid var(--teal);
  border-radius: 8px;
  background: #121822;
  padding: 10px;
}

.code-worktree-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
}

.code-worktree-topline div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.code-worktree-topline strong,
.code-worktree-topline span,
.code-worktree-meta span {
  overflow-wrap: anywhere;
}

.code-worktree-topline > span {
  flex: 0 0 auto;
}

.code-worktree-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
  color: var(--muted);
  font-size: 12px;
}

.code-worktree-actions {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 6px;
  margin-top: 10px;
}

.code-worktree-actions button {
  min-width: 0;
  min-height: 30px;
  padding: 0 8px;
  font-size: 12px;
}

.code-repo-map {
  max-height: 210px;
  margin-bottom: 8px;
}

.code-semantic-summary {
  display: grid;
  gap: 7px;
  margin-bottom: 8px;
}

.code-semantic-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  color: var(--ink);
  font-size: 12px;
}

.code-semantic-head span {
  color: var(--muted);
}

.code-semantic-lsp {
  display: grid;
  gap: 3px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--amber);
  border-radius: 7px;
  background: #10141d;
  padding: 7px 8px;
  font-size: 12px;
}

.code-semantic-lsp.ready {
  border-left-color: var(--green);
}

.code-semantic-lsp.partial {
  border-left-color: var(--amber);
}

.code-semantic-lsp.unavailable {
  border-left-color: var(--red);
}

.code-semantic-lsp span,
.code-semantic-lsp small {
  color: var(--muted);
  overflow-wrap: anywhere;
}

.code-semantic-list {
  display: grid;
  gap: 5px;
  max-height: 160px;
  overflow: auto;
}

.code-semantic-list.compact {
  max-height: 96px;
}

.code-semantic-detail {
  display: grid;
  gap: 5px;
}

.code-semantic-label {
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
}

.code-map-row,
.code-semantic-row,
.code-snapshot-row {
  width: 100%;
  display: grid;
  gap: 3px;
  min-height: 48px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  color: var(--ink);
  text-align: left;
  padding: 8px 10px;
}

.code-map-row:hover,
.code-semantic-row:hover,
.code-snapshot-row:hover {
  border-color: rgba(59, 185, 173, 0.52);
  background: #161d29;
}

.code-map-row span,
.code-map-row small,
.code-semantic-row span,
.code-semantic-row small,
.code-snapshot-row span {
  color: var(--muted);
  overflow-wrap: anywhere;
  font-size: 12px;
}

.code-semantic-row {
  grid-template-columns: minmax(54px, 74px) 1fr;
  align-items: center;
  min-height: 36px;
}

.code-semantic-row.detail {
  grid-template-columns: minmax(58px, 78px) 1fr;
  min-height: 34px;
  background: #0d121a;
}

.code-semantic-row code {
  color: var(--accent);
  font-size: 11px;
}

.code-semantic-row small {
  grid-column: 2;
}

.compact-picker {
  flex: 1;
  min-height: 120px;
  overflow: auto;
}

.code-mini-summary {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 10px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.fast-diff-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.fast-diff-actions button {
  min-width: 84px;
}

.code-fast-diff-approval {
  display: grid;
  gap: 10px;
  min-height: 220px;
  overflow: hidden;
}

.code-fast-diff-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: center;
  color: var(--muted);
  font-size: 12px;
}

.fast-diff-quick-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
}

.fast-diff-quick-actions button {
  min-height: 30px;
  padding: 0 8px;
  font-size: 12px;
}

.fast-diff-file-strip {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  padding-bottom: 2px;
}

.fast-diff-file-strip button {
  flex: 0 0 170px;
  min-width: 0;
  display: grid;
  gap: 3px;
  text-align: left;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  color: var(--ink);
  padding: 8px;
}

.fast-diff-file-strip button.active {
  border-color: rgba(59, 185, 173, 0.72);
  background: #16222a;
}

.fast-diff-file-strip button.rejected {
  border-color: rgba(239, 68, 68, 0.42);
  opacity: 0.72;
}

.fast-diff-tiny-lane {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 8px;
  align-items: center;
  border: 1px solid rgba(132, 204, 22, 0.35);
  border-radius: 8px;
  background: rgba(132, 204, 22, 0.08);
  padding: 8px;
  margin: 8px 0;
}

.fast-diff-tiny-lane div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.fast-diff-tiny-lane span {
  color: var(--muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fast-diff-tiny-lane button {
  min-height: 30px;
  padding: 0 10px;
  font-size: 12px;
}

.fast-diff-file-strip span,
.fast-diff-file-strip small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fast-diff-file-strip small {
  color: var(--muted);
}

.fast-diff-focused-file {
  min-height: 0;
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #0d121a;
}

.fast-diff-file-review-actions,
.fast-diff-hunk-topline {
  display: grid;
  grid-template-columns: auto auto auto minmax(0, 1fr);
  gap: 6px;
  align-items: center;
  padding: 8px;
  border-bottom: 1px solid var(--line);
}

.fast-diff-file-review-actions textarea,
.fast-diff-hunk textarea {
  width: 100%;
  min-width: 0;
  resize: vertical;
  font-size: 12px;
}

.fast-diff-hunk {
  border-top: 1px solid var(--line);
}

.fast-diff-hunk.rejected {
  opacity: 0.58;
}

.fast-diff-hunk-topline {
  grid-template-columns: minmax(0, 1fr) auto;
  border-bottom: 0;
}

.fast-diff-hunk-topline div {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.fast-diff-hunk-topline button,
.fast-diff-file-review-actions button {
  min-height: 28px;
  padding: 0 8px;
  font-size: 12px;
}

.code-git-panel .code-status-list,
.code-review-panel .compact-review-list {
  flex: 1;
  margin-top: 8px;
}

.code-terminal-panel .split {
  grid-template-columns: minmax(0, 1fr) 96px;
  margin-bottom: 8px;
}

.code-terminal-fluid-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  margin: 8px 0;
}

.code-terminal-speed-bar {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 4px;
  margin: 8px 0 6px;
}

.code-terminal-speed-bar button {
  min-height: 28px;
  padding: 0 6px;
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  background: #111827;
}

.code-terminal-fluid-actions.scope-actions {
  margin-top: -2px;
}

.code-terminal-fluid-actions button,
.code-terminal-inline-actions button,
.code-terminal-composer-chips button {
  min-height: 30px;
  padding: 0 8px;
  font-size: 12px;
}

.code-terminal-composer {
  display: grid;
  gap: 6px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #0d121a;
  padding: 8px;
  margin: 8px 0;
}

.code-terminal-composer-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.code-terminal-scratch {
  display: grid;
  gap: 6px;
  margin: 8px 0;
}

.code-terminal-scratch textarea {
  min-height: 96px;
  resize: vertical;
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  line-height: 1.35;
}

.code-terminal-scratch-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 6px;
}

.code-terminal-scratch-actions button {
  min-height: 30px;
  padding: 0 8px;
  font-size: 12px;
}

.code-terminal-sessions {
  display: grid;
  gap: 8px;
}

.code-terminal-card {
  min-height: 0;
}

.code-terminal-inline-actions {
  display: flex;
  gap: 6px;
  align-items: center;
}

.code-terminal-output {
  min-height: 138px;
  max-height: 220px;
}

.code-terminal-input-form {
  margin-top: 8px;
}

.code-terminal-options {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 8px;
}

.code-terminal-options button {
  min-height: 30px;
  padding: 0 10px;
  font-size: 12px;
}

.code-lsp-panel {
  display: grid;
  gap: 8px;
  margin: 10px 0;
}

.code-lsp-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 62px 72px 92px;
  gap: 6px;
}

.code-lsp-controls input,
.code-lsp-controls button {
  min-height: 32px;
  font-size: 12px;
}

.code-lsp-operations {
  display: grid;
  gap: 8px;
}

.code-terminal-history {
  padding: 6px;
}

.code-fast-diff-panel {
  grid-column: span 2;
}

.code-live-trace-panel {
  min-height: 0;
  overflow: hidden;
}

.code-live-trace {
  min-height: 0;
  max-height: 260px;
  overflow: auto;
  display: grid;
  gap: 7px;
}

.code-trace-row {
  border: 1px solid var(--line);
  border-left: 3px solid var(--teal);
  border-radius: 7px;
  background: #10141d;
  padding: 8px 10px;
}

.code-trace-row.failed,
.code-trace-row.blocked {
  border-left-color: var(--danger);
}

.code-trace-head {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}

.code-trace-head time {
  color: var(--muted);
  font-size: 11px;
  white-space: nowrap;
}

.code-trace-row p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.code-fast-diff-approval {
  display: grid;
  gap: 8px;
  max-height: 360px;
  overflow: auto;
  color: var(--muted);
  font-size: 12px;
}

.code-fast-diff-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.code-fast-diff-summary span {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #10141d;
  padding: 4px 8px;
}

.code-fast-diff-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  border: 1px solid var(--line);
  border-radius: 7px;
  overflow: hidden;
}

.code-fast-diff-grid strong,
.code-fast-diff-grid pre {
  margin: 0;
  min-width: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  padding: 5px 8px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.code-fast-diff-grid strong {
  background: #151b25;
  color: var(--ink);
}

.code-fast-diff-grid pre {
  background: #0d121a;
  color: #dbe5ec;
}

.code-fast-diff-grid pre.added {
  background: #112318;
  color: #bff0aa;
}

.code-fast-diff-grid pre.removed {
  background: #271619;
  color: #ffb8b8;
}

.code-web-results {
  display: grid;
  gap: 8px;
  min-height: 0;
  max-height: 220px;
  overflow: auto;
}

.code-web-result {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #101722;
  padding: 9px 10px;
}

.code-web-result strong,
.code-web-result small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.compact-output {
  max-height: 260px;
  overflow: auto;
  white-space: pre-wrap;
}

.code-job-row {
  display: grid;
  gap: 3px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--teal);
  border-radius: 7px;
  background: #10141d;
  padding: 8px;
}

.code-job-row.failed,
.code-job-row.canceled {
  border-left-color: var(--red);
}

.code-job-row.queued,
.code-job-row.running {
  border-left-color: var(--amber);
}

.code-job-row span {
  color: var(--muted);
  font-size: 12px;
}

.code-test-intelligence-header,
.code-test-candidate {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
}

.code-test-intelligence-header {
  color: var(--muted);
  font-size: 12px;
}

.code-test-candidate {
  border: 1px solid var(--line);
  border-left: 4px solid var(--teal);
  border-radius: 7px;
  background: #10141d;
  padding: 8px;
}

.code-test-candidate.blocked {
  border-left-color: var(--amber);
}

.code-test-candidate div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.code-test-candidate strong,
.code-test-candidate span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.code-test-candidate span {
  color: var(--muted);
  font-size: 12px;
}

.code-recovery-panel .code-mini-summary {
  flex: 1;
  display: grid;
  align-content: start;
  gap: 7px;
  overflow: auto;
}

.code-agent-launcher {
  overflow: auto;
}

.code-file-picker {
  display: grid;
  gap: 8px;
  min-height: 0;
}

.code-agent-runs-panel {
  padding: 0;
}

.code-agent-runs-panel .subpanel-header {
  padding: 14px;
  border-bottom: 1px solid var(--line);
}

.code-agent-runs {
  display: grid;
  gap: 12px;
  overflow: auto;
  padding: 14px;
}

.code-run-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #111722;
  padding: 12px;
  display: grid;
  gap: 10px;
}

.code-run-card.blocked,
.code-run-card.failed {
  border-color: rgba(227, 94, 94, 0.5);
}

.code-run-card.applied,
.code-run-card.completed,
.code-run-card.done {
  border-color: rgba(126, 219, 86, 0.4);
}

.code-run-topline {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}

.code-run-topline h4 {
  font-size: 15px;
  margin-bottom: 4px;
}

.code-run-scope {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.code-run-scope code {
  border: 1px solid var(--line);
  border-radius: 5px;
  background: #0c1119;
  color: var(--ink);
  padding: 4px 7px;
  font-size: 12px;
  overflow-wrap: anywhere;
}

.code-plan-preview {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  border: 1px solid rgba(59, 185, 173, 0.3);
  border-radius: 7px;
  background: rgba(59, 185, 173, 0.08);
  padding: 9px 10px;
  color: var(--ink);
}

.inline-check {
  align-self: end;
  min-height: 38px;
}

.quick-settings-panel {
  border-color: rgba(59, 185, 173, 0.38);
}

.advanced-tools-panel {
  grid-column: 2;
}

.settings-nav-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 8px;
  overflow: auto;
  padding-right: 2px;
}

.settings-nav-list .nav-tab {
  min-height: 40px;
  background: #10141d;
  border-color: var(--line);
  color: var(--ink);
  box-shadow: none;
}

.settings-nav-list .nav-tab:hover,
.settings-nav-list .nav-tab.active {
  background: #1c2430;
  border-color: var(--teal);
  box-shadow: inset 3px 0 0 var(--teal);
}

.settings-grid {
  align-content: start;
  overflow: auto;
}

.settings-grid > .subpanel {
  overflow: visible;
}

.local-data-panel {
  grid-column: 1 / -1;
}

.local-restore-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: 10px;
}

.local-restore-controls button {
  min-height: 36px;
  padding: 0 12px;
}

.restore-preview-report {
  display: grid;
  gap: 10px;
  margin-top: 10px;
}

.restore-preview-banner {
  border: 1px solid #7a5a21;
  border-radius: 7px;
  background: #211a10;
  color: #f2cf76;
  padding: 9px 10px;
  font-size: 13px;
  font-weight: 700;
}

.restore-preview-facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}

.restore-preview-facts div {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  padding: 8px;
}

.restore-preview-facts dt {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.restore-preview-facts dd {
  margin: 4px 0 0;
  overflow-wrap: anywhere;
  font-weight: 700;
}

.restore-preview-section {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  padding: 10px;
}

.restore-preview-section ul {
  margin: 8px 0 0;
  padding-left: 18px;
}

.restore-preview-section li {
  margin: 4px 0;
  overflow-wrap: anywhere;
}

.restore-file-list {
  display: grid;
  gap: 6px;
  margin-top: 8px;
}

.restore-file-row {
  display: grid;
  grid-template-columns: 18px minmax(180px, 1fr) minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #151b25;
  padding: 7px 8px;
  font-size: 12px;
}

.restore-file-row input {
  margin-top: 2px;
}

.restore-file-row code {
  overflow-wrap: anywhere;
}

.restore-file-row span {
  color: var(--muted);
}

.restore-apply-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 180px;
  gap: 10px;
  align-items: center;
  margin-top: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 10px;
}

.restore-apply-panel button {
  min-height: 38px;
}

.restore-apply-panel button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.restore-result {
  display: grid;
  gap: 10px;
  margin-top: 10px;
}

.restore-result-card {
  display: grid;
  gap: 10px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--amber);
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.restore-result-card.completed {
  border-left-color: var(--green-dark);
}

.restore-result-card.failed,
.restore-result-card.partial_failed {
  border-left-color: var(--red);
}

.restore-rollback-panel {
  display: grid;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f7f9f4;
  padding: 10px;
}

.restore-rollback-panel.available {
  border-color: #b9d6b3;
  background: #f1f8ee;
}

.restore-rollback-panel.blocked {
  border-color: #e2b77a;
  background: #fff7e8;
}

.restore-rollback-confirm {
  margin-top: 0;
}

.restore-rollback-panel button {
  min-height: 38px;
}

.restore-rollback-panel button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.diff-summary-panel,
.diff-output-panel,
.isolation-list-panel,
.pipeline-list-panel {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.diff-grid {
  grid-template-columns: 340px minmax(360px, 1.2fr) minmax(300px, 0.85fr);
  grid-template-rows: minmax(220px, 0.95fr) minmax(260px, 1.05fr);
}

.diff-summary-panel {
  grid-row: 1 / -1;
}

.diff-output-panel {
  grid-row: 1 / -1;
}

.live-log-panel,
.review-files-panel,
.review-detail-panel {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.live-log-panel {
  padding: 12px;
}

.review-files-panel {
  padding: 12px;
}

.review-detail-panel {
  grid-column: 3;
  padding: 12px;
}

.release-control-panel {
  display: grid;
  gap: 9px;
  margin-top: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 10px;
}

.release-control-panel label span {
  display: block;
  margin-bottom: 4px;
  color: var(--muted);
  font-size: 12px;
}

.release-readiness {
  display: grid;
  gap: 8px;
}

.release-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
  margin: 0;
}

.release-facts div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #151b25;
  padding: 7px;
}

.release-facts dt {
  color: var(--muted);
  font-size: 11px;
}

.release-facts dd {
  margin: 2px 0 0;
  overflow-wrap: anywhere;
  font-size: 12px;
}

.release-checks {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.release-checks span {
  display: inline-grid;
  grid-template-columns: auto auto;
  gap: 2px 6px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #151b25;
  padding: 6px 8px;
  font-size: 12px;
}

.release-checks b {
  text-transform: uppercase;
  font-size: 10px;
}

.release-checks small {
  grid-column: 1 / -1;
  color: var(--muted);
}

.release-checks .ready {
  border-color: #315c38;
}

.release-checks .ready b {
  color: #bff0aa;
}

.release-checks .pending b {
  color: #f2cf76;
}

.release-actions,
.review-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.release-actions button,
.review-actions button {
  min-height: 34px;
}

.live-log-stream {
  flex: 1;
  min-height: 0;
  overflow: auto;
  display: grid;
  align-content: start;
  gap: 7px;
}

.live-log-row {
  display: grid;
  grid-template-columns: 64px 70px minmax(0, 1fr);
  gap: 7px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--teal);
  border-radius: 7px;
  background: #151b25;
  padding: 7px;
  font-size: 12px;
}

.live-log-row.failed,
.live-log-row.blocked {
  border-left-color: var(--red);
}

.live-log-row.running,
.live-log-row.queued {
  border-left-color: var(--amber);
}

.live-log-row time,
.live-log-row span {
  color: var(--muted);
  overflow-wrap: anywhere;
}

.live-log-row strong,
.live-log-row p {
  min-width: 0;
  overflow-wrap: anywhere;
}

.live-log-row p {
  grid-column: 3;
  color: var(--muted);
  font-size: 12px;
}

.review-file-list {
  flex: 1;
  min-height: 0;
  overflow: auto;
  display: grid;
  align-content: start;
  gap: 7px;
  margin-top: 10px;
}

.review-file-row {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  min-height: 38px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #151b25;
  color: var(--ink);
  text-align: left;
}

.review-file-row:hover,
.review-file-row.active {
  background: #1c2430;
  border-color: rgba(59, 185, 173, 0.5);
}

.review-file-row code {
  color: var(--green);
}

.review-file-row span {
  overflow-wrap: anywhere;
  white-space: normal;
}

.review-file-row small {
  color: var(--amber);
}

.review-diff-output {
  flex: 1;
  min-height: 0;
  margin-top: 10px;
}

.compact-facts {
  margin-top: 8px;
}

.compact-facts div {
  grid-template-columns: 72px minmax(0, 1fr);
}

.diff-summary {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 10px;
  font-size: 13px;
  line-height: 1.45;
}

.diff-status-list {
  flex: 1;
  min-height: 0;
  overflow: auto;
  display: grid;
  align-content: start;
  gap: 7px;
  margin-top: 10px;
}

.diff-status-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  width: 100%;
  text-align: left;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #151b25;
  color: var(--ink);
  padding: 7px 8px;
  font-size: 12px;
}

.diff-status-row:hover,
.diff-status-row:focus {
  border-color: var(--green);
}

.diff-status-row code {
  color: var(--green);
}

.diff-status-row span {
  overflow-wrap: anywhere;
}

.git-stage-row {
  grid-template-columns: minmax(0, 1fr) auto;
}

.git-stage-row > button {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  min-width: 0;
  border: 0;
  background: transparent;
  color: inherit;
  padding: 0;
  text-align: left;
}

.git-stage-row > div {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.git-stage-row > div button {
  min-height: 26px;
  padding: 0 7px;
  font-size: 11px;
}

.diff-stat,
.diff-output {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  color: var(--ink);
  padding: 10px;
  overflow: auto;
  font-size: 12px;
  line-height: 1.45;
  white-space: pre-wrap;
}

.diff-output-panel details {
  min-height: 0;
  margin-top: 10px;
}

.diff-output-panel details[open] {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.diff-output-panel summary {
  cursor: pointer;
  color: var(--muted);
  font-size: 13px;
  margin-bottom: 6px;
}

.isolation-facts {
  margin-top: 10px;
}

.isolation-list-panel {
  padding: 0;
}

.isolation-list-panel .subpanel-header {
  padding: 14px;
  border-bottom: 1px solid var(--line);
}

.worktree-list {
  flex: 1;
  min-height: 0;
  overflow: auto;
  padding: 14px;
}

.worktree-card {
  border: 1px solid var(--line);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #151b25;
  padding: 12px;
  margin-bottom: 10px;
}

.worktree-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.worktree-topline h3 {
  margin: 0;
  font-size: 15px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.pipeline-list-panel {
  padding: 0;
}

.pipeline-list-panel .subpanel-header {
  padding: 14px;
  border-bottom: 1px solid var(--line);
}

.pipeline-tools {
  flex: 1;
  min-height: 0;
  overflow: auto;
  padding: 14px;
}

.pipeline-health {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
}

.pipeline-health div {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  padding: 8px;
}

.pipeline-health strong,
.pipeline-health span {
  display: block;
}

.pipeline-health strong {
  font-size: 18px;
  line-height: 1;
}

.pipeline-health span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
}

.pipeline-card {
  border: 1px solid var(--line);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #151b25;
  padding: 12px;
  margin-bottom: 10px;
}

.pipeline-card.disabled {
  border-left-color: var(--line);
  background: #111722;
  opacity: 0.86;
}

.pipeline-card.missing {
  border-left-color: var(--amber);
  background: #211a10;
}

.pipeline-card.disabled .pipeline-topline h3,
.pipeline-card.missing .pipeline-topline h3 {
  color: var(--ink);
}

.pipeline-card.risk-high,
.pipeline-card.risk-cloud {
  border-left-color: var(--red);
}

.pipeline-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.pipeline-topline h3 {
  margin: 0;
  font-size: 15px;
}

.pipeline-facts {
  margin-top: 10px;
}

.pipeline-install-hint {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 7px;
  align-items: center;
  margin-top: 9px;
  border: 1px solid #e1e6db;
  border-radius: 7px;
  background: rgba(247, 249, 245, 0.82);
  padding: 6px 8px;
  color: var(--muted);
  font-size: 11px;
}

.pipeline-install-hint span {
  font-weight: 700;
}

.pipeline-install-hint code {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #4d5548;
  font-size: 11px;
}

.pipeline-recipes {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.pipeline-recipes button {
  min-height: 30px;
  padding: 5px 9px;
  font-size: 12px;
}

.pipeline-recipes button:disabled:hover {
  background: var(--green-dark);
}

.pipeline-recommend-panel {
  margin-top: 16px;
  border-top: 1px solid var(--line);
  padding-top: 14px;
}

.tool-breadth-panel {
  margin-top: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 10px;
}

.tool-breadth-list {
  display: grid;
  gap: 7px;
  margin-top: 8px;
}

.tool-breadth-row {
  border: 1px solid var(--line);
  border-left: 3px solid var(--red);
  border-radius: 7px;
  background: #151b25;
  padding: 8px;
}

.tool-breadth-row.ready {
  border-left-color: var(--green);
}

.tool-breadth-row div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.tool-breadth-row span {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.tool-breadth-row p {
  margin: 5px 0 0;
  color: var(--muted);
}

.mcp-registry-panel,
.mcp-invocation-panel {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 10px;
}

.mcp-registry-list {
  display: grid;
  gap: 8px;
}

.mcp-registry-card {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--amber);
  border-radius: 8px;
  background: #151b25;
  padding: 8px;
}

.mcp-registry-card.configured {
  border-left-color: var(--green);
}

.mcp-registry-card-main,
.mcp-registry-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: start;
}

.mcp-registry-card-main strong,
.mcp-registry-card-main span {
  display: block;
  overflow-wrap: anywhere;
}

.mcp-registry-card-main span,
.mcp-registry-facts dt {
  color: var(--muted);
  font-size: 12px;
}

.mcp-registry-facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}

.mcp-registry-facts div {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #10141d;
  padding: 6px;
}

.mcp-registry-facts dt,
.mcp-registry-facts dd {
  margin: 0;
  overflow-wrap: anywhere;
}

.mcp-registry-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.mcp-registry-tools span {
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  font-size: 11px;
  padding: 3px 7px;
}

.mcp-registry-actions code {
  align-self: stretch;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #10141d;
  color: var(--muted);
  overflow-wrap: anywhere;
  padding: 7px;
}

.mcp-registry-actions button {
  min-height: 34px;
  padding: 0 10px;
  white-space: nowrap;
}

.mcp-registry-install-result {
  max-height: 220px;
  margin: 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.tool-hook-panel {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 10px;
}

.tool-hook-list {
  display: grid;
  gap: 8px;
}

.tool-hook-card,
.tool-hook-run {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--amber);
  border-radius: 8px;
  background: #151b25;
  padding: 8px;
}

.tool-hook-card.enabled,
.tool-hook-run.completed {
  border-left-color: var(--green);
}

.tool-hook-run.failed {
  border-left-color: var(--red);
}

.tool-hook-card span,
.tool-hook-run span,
.tool-hook-run p {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.tool-hook-run p {
  grid-column: 1 / -1;
  margin: 0;
}

.mcp-server-list,
.mcp-tool-list {
  display: grid;
  gap: 8px;
}

.mcp-server-card,
.mcp-tool-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: start;
  border: 1px solid var(--line);
  border-left: 3px solid var(--amber);
  border-radius: 8px;
  background: #151b25;
  padding: 8px;
}

.mcp-server-card.selected,
.mcp-tool-card.selected {
  border-left-color: var(--teal);
}

.mcp-tool-card.read-only {
  border-left-color: var(--green);
}

.mcp-tool-card.blocked {
  opacity: 0.72;
}

.mcp-server-card span,
.mcp-tool-card span {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.mcp-server-card button,
.mcp-tool-card button {
  min-height: 32px;
  padding: 0 10px;
  white-space: nowrap;
}

.mcp-tool-card pre {
  grid-column: 1 / -1;
  max-height: 150px;
  margin: 0;
  background: #10141d;
  white-space: pre-wrap;
  overflow: auto;
}

.mcp-invoke-form {
  border-top: 1px solid var(--line);
  padding-top: 10px;
}

.mcp-lease-panel {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #151b25;
  padding: 8px;
}

.mcp-lease-panel .split {
  grid-template-columns: minmax(0, 1fr) minmax(110px, 0.45fr);
}

.mcp-lease-panel button {
  min-height: 32px;
}

.mcp-invocation-result {
  max-height: 260px;
  margin: 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.pipeline-attachment-panel {
  margin-top: 14px;
  border-top: 1px solid var(--line);
  padding-top: 12px;
}

.pipeline-attachment-panel .subpanel-header {
  padding: 0;
  border: 0;
  margin-bottom: 8px;
}

.pipeline-attachment-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}

.pipeline-attachment-controls button {
  min-height: 28px;
  padding: 0 9px;
  font-size: 12px;
}

.pipeline-attachment-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.pipeline-attachment-note,
.form-error {
  margin-top: 8px;
  border-radius: 7px;
  padding: 8px 9px;
  font-size: 12px;
  line-height: 1.35;
}

.pipeline-attachment-note {
  border: 1px solid #dce5d3;
  background: #f6f9f2;
  color: var(--muted);
}

.form-error {
  display: none;
  border: 1px solid #f1b6b6;
  background: #fdecec;
  color: var(--red);
}

.form-error.active {
  display: block;
}

.pipeline-attachment-list {
  display: grid;
  gap: 7px;
  margin-top: 10px;
  max-height: 210px;
  overflow: auto;
}

.pipeline-attachment {
  grid-template-columns: 18px 42px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
}

.pipeline-attachment.selected {
  border-color: var(--green-dark);
  border-left: 4px solid var(--green-dark);
  background: #15251b;
  box-shadow: 0 0 0 2px rgba(127, 201, 80, 0.12);
}

.pipeline-attachment input {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: var(--green-dark);
}

.pipeline-attachment a {
  color: var(--ink);
  text-decoration: none;
}

.pipeline-attachment a:hover {
  color: var(--green-dark);
  text-decoration: underline;
}

.pipeline-attachment .file-kind:hover {
  text-decoration: none;
}

.pipeline-recommendations {
  display: grid;
  gap: 8px;
}

.pipeline-recommendation {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 120px auto;
  gap: 8px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #151b25;
  padding: 9px;
}

.pipeline-recommendation.blocked {
  opacity: 0.78;
}

.pipeline-recommendation strong,
.pipeline-recommendation span {
  overflow-wrap: anywhere;
}

.pipeline-recommendation > div > span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  margin-top: 3px;
}

.pipeline-recommendation small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
}

.pipeline-recommendation .score-badge {
  margin: 0;
  grid-template-columns: 38px minmax(0, 1fr);
}

.pipeline-recommendation button {
  min-height: 32px;
  padding: 0 10px;
  font-size: 12px;
}

.merge-preview-panel {
  border-top: 1px solid var(--line);
  padding: 0 14px 14px;
}

.merge-preview-panel .subpanel-header {
  margin: 0 -14px 12px;
}

.merge-preview-panel .diff-output {
  max-height: 300px;
  margin-top: 10px;
}

.merge-warning {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
  border-radius: 7px;
  background: #211a10;
  padding: 8px;
}

.merge-warning code {
  border-radius: 5px;
  background: #10141d;
  color: #f2cf76;
  padding: 3px 6px;
  font-size: 11px;
  overflow-wrap: anywhere;
}

.subpanel {
  min-height: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-strong);
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  overflow: hidden;
}

.ownership-panel {
  margin-top: 16px;
  border-top: 1px solid var(--line);
  padding-top: 14px;
}

.lock-inheritance-panel {
  display: grid;
  gap: 9px;
  border-top: 1px solid var(--line);
  padding-top: 12px;
}

.lock-inheritance-list {
  display: grid;
  gap: 8px;
}

.lock-inheritance-row {
  display: grid;
  gap: 7px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--teal);
  border-radius: 7px;
  background: #151b25;
  padding: 9px;
}

.lock-inheritance-row strong,
.lock-inheritance-row span {
  overflow-wrap: anywhere;
}

.lock-inheritance-row span {
  color: var(--muted);
  font-size: 12px;
}

.worktree-inherited-locks {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.worktree-inherited-locks code {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #10141d;
  color: var(--ink);
  padding: 3px 7px;
  font-size: 11px;
  overflow-wrap: anywhere;
}

.stale-worktree-policy-panel {
  display: grid;
  gap: 9px;
  margin-top: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 10px;
}

.stale-worktree-policy-details {
  display: grid;
  gap: 7px;
}

.stale-worktree-candidate {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--amber);
  border-radius: 7px;
  background: #151b25;
  padding: 8px;
}

.stale-worktree-candidate.safe {
  border-left-color: var(--green);
}

.stale-worktree-candidate strong,
.stale-worktree-candidate span,
.stale-worktree-candidate p {
  overflow-wrap: anywhere;
}

.stale-worktree-candidate span,
.stale-worktree-candidate p {
  color: var(--muted);
  font-size: 12px;
}

.stale-worktree-candidate p {
  grid-column: 1 / -1;
  margin: 0;
}

.conflict-heatmap-panel {
  display: grid;
  gap: 10px;
  margin-bottom: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 0 12px 12px;
}

.conflict-heatmap-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 8px;
}

.conflict-heatmap-cell {
  position: relative;
  min-height: 118px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-left: 4px solid var(--green-dark);
  border-radius: 7px;
  background: #151b25;
}

.conflict-heatmap-cell.medium {
  border-left-color: var(--amber);
}

.conflict-heatmap-cell.high,
.conflict-heatmap-cell.critical {
  border-left-color: var(--red);
}

.conflict-heatmap-fill {
  position: absolute;
  inset: auto 0 0 0;
  height: var(--conflict-score);
  background: rgba(127, 201, 80, 0.12);
}

.conflict-heatmap-cell.medium .conflict-heatmap-fill {
  background: rgba(215, 168, 70, 0.16);
}

.conflict-heatmap-cell.high .conflict-heatmap-fill,
.conflict-heatmap-cell.critical .conflict-heatmap-fill {
  background: rgba(224, 91, 91, 0.18);
}

.conflict-heatmap-content {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 6px;
  padding: 10px;
}

.conflict-heatmap-content strong,
.conflict-heatmap-content small {
  overflow-wrap: anywhere;
}

.conflict-heatmap-content span,
.conflict-heatmap-content small {
  color: var(--muted);
  font-size: 12px;
}

.conflict-heatmap-content div {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.conflict-heatmap-content em {
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 3px 7px;
  color: var(--ink);
  font-size: 11px;
  font-style: normal;
}

.stale-lock-policy-panel {
  display: grid;
  gap: 10px;
  margin-bottom: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 0 12px 12px;
}

.stale-lock-policy-controls {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 8px;
  align-items: end;
}

.stale-lock-policy-details {
  display: grid;
  gap: 8px;
}

.stale-lock-candidate {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px 10px;
  align-items: start;
  border: 1px solid var(--line);
  border-left: 4px solid var(--amber);
  border-radius: 7px;
  background: #151b25;
  padding: 9px;
}

.stale-lock-candidate.safe {
  border-left-color: var(--green);
}

.stale-lock-candidate strong,
.stale-lock-candidate p {
  overflow-wrap: anywhere;
}

.stale-lock-candidate span {
  color: var(--muted);
  font-size: 12px;
}

.stale-lock-candidate p {
  grid-column: 1 / -1;
  margin: 0;
  color: var(--muted);
  font-size: 12px;
}

.subpanel h3 {
  font-size: 15px;
}

.task-board-panel,
.locks-list-panel,
.snapshots-list-panel,
.gate-list-panel,
.command-list-panel,
.explorer-list-panel,
.file-preview-panel,
.schedule-list-panel {
  padding: 0;
}

.task-board-panel .subpanel-header,
.locks-list-panel .subpanel-header,
.snapshots-list-panel .subpanel-header,
.gate-list-panel .subpanel-header,
.command-list-panel .subpanel-header,
.explorer-list-panel .subpanel-header,
.file-preview-panel .subpanel-header,
.schedule-list-panel .subpanel-header {
  padding: 14px;
  border-bottom: 1px solid var(--line);
}

.locks-list-panel .locks-list,
.snapshots-list-panel .snapshots-list,
.gate-list-panel .gate-list,
.command-list-panel .command-list,
.schedule-list-panel .schedule-list {
  padding: 14px;
}

.explorer-list-panel,
.file-preview-panel {
  padding: 0;
}

.explorer-search {
  padding: 10px;
  border-bottom: 1px solid var(--line);
  background: #151b25;
  display: grid;
  gap: 8px;
}

.repo-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  padding: 8px 10px;
  border-bottom: 1px solid var(--line);
  background: #101722;
}

.repo-breadcrumbs button {
  min-height: 26px;
  padding: 0 8px;
  font-size: 12px;
}

.repo-breadcrumbs span {
  color: var(--muted);
  font-size: 12px;
}

.repo-tree,
.repo-search-results {
  padding: 10px;
  border-bottom: 1px solid var(--line);
  background: #111821;
  max-height: 260px;
  overflow: auto;
}

.repo-dir-row,
.repo-file-row,
.repo-search-row {
  width: 100%;
  display: grid;
  gap: 3px;
  text-align: left;
  border: 1px solid var(--line);
  background: #151b25;
  color: var(--ink);
  border-radius: 7px;
  padding: 8px 10px;
  margin-bottom: 7px;
}

.repo-dir-row span::before {
  content: "/";
  color: var(--green);
  margin-right: 2px;
}

.repo-file-row.active,
.repo-search-row:focus,
.repo-dir-row:focus {
  border-color: var(--green);
}

.repo-dir-row small,
.repo-file-row small,
.repo-search-row span {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.patch-plan-form {
  border-top: 1px solid var(--line);
  margin-top: 12px;
  padding-top: 12px;
}

.file-row {
  width: 100%;
  min-height: 48px;
  display: grid;
  gap: 3px;
  text-align: left;
  background: #151b25;
  color: var(--ink);
  border: 1px solid var(--line);
  margin-bottom: 8px;
  padding: 8px 10px;
}

.file-row:hover,
.file-row.active {
  background: #1c2430;
  border-color: var(--teal);
}

.file-row span {
  overflow-wrap: anywhere;
  font-size: 13px;
}

.file-row small {
  color: var(--muted);
  font-size: 12px;
}

.file-context {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--line);
  background: #10141d;
  color: var(--ink);
}

.file-tools {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(120px, 180px) 96px;
  gap: 8px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--line);
  background: #10141d;
  color: var(--ink);
}

.file-tools button {
  min-height: 36px;
  padding: 0 10px;
}

.file-context span {
  border-radius: 999px;
  background: #e9ede4;
  color: #3f493b;
  padding: 4px 8px;
  font-size: 12px;
}

.file-preview {
  flex: 1;
  margin: 0;
  overflow: auto;
  background: #111613;
  color: #f7faf2;
  padding: 14px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 12px;
  line-height: 1.45;
}

.lock-card {
  border-left: 4px solid var(--teal);
}

.lock-card.ownership {
  border-left-color: var(--green-dark);
}

.lock-card.released {
  border-left-color: var(--line);
  opacity: 0.82;
}

.lock-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.lock-topline h3 {
  margin: 0;
  font-size: 15px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.lock-facts {
  display: grid;
  gap: 6px;
  margin-top: 10px;
}

.lock-facts div {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 10px;
}

.snapshot-card {
  border-left: 4px solid var(--green-dark);
}

.snapshot-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.snapshot-topline h3 {
  margin: 0;
  font-size: 15px;
  line-height: 1.25;
}

.snapshot-facts {
  display: grid;
  gap: 7px;
  margin-top: 10px;
}

.snapshot-facts div {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 10px;
}

.snapshot-facts dd {
  max-height: 72px;
  overflow: auto;
  white-space: pre-wrap;
}

.snapshot-files {
  display: grid;
  gap: 7px;
  margin-top: 10px;
}

.snapshot-files div {
  display: grid;
  gap: 3px;
  border-top: 1px solid var(--line);
  padding-top: 7px;
}

.snapshot-files code {
  overflow-wrap: anywhere;
}

.snapshot-files span {
  color: var(--muted);
  font-size: 12px;
}

.snapshot-policy-panel {
  display: grid;
  gap: 9px;
  margin-bottom: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f7f9f4;
  padding: 10px;
}

.snapshot-policy-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.snapshot-policy-header h3,
.snapshot-policy-header p {
  margin: 0;
}

.snapshot-policy-header p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.snapshot-policy-facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
  margin: 0;
}

.snapshot-policy-facts div {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  padding: 7px;
  min-width: 0;
}

.snapshot-policy-facts dt {
  color: var(--muted);
  font-size: 11px;
}

.snapshot-policy-facts dd {
  margin: 2px 0 0;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.snapshot-policy-operations {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.snapshot-policy-operations span {
  border-radius: 999px;
  background: #eef2ea;
  color: var(--muted);
  padding: 4px 8px;
  font-size: 11px;
  overflow-wrap: anywhere;
}

.snapshot-policy-latest {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.snapshot-compare {
  margin-top: 16px;
  border-top: 1px solid var(--line);
  padding-top: 14px;
}

.snapshot-compare-header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}

.snapshot-compare-header span {
  color: var(--muted);
  font-size: 12px;
}

.snapshot-compare-counts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin: 0 0 10px;
}

.snapshot-compare-counts div {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  padding: 8px;
}

.snapshot-compare-counts dt {
  color: var(--muted);
  font-size: 11px;
}

.snapshot-compare-counts dd {
  margin: 2px 0 0;
  font-weight: 700;
}

.snapshot-risk-report {
  display: grid;
  gap: 9px;
  margin: 10px 0;
  border: 1px solid var(--line);
  border-left: 4px solid var(--green);
  border-radius: 8px;
  background: #f7faf4;
  padding: 10px;
}

.snapshot-risk-report.low {
  border-left-color: #7fb35b;
}

.snapshot-risk-report.medium {
  border-left-color: var(--amber);
  background: #fff9e7;
}

.snapshot-risk-report.high,
.snapshot-risk-report.critical {
  border-left-color: var(--red);
  background: #fff5f3;
}

.snapshot-risk-header {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
}

.snapshot-risk-header h4,
.snapshot-risk-header p {
  margin: 0;
}

.snapshot-risk-header p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.snapshot-risk-score {
  display: inline-grid;
  place-items: center;
  min-width: 42px;
  min-height: 42px;
  border-radius: 999px;
  background: #e3f5df;
  color: var(--green-dark);
  font-weight: 800;
}

.snapshot-risk-score.medium {
  background: #fff0bf;
  color: #7a5600;
}

.snapshot-risk-score.high,
.snapshot-risk-score.critical {
  background: #ffe0dc;
  color: #8a2d23;
}

.snapshot-risk-signals {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
}

.snapshot-risk-signals span {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  padding: 7px;
  min-width: 0;
}

.snapshot-risk-signals strong,
.snapshot-risk-signals small {
  display: block;
  overflow-wrap: anywhere;
}

.snapshot-risk-signals small {
  color: var(--muted);
  font-size: 11px;
}

.snapshot-risk-next {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.snapshot-risk-list {
  display: grid;
  gap: 6px;
}

.snapshot-risk-list div {
  border: 1px solid var(--line);
  border-left: 3px solid var(--green);
  border-radius: 7px;
  background: #fff;
  padding: 7px;
}

.snapshot-risk-list div.medium {
  border-left-color: var(--amber);
}

.snapshot-risk-list div.high,
.snapshot-risk-list div.critical {
  border-left-color: var(--red);
}

.snapshot-risk-list strong,
.snapshot-risk-list span {
  display: block;
  overflow-wrap: anywhere;
}

.snapshot-risk-list span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 12px;
}

.snapshot-restore-note {
  border-radius: 7px;
  background: #fff4cf;
  color: #6d4f00;
  padding: 8px;
  font-size: 12px;
  line-height: 1.4;
}

.snapshot-archive-note {
  margin-top: 8px;
  border-radius: 7px;
  background: #e3f5df;
  color: var(--green-dark);
  padding: 8px;
  font-size: 12px;
  line-height: 1.4;
}

.snapshot-restore-actions {
  margin-top: 8px;
}

.snapshot-restore-actions button,
.snapshot-compare-files button {
  min-height: 30px;
  padding: 5px 9px;
  font-size: 12px;
}

.snapshot-compare-groups {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.snapshot-compare-files {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}

.snapshot-compare-files span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.snapshot-compare-files code {
  border-radius: 5px;
  background: #eef2ea;
  padding: 3px 6px;
  font-size: 11px;
  overflow-wrap: anywhere;
}

.snapshot-restore-wizard {
  margin-top: 12px;
  border-top: 1px solid var(--line);
  padding-top: 12px;
}

.snapshot-wizard-header {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
}

.snapshot-wizard-header h4 {
  margin: 0;
}

.snapshot-wizard-header p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.snapshot-restore-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
  margin-top: 10px;
}

.snapshot-restore-step {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  padding: 8px;
  min-width: 0;
}

.snapshot-restore-step.ready {
  border-color: rgba(54, 139, 77, 0.35);
  background: #eef8ec;
}

.snapshot-restore-step.active {
  border-color: rgba(169, 117, 0, 0.35);
  background: #fff7d8;
}

.snapshot-restore-step.blocked {
  color: var(--muted);
  background: #f6f7f4;
}

.snapshot-restore-step strong,
.snapshot-restore-step span {
  display: block;
  overflow-wrap: anywhere;
}

.snapshot-restore-step span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
}

.snapshot-restore-summary,
.snapshot-wizard-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
  margin-top: 10px;
}

.snapshot-restore-summary span {
  border-radius: 999px;
  background: #eef2ea;
  padding: 4px 8px;
  font-size: 11px;
  color: var(--muted);
}

.snapshot-source-file-list {
  display: grid;
  gap: 7px;
  margin-top: 10px;
  max-height: 260px;
  overflow: auto;
}

.snapshot-source-file-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  padding: 8px;
}

.snapshot-source-file-row.changed {
  border-left: 3px solid #d49b00;
}

.snapshot-source-file-row.missing {
  border-left: 3px solid #4f88c6;
}

.snapshot-source-file-row strong,
.snapshot-source-file-row small {
  display: block;
  overflow-wrap: anywhere;
}

.snapshot-source-file-row small {
  margin-top: 2px;
  color: var(--muted);
}

.snapshot-restore-confirm {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  margin-top: 10px;
  border-radius: 7px;
  background: #fff4cf;
  color: #6d4f00;
  padding: 9px;
  font-size: 12px;
  line-height: 1.4;
}

.snapshot-wizard-result {
  color: var(--muted);
  font-size: 12px;
}

.task-filters {
  min-width: min(420px, 100%);
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.task-board-tools {
  min-width: min(540px, 100%);
  display: grid;
  grid-template-columns: 112px 112px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
}

#taskTemplate {
  border-color: rgba(59, 185, 173, 0.48);
  background: #10141d;
  color: var(--ink);
  font-weight: 700;
}

#taskDependencies,
#taskAttachments,
#taskAttachmentHelp,
.plan-builder-panel,
.task-ready-panel,
.agent-jobs-panel,
.batch-dashboard-panel,
.task-graph-panel {
  display: none;
}

.task-ready-panel {
  margin-top: 16px;
  border-top: 1px solid var(--line);
  padding-top: 14px;
}

.plan-builder-panel {
  margin-top: 16px;
  border-top: 1px solid var(--line);
  padding-top: 14px;
}

.task-ready-list {
  display: grid;
  gap: 8px;
}

.task-ready-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-left: 4px solid var(--amber);
  border-radius: 8px;
  background: #151b25;
  padding: 10px;
}

.task-ready-row.ready {
  border-left-color: var(--green-dark);
}

.task-ready-row strong,
.task-ready-row span,
.task-ready-row p {
  overflow-wrap: anywhere;
}

.task-ready-row strong {
  display: block;
  font-size: 13px;
}

.task-ready-row span,
.task-ready-row p {
  color: var(--muted);
  font-size: 12px;
}

.task-ready-row p {
  margin-top: 4px;
}

.task-ready-row button {
  min-height: 32px;
  padding: 0 10px;
  font-size: 12px;
}

.agent-jobs-panel {
  margin-top: 16px;
  border-top: 1px solid var(--line);
  padding-top: 14px;
}

.batch-dashboard-panel {
  margin-top: 16px;
  border-top: 1px solid var(--line);
  padding-top: 14px;
}

.agent-jobs-list {
  display: grid;
  gap: 8px;
}

.batch-dashboard {
  display: grid;
  gap: 10px;
  max-height: 460px;
  overflow: auto;
}

.agent-job-card {
  border: 1px solid var(--line);
  border-left: 4px solid var(--amber);
  border-radius: 8px;
  background: #151b25;
  padding: 10px;
}

.agent-job-card.running {
  border-left-color: var(--teal);
}

.agent-job-card.completed {
  border-left-color: var(--green-dark);
}

.agent-job-card.failed {
  border-left-color: var(--red);
}

.batch-card {
  border: 1px solid var(--line);
  border-left: 4px solid var(--amber);
  border-radius: 8px;
  background: #151b25;
  padding: 10px;
}

.batch-card.completed {
  border-left-color: var(--green-dark);
}

.batch-card.blocked,
.batch-card.failed {
  border-left-color: var(--red);
}

.batch-card.review {
  border-left-color: var(--teal);
}

.job-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.batch-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.batch-topline h4 {
  margin: 0;
  font-size: 14px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.job-result,
.job-error {
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.job-error {
  color: var(--red);
}

.batch-visual-group,
.batch-blockers,
.batch-file-lock-prompts,
.batch-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 9px;
}

.batch-visual-group span,
.batch-blockers span,
.batch-file-lock-prompts span {
  border-radius: 999px;
  background: #202a26;
  color: #dbe5ec;
  padding: 4px 8px;
  font-size: 12px;
}

.batch-visual-group .done,
.batch-visual-group .completed {
  background: #19301d;
  color: #bff0aa;
}

.batch-visual-group .review,
.batch-visual-group .running {
  background: #102b2d;
  color: #9ce7df;
}

.batch-visual-group .blocked,
.batch-visual-group .failed {
  background: #351c20;
  color: #ffb8b8;
}

.batch-blockers {
  border: 1px solid #713333;
  border-radius: 7px;
  background: #21181d;
  padding: 8px;
}

.batch-blockers strong {
  width: 100%;
  color: var(--red);
  font-size: 12px;
}

.batch-timeline {
  position: relative;
  display: grid;
  gap: 0;
  margin-top: 10px;
  padding-left: 3px;
}

.batch-timeline::before {
  content: "";
  position: absolute;
  top: 8px;
  bottom: 8px;
  left: 7px;
  width: 1px;
  background: var(--line);
}

.batch-timeline-item {
  position: relative;
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr);
  gap: 8px;
  padding: 5px 0;
  font-size: 12px;
}

.batch-timeline-item > span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  margin-top: 4px;
  background: var(--muted);
  box-shadow: 0 0 0 3px #fff;
  z-index: 1;
}

.batch-timeline-item.completed > span,
.batch-timeline-item.done > span,
.batch-timeline-item.passed > span {
  background: var(--green);
}

.batch-timeline-item.running > span,
.batch-timeline-item.queued > span,
.batch-timeline-item.review > span,
.batch-timeline-item.warning > span {
  background: var(--amber);
}

.batch-timeline-item.failed > span,
.batch-timeline-item.blocked > span,
.batch-timeline-item.canceled > span {
  background: var(--red);
}

.batch-timeline-item strong,
.batch-timeline-item small {
  display: block;
  overflow-wrap: anywhere;
}

.batch-timeline-item small {
  color: var(--muted);
  margin-top: 2px;
}

.batch-debate {
  display: grid;
  gap: 8px;
  margin-top: 10px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--teal);
  border-radius: 7px;
  background: #10141d;
  padding: 9px;
}

.batch-debate-topline {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: baseline;
}

.batch-debate-topline span,
.batch-debate-meta span,
.batch-debate-position span,
.batch-debate-position small,
.batch-debate p {
  color: var(--muted);
  font-size: 12px;
}

.batch-debate-meta,
.batch-debate-positions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.batch-debate-meta span {
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 3px 7px;
}

.batch-debate-position {
  flex: 1 1 190px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--green);
  border-radius: 7px;
  background: #151b25;
  padding: 8px;
}

.batch-debate-position.blocked {
  border-left-color: var(--red);
}

.batch-debate-position strong,
.batch-debate-position span,
.batch-debate-position p,
.batch-debate-position small,
.batch-debate-position em {
  display: block;
  overflow-wrap: anywhere;
}

.batch-debate-position p,
.batch-debate p {
  margin: 4px 0 0;
}

.batch-debate-position em {
  margin-top: 5px;
  color: #ffb8b8;
  font-size: 12px;
  font-style: normal;
}

.batch-file-lock-prompts button,
.batch-actions button {
  min-height: 30px;
  padding: 0 9px;
  font-size: 12px;
}

.score-badge {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 7px;
  margin-top: 8px;
}

.score-badge strong {
  display: grid;
  place-items: center;
  min-height: 32px;
  border-radius: 7px;
  background: #202a26;
  color: #dbe5ec;
  font-size: 14px;
}

.score-badge span {
  min-width: 0;
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.score-badge.strong strong {
  background: #19301d;
  color: #bff0aa;
}

.score-badge.ok strong {
  background: #312615;
  color: #f2cf76;
}

.score-badge.risk strong {
  background: #351c20;
  color: #ffb8b8;
}

.job-details {
  margin-top: 8px;
  border-top: 1px solid var(--line);
  padding-top: 8px;
}

.job-details summary {
  cursor: pointer;
  color: var(--muted);
  font-size: 12px;
}

.job-detail-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin: 8px 0;
}

.job-detail-grid div {
  min-width: 0;
}

.job-detail-grid dt {
  color: var(--muted);
  font-size: 11px;
}

.job-detail-grid dd {
  margin: 2px 0 0;
  font-size: 12px;
  overflow-wrap: anywhere;
}

.job-task-context {
  margin-bottom: 8px;
  color: var(--muted);
  font-size: 12px;
}

.job-change-report {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #f7f9f5;
  padding: 8px;
  margin-bottom: 8px;
  font-size: 12px;
}

.job-change-files {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 7px;
}

.job-change-files span {
  border-radius: 5px;
  background: #eef2ea;
  padding: 3px 6px;
  overflow-wrap: anywhere;
}

.job-change-files .added {
  background: #e3f5df;
  color: var(--green-dark);
}

.job-change-files .deleted {
  background: #fde4e4;
  color: var(--red);
}

.job-payload {
  max-height: 150px;
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #10141d;
  padding: 8px;
  font-size: 11px;
  white-space: pre-wrap;
}

.job-log-list {
  display: grid;
  gap: 6px;
  margin-top: 8px;
}

.job-log-item {
  border-top: 1px solid var(--line);
  padding-top: 6px;
  font-size: 12px;
}

.job-log-item span {
  display: block;
  color: var(--muted);
  margin-top: 2px;
}

.job-actions {
  display: flex;
  gap: 8px;
  margin-top: 8px;
}

.job-actions button {
  min-height: 32px;
  padding: 6px 10px;
  font-size: 12px;
}

.task-board {
  flex: 1;
  min-height: 0;
  overflow: auto;
  padding: 14px;
  display: grid;
  grid-template-columns: repeat(3, minmax(240px, 1fr));
  gap: 12px;
  background: #111722;
}

.task-graph-panel {
  border-top: 1px solid var(--line);
  padding: 12px 14px;
  background: #111722;
}

.task-graph {
  display: grid;
  gap: 8px;
  max-height: 260px;
  overflow: auto;
}

.task-graph-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 86px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #151b25;
  padding: 9px;
}

.task-graph-row.blocked {
  border-left: 4px solid var(--amber);
}

.task-graph-node {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.task-graph-node strong {
  overflow-wrap: anywhere;
  font-size: 13px;
}

.task-graph-node span {
  color: var(--muted);
  font-size: 12px;
}

.task-graph-link {
  justify-self: center;
  border-radius: 999px;
  background: #19301d;
  color: #bff0aa;
  padding: 4px 8px;
  font-size: 12px;
  text-align: center;
}

.task-graph-link.depends {
  background: #312615;
  color: #f2cf76;
}

.task-column {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 164px;
}

.task-column-header {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  background: #151b25;
  border-bottom: 1px solid var(--line);
}

.task-column-header h3 {
  font-size: 14px;
}

.task-column-header span {
  min-width: 26px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: #19301d;
  color: #bff0aa;
  font-size: 12px;
  font-weight: 700;
}

.task-column-list {
  padding: 10px;
  overflow: auto;
  min-height: 0;
  max-height: 280px;
}

.task-card {
  border-left: 4px solid var(--green);
  color: var(--ink);
}

.task-card.priority-high {
  border-left-color: var(--red);
}

.task-card.priority-low {
  border-left-color: var(--teal);
}

.gate-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.gate-badges span {
  border-radius: 999px;
  padding: 4px 8px;
  background: #202a26;
  color: #dbe5ec;
  font-size: 12px;
}

.gate-badges .passed {
  background: #19301d;
  color: #bff0aa;
}

.gate-badges .warning {
  background: #312615;
  color: #f2cf76;
}

.gate-badges .failed,
.gate-badges .blocked {
  background: #351c20;
  color: #ffb8b8;
}

.task-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  color: var(--muted);
  font-size: 12px;
  margin-bottom: 8px;
}

.task-card h4 {
  margin: 0;
  font-size: 15px;
  line-height: 1.25;
}

.task-body,
.task-result {
  margin-top: 8px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  line-height: 1.4;
  font-size: 13px;
}

.task-result {
  padding: 8px;
  border-radius: 7px;
  background: #10141d;
  border: 1px solid var(--line);
}

.coding-loop-status {
  display: grid;
  gap: 4px;
  margin-top: 8px;
  padding: 8px;
  border-radius: 7px;
  background: #111821;
  border: 1px solid #263447;
  border-left: 3px solid var(--cyan);
  color: #dbe5ec;
  font-size: 12px;
  line-height: 1.35;
}

.coding-loop-status strong {
  font-size: 12px;
  color: #f5f8fb;
}

.coding-loop-status span {
  color: var(--muted);
  overflow-wrap: anywhere;
}

.coding-loop-status.blocked,
.coding-loop-status.failed {
  border-left-color: var(--red);
}

.coding-loop-status.completed {
  border-left-color: var(--green);
}

.repeated-edit-loop-panel {
  margin-top: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 10px;
}

.repeated-edit-loop-checklist {
  display: grid;
  gap: 7px;
}

.repeated-edit-loop-stage {
  border: 1px solid var(--line);
  border-left: 3px solid var(--red);
  border-radius: 7px;
  background: #151b25;
  padding: 8px;
}

.repeated-edit-loop-stage.ready {
  border-left-color: var(--green);
}

.repeated-edit-loop-stage div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.repeated-edit-loop-stage span {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.repeated-edit-loop-stage p {
  margin: 5px 0 0;
  color: var(--muted);
}

.worker-comparison {
  margin-top: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 8px;
}

.worker-compare-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 8px;
}

.worker-compare-side {
  min-width: 0;
  border: 1px solid var(--line);
  border-left: 3px solid var(--amber);
  border-radius: 7px;
  background: #151b25;
  padding: 8px;
}

.worker-compare-side.completed,
.worker-compare-side.ok {
  border-left-color: var(--green);
}

.worker-compare-side.blocked,
.worker-compare-side.failed,
.worker-compare-side.approval_required {
  border-left-color: var(--red);
}

.worker-compare-side pre {
  max-height: 220px;
  overflow: auto;
  margin: 8px 0 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  color: var(--ink);
  font-size: 12px;
}

.coding-loop-status.applied,
.coding-loop-status.testing {
  border-left-color: var(--cyan);
}

.coding-loop-status.awaiting_review,
.coding-loop-status.queued,
.coding-loop-status.planning {
  border-left-color: var(--amber);
}

.task-files {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.task-files code {
  border-radius: 5px;
  background: #10141d;
  border: 1px solid var(--line);
  color: #dbe5ec;
  padding: 3px 6px;
  font-size: 12px;
}

.dependency-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.dependency-badges span {
  border-radius: 5px;
  padding: 3px 6px;
  background: #312615;
  color: #f2cf76;
  font-size: 12px;
}

.dependency-badges span.done {
  background: #19301d;
  color: #bff0aa;
}

.snapshot-badge {
  display: inline-flex;
  width: fit-content;
  border-radius: 5px;
  background: #19301d;
  color: #bff0aa;
  padding: 3px 6px;
  margin-top: 8px;
  font-size: 12px;
}

.task-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.task-actions button {
  min-height: 32px;
  padding: 0 10px;
  font-size: 12px;
}

.gate-card {
  border-left: 4px solid var(--green);
}

.gate-card.warning {
  border-left-color: var(--amber);
}

.gate-card.failed,
.gate-card.blocked {
  border-left-color: var(--red);
}

.gate-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.gate-topline h3 {
  margin: 0;
  font-size: 15px;
  text-transform: capitalize;
}

.gate-evidence {
  margin-top: 9px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  padding: 9px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  max-height: 180px;
  overflow: auto;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 12px;
}

.command-card {
  border-left: 4px solid var(--teal);
}

.command-card.failed,
.command-card.timeout,
.command-card.canceled {
  border-left-color: var(--red);
}

.command-card.queued,
.command-card.running {
  border-left-color: var(--amber);
}

.edit-plan-card {
  border-left-color: var(--green-dark);
}

.edit-plan-card.risk-high {
  border-left-color: var(--red);
}

.edit-plan-card.risk-medium,
.edit-plan-card.risk-unknown {
  border-left-color: var(--amber);
}

.edit-plan-batch-review {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 0 12px 12px;
}

.edit-plan-batch-summary,
.edit-plan-batch-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.edit-plan-batch-summary span {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #151b25;
  color: var(--muted);
  padding: 4px 8px;
  font-size: 12px;
  font-weight: 700;
}

.edit-plan-batch-actions button {
  min-height: 34px;
  padding: 0 10px;
  font-size: 12px;
}

.edit-plan-batch-actions button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.edit-plan-batch-note {
  margin-top: 9px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.edit-plan-review-table-wrap {
  margin-top: 10px;
  border: 1px solid var(--line);
  border-radius: 7px;
  overflow: auto;
}

.edit-plan-review-table {
  width: 100%;
  min-width: 760px;
  border-collapse: collapse;
  font-size: 12px;
}

.edit-plan-review-table th,
.edit-plan-review-table td {
  padding: 8px 9px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: top;
}

.edit-plan-review-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #151b25;
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.edit-plan-review-table td:first-child,
.edit-plan-review-table th:first-child {
  width: 52px;
  text-align: center;
}

.edit-plan-review-table input {
  width: 16px;
  height: 16px;
  accent-color: var(--green-dark);
}

.edit-plan-review-table strong,
.edit-plan-review-table small {
  display: block;
  overflow-wrap: anywhere;
}

.edit-plan-review-table small {
  margin-top: 3px;
  color: var(--muted);
}

.edit-plan-review-row.status-approved {
  background: #101c17;
}

.edit-plan-review-row.status-blocked,
.edit-plan-review-row.status-rejected,
.edit-plan-review-row.status-failed {
  background: #1f171b;
}

.edit-plan-semantic-classification {
  margin-top: 10px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  padding: 0 10px 10px;
}

.edit-plan-semantic-classification.empty {
  padding: 9px 10px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.edit-plan-semantic-classification.risk-high {
  border-color: #713333;
  background: #21181d;
}

.edit-plan-semantic-classification.risk-medium {
  border-color: #6d5520;
  background: #211d14;
}

.edit-plan-semantic-classification.risk-low {
  border-color: #315b36;
  background: #14251a;
}

.edit-plan-semantic-tags,
.edit-plan-semantic-files {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 8px;
}

.edit-plan-semantic-tags span,
.edit-plan-semantic-files span {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #151b25;
  color: var(--muted);
  padding: 4px 8px;
  font-size: 12px;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.edit-plan-semantic-files span {
  border-radius: 7px;
}

.edit-plan-semantic-files b {
  color: var(--ink);
}

.edit-plan-facts {
  grid-template-columns: repeat(3, minmax(88px, 1fr));
}

.edit-plan-reason {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  padding: 9px;
  margin-top: 10px;
}

.edit-plan-reason p {
  margin: 5px 0 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.edit-plan-lifecycle {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 7px;
  margin-top: 10px;
}

.edit-plan-lifecycle-stage {
  min-width: 0;
  border: 1px solid var(--line);
  border-left: 3px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  padding: 7px 8px;
  display: grid;
  gap: 3px;
}

.edit-plan-lifecycle-stage.ready {
  border-left-color: var(--green);
}

.edit-plan-lifecycle-stage.armed {
  border-left-color: var(--amber);
  background: #211d14;
}

.edit-plan-lifecycle-stage.blocked,
.edit-plan-lifecycle-stage.failed {
  border-left-color: var(--red);
  background: #21181d;
}

.edit-plan-lifecycle-stage.locked,
.edit-plan-lifecycle-stage.waiting,
.edit-plan-lifecycle-stage.missing {
  opacity: 0.82;
}

.edit-plan-lifecycle-stage span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.edit-plan-lifecycle-stage strong {
  font-size: 13px;
  overflow-wrap: anywhere;
}

.edit-plan-lifecycle-stage small {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.edit-plan-action-groups {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
  margin-top: 10px;
}

.edit-plan-action-group {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  padding: 8px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 7px;
}

.edit-plan-action-group.preview {
  border-left: 3px solid var(--teal);
}

.edit-plan-action-group.approval {
  border-left: 3px solid var(--amber);
}

.edit-plan-action-group.apply {
  border-left: 3px solid var(--red);
}

.edit-plan-action-group > strong {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.edit-plan-action-group button,
.edit-plan-actions {
  display: grid;
}

.edit-plan-action-group button,
.edit-plan-actions button {
  min-height: 36px;
  padding: 0 10px;
  white-space: normal;
  line-height: 1.2;
}

.edit-plan-action-group button:disabled,
.edit-plan-actions button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.edit-plan-verification {
  margin-top: 10px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  padding: 0 10px 10px;
}

.edit-plan-verification-controls {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr);
  gap: 10px;
  align-items: end;
  margin-top: 8px;
}

.edit-plan-run-plan {
  display: grid;
  gap: 4px;
  margin-top: 8px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #151b25;
  padding: 8px;
}

.edit-plan-run-plan span,
.edit-plan-run-plan small {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.edit-plan-run-plan-commands {
  max-height: 96px;
  margin-top: 8px;
}

.edit-plan-recovery-panel {
  margin-top: 8px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--amber);
  border-radius: 7px;
  background: #151b25;
  padding: 0 10px 10px;
}

.edit-plan-recovery-panel.status-ready {
  border-left-color: var(--green);
}

.edit-plan-recovery-panel.status-stopped,
.edit-plan-recovery-panel.status-manual {
  border-left-color: var(--red);
}

.edit-plan-recovery-panel p {
  margin: 7px 0 0;
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.edit-plan-failure-snippets {
  display: grid;
  gap: 7px;
  margin-top: 8px;
}

.edit-plan-failure-snippets article {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  padding: 8px;
}

.edit-plan-failure-snippets strong,
.edit-plan-failure-snippets span {
  display: block;
  overflow-wrap: anywhere;
}

.edit-plan-failure-snippets span {
  color: var(--muted);
  font-size: 11px;
  margin-top: 3px;
}

.edit-plan-failure-snippets pre {
  max-height: 112px;
  margin: 7px 0 0;
  overflow: auto;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  color: #f7d7d7;
  font-size: 12px;
}

.edit-plan-recovery-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 8px;
}

.edit-plan-recovery-actions button {
  min-height: 32px;
  padding: 0 10px;
  font-size: 12px;
}

.edit-plan-recovery-actions button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.inline-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.inline-toggle input {
  width: 16px;
  height: 16px;
  accent-color: var(--green-dark);
}

.inline-error {
  margin-top: 8px;
  color: var(--red);
  font-size: 12px;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.command-output.edit-plan-files {
  max-height: 130px;
}

.edit-plan-rollback-panel {
  margin-top: 10px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  padding: 0 10px 10px;
}

.edit-plan-rollback-panel.status-available {
  border-color: #315b36;
  background: #14251a;
}

.edit-plan-rollback-panel.status-restored {
  border-color: #27565a;
  background: #102327;
}

.edit-plan-rollback-panel.status-failed {
  border-color: #713333;
  background: #21181d;
}

.edit-plan-rollback-warning {
  margin-top: 7px;
  color: var(--red);
  font-size: 12px;
  font-weight: 700;
}

.edit-plan-backups-empty {
  margin-top: 8px;
  color: var(--muted);
  font-size: 12px;
}

.edit-plan-backups-list {
  display: grid;
  gap: 5px;
  list-style: none;
  margin: 8px 0 0;
  padding: 0;
}

.edit-plan-backups-list li {
  display: grid;
  grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #151b25;
  padding: 6px 8px;
  overflow-wrap: anywhere;
  font-size: 12px;
}

.edit-plan-backup-id {
  color: var(--muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.edit-plan-restored {
  margin-top: 10px;
}

.edit-plan-restored strong {
  font-size: 12px;
}

.command-output.edit-plan-diff {
  max-height: 260px;
  background: #151b17;
}

.edit-plan-diff-viewer {
  border: 1px solid #202f29;
  border-radius: 7px;
  background: #101815;
  color: #d7e3dc;
  max-height: 320px;
  overflow: auto;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 12px;
  line-height: 1.45;
}

.diff-review-summary {
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  padding: 8px 10px;
  border-bottom: 1px solid #263831;
  background: #101815;
}

.diff-review-summary span,
.diff-file-stats b {
  border-radius: 999px;
  background: #18231f;
  border: 1px solid #263831;
  padding: 2px 7px;
  font-size: 11px;
  font-weight: 700;
  color: #c7d7cf;
}

.diff-review-summary .added,
.diff-file-stats .added {
  color: #bff0aa;
  border-color: #315c38;
}

.diff-review-summary .removed,
.diff-file-stats .removed {
  color: #ffb8b8;
  border-color: #6b3434;
}

.edit-plan-diff-empty {
  padding: 10px;
  color: #9fb1a8;
}

.edit-plan-diff-file + .edit-plan-diff-file {
  border-top: 1px solid #263831;
}

.edit-plan-diff-file-name {
  position: sticky;
  top: 35px;
  z-index: 1;
  padding: 7px 10px;
  background: #18231f;
  color: #f4f8f5;
  border-bottom: 1px solid #263831;
  font-weight: 700;
  overflow-wrap: anywhere;
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}

.diff-file-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  justify-content: flex-end;
  white-space: nowrap;
}

.edit-plan-diff-lines {
  padding: 4px 0;
}

.diff-line {
  display: grid;
  grid-template-columns: 44px 44px minmax(0, 1fr);
  gap: 6px;
  min-height: 18px;
  padding: 0 10px 0 0;
  border-left: 3px solid transparent;
  white-space: pre;
}

.diff-line-num {
  color: #81958b;
  text-align: right;
  user-select: none;
  padding-right: 4px;
  border-right: 1px solid rgba(255, 255, 255, 0.06);
}

.diff-line code {
  font: inherit;
  overflow-wrap: normal;
  overflow-x: visible;
}

.edit-plan-readiness {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 10px;
}

.edit-plan-readiness span {
  display: inline-grid;
  grid-template-columns: auto auto;
  gap: 2px 6px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  padding: 6px 8px;
  font-size: 12px;
}

.edit-plan-readiness b {
  text-transform: uppercase;
  font-size: 10px;
}

.edit-plan-readiness small {
  grid-column: 1 / -1;
  color: var(--muted);
}

.edit-plan-readiness .ready {
  border-color: #315c38;
}

.edit-plan-readiness .ready b {
  color: #bff0aa;
}

.edit-plan-readiness .pending b {
  color: #f2cf76;
}

.diff-line.added {
  border-left-color: #4f9f5d;
  background: #143621;
  color: #d8f4df;
}

.diff-line.removed {
  border-left-color: #c75252;
  background: #3a1919;
  color: #f7d7d7;
}

.diff-line.context {
  border-left-color: #46584f;
  background: #111a17;
  color: #c5d1cb;
}

.diff-line.meta {
  border-left-color: #6f8178;
  background: #1b2723;
  color: #b7c8bf;
}

.diff-line.hunk {
  border-left-color: #3f88a4;
  background: #142932;
  color: #cfeaf4;
}

.command-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.command-actions button {
  min-height: 32px;
  padding: 0 10px;
  font-size: 12px;
}

.safe-output-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 10px;
  color: var(--muted);
  font-size: 12px;
}

.safe-output-header strong {
  color: var(--ink);
}

.command-output.safe-output-preview {
  margin-top: 5px;
  max-height: 190px;
  background: #151b17;
  line-height: 1.5;
  tab-size: 2;
}

.safe-output-streams {
  margin-top: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 8px;
}

.safe-output-streams summary {
  cursor: pointer;
  color: var(--ink);
  font-weight: 700;
}

.safe-stream-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 8px;
}

.safe-output-full {
  min-height: 120px;
  max-height: 340px;
  margin-top: 5px;
  background: #111722;
  line-height: 1.5;
  tab-size: 2;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.safe-output-full.stderr {
  background: #21181d;
}

.safe-stream-events {
  margin-top: 10px;
  display: grid;
  gap: 7px;
}

.safe-stream-event {
  border: 1px solid var(--line);
  border-left: 3px solid var(--teal);
  border-radius: 7px;
  background: #151b25;
  padding: 7px;
}

.safe-stream-event.stderr {
  border-left-color: var(--red);
}

.safe-stream-event span {
  display: block;
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.safe-stream-event code {
  display: block;
  margin-top: 4px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  color: var(--ink);
}

.safe-command-panel {
  margin-top: 16px;
  border-top: 1px solid var(--line);
  padding-top: 14px;
  display: grid;
  gap: 10px;
}

.slash-command-panel {
  margin-top: 16px;
  border-top: 1px solid var(--line);
  padding-top: 14px;
  display: grid;
  gap: 10px;
}

.safe-allowlist-builder {
  margin-top: 12px;
  border-top: 1px solid var(--line);
  padding-top: 12px;
}

.safe-command-profile-panel {
  margin-top: 12px;
  border-top: 1px solid var(--line);
  padding-top: 12px;
  display: grid;
  gap: 8px;
}

.safe-command-profile-panel .split {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.safe-command-profile-panel button {
  min-height: 32px;
}

.safe-allow-review {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.safe-allow-review-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--amber);
  border-radius: 8px;
  background: #151b25;
  padding: 9px;
}

.safe-allow-review-card.low {
  border-left-color: var(--green);
}

.safe-allow-review-card.blocked,
.safe-allow-review-card.high {
  border-left-color: var(--red);
}

.safe-allow-review-card strong,
.safe-allow-review-card span,
.safe-allow-review-card p {
  overflow-wrap: anywhere;
}

.safe-allow-review-card span,
.safe-allow-review-card p {
  color: var(--muted);
  font-size: 12px;
}

.safe-allow-review-card p {
  grid-column: 1 / -1;
  margin: 0;
}

.slash-command-list {
  display: grid;
  gap: 8px;
}

.slash-command-card {
  display: grid;
  grid-template-columns: minmax(92px, 0.35fr) minmax(140px, 1fr) auto;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px;
  background: #151b25;
}

.slash-command-token {
  color: var(--green);
  font-weight: 750;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  overflow-wrap: anywhere;
}

.slash-command-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.slash-command-copy span,
.slash-command-copy small {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.slash-command-card button {
  min-height: 32px;
  padding: 0 10px;
  white-space: nowrap;
}

.safe-command-list {
  display: grid;
  gap: 8px;
  max-height: 330px;
  overflow: auto;
}

.safe-command-button {
  height: auto;
  min-height: 54px;
  display: grid;
  gap: 3px;
  text-align: left;
  justify-items: start;
  background: #151b25;
  color: var(--ink);
  border: 1px solid var(--line);
  padding: 9px;
}

.safe-command-button:hover {
  background: #1c2430;
  border-color: var(--teal);
}

.safe-command-button span {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.auto-test-panel {
  margin-top: 16px;
  border-top: 1px solid var(--line);
  padding-top: 14px;
  display: grid;
  gap: 10px;
}

.auto-test-panel .command-output {
  max-height: 120px;
}

.chat-autopilot-panel {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #111820;
  padding: 14px;
  display: grid;
  gap: 12px;
}

.chat-autopilot-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.chat-autopilot-topline div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.chat-autopilot-topline span,
.chat-autopilot-item span,
.chat-autopilot-blockers span {
  color: var(--muted);
  overflow-wrap: anywhere;
}

.chat-autopilot-meter {
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #1d2632;
}

.chat-autopilot-meter span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--teal), #79d3a6);
}

.chat-autopilot-facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 8px;
  margin: 0;
}

.chat-autopilot-facts div {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #151d27;
  padding: 8px;
  min-width: 0;
}

.chat-autopilot-facts dt {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.chat-autopilot-facts dd {
  margin: 3px 0 0;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.chat-autopilot-items {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 8px;
}

.chat-autopilot-item {
  border: 1px solid var(--line);
  border-left: 3px solid var(--muted);
  border-radius: 8px;
  background: #151d27;
  padding: 9px;
  min-width: 0;
  display: grid;
  gap: 4px;
}

.chat-autopilot-item.ready {
  border-left-color: var(--green);
}

.chat-autopilot-item.paused {
  border-left-color: var(--yellow);
}

.chat-autopilot-item.blocked,
.chat-autopilot-item.needs_attention {
  border-left-color: var(--red);
}

.chat-autopilot-blockers {
  display: grid;
  gap: 6px;
  border-top: 1px solid var(--line);
  padding-top: 10px;
}

.spark-prompt-panel {
  display: grid;
  gap: 8px;
  margin: 14px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  padding: 12px 0;
}

.spark-prompt-panel .command-output {
  max-height: 220px;
}

.codex-approval-card {
  border: 1px solid #713333;
  border-left: 4px solid var(--red);
  border-radius: 8px;
  background: #21181d;
  padding: 12px;
  display: grid;
  gap: 12px;
}

.codex-approval-card[hidden] {
  display: none;
}

.approval-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.approval-topline h4 {
  margin: 0;
  font-size: 15px;
}

.approval-topline p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.4;
}

.approval-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.approval-facts div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #151b25;
  padding: 8px;
}

.approval-facts dd {
  margin-top: 3px;
  max-height: 92px;
  overflow: auto;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 12px;
  line-height: 1.4;
}

.approval-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.approval-actions button {
  min-height: 34px;
  padding: 0 11px;
  font-size: 13px;
}

.spark-grid,
.spark-lower-grid {
  display: grid;
  grid-template-columns: minmax(280px, 0.9fr) minmax(0, 1.4fr);
  gap: 14px;
  padding: 14px;
  min-height: 0;
}

.spark-grid {
  padding-bottom: 0;
}

.spark-lower-grid {
  flex: 1;
  overflow: hidden;
}

.spark-lower-grid > .subpanel {
  overflow: auto;
}

.local-brain-panel {
  border-bottom: 0;
  padding-bottom: 0;
}

.local-brain-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.local-brain-actions button {
  min-height: 42px;
  white-space: normal;
  line-height: 1.2;
}

.knowledge-search-form {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(120px, 0.75fr) minmax(130px, 0.85fr);
  gap: 8px;
}

.knowledge-search-form button {
  grid-column: span 3;
}

.memory-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.memory-summary-card {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #151b25;
  padding: 9px;
  display: grid;
  gap: 3px;
}

.memory-summary-card span,
.memory-summary-card small {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.memory-summary-card strong {
  font-size: 22px;
  line-height: 1.1;
}

.agent-observation-memory-panel {
  margin: 12px 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 10px;
}

.agent-memory-observations {
  display: grid;
  gap: 7px;
  margin-top: 8px;
}

.agent-memory-observation {
  border: 1px solid var(--line);
  border-left: 3px solid var(--teal);
  border-radius: 7px;
  background: #151b25;
  padding: 8px;
}

.agent-memory-observation div {
  display: grid;
  gap: 2px;
}

.agent-memory-observation span {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.agent-memory-observation p {
  margin: 5px 0 0;
  color: var(--muted);
  overflow-wrap: anywhere;
}

.memory-lists {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.memory-lists section {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 9px;
}

.memory-list-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 7px;
  font-size: 13px;
}

.memory-list-header span {
  border-radius: 999px;
  background: #102b2d;
  color: #9ce7df;
  padding: 3px 7px;
  font-size: 12px;
}

.memory-list {
  display: grid;
  gap: 6px;
  max-height: 148px;
  overflow: auto;
}

.memory-list article {
  border-top: 1px solid var(--line);
  padding-top: 6px;
}

.memory-list article:first-child {
  border-top: 0;
  padding-top: 0;
}

.memory-list strong,
.memory-list span {
  display: block;
  overflow-wrap: anywhere;
}

.memory-list span {
  color: var(--muted);
  font-size: 12px;
  margin-top: 2px;
}

.memory-list p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.keyword-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-height: 24px;
}

.keyword-chips span {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #151b25;
  color: var(--muted);
  padding: 4px 8px;
  font-size: 12px;
}

.local-queue-status {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #10141d;
  color: var(--muted);
  padding: 9px;
  font-size: 12px;
}

.local-queue-list,
.brain-summary-list,
.knowledge-results {
  display: grid;
  gap: 8px;
  max-height: 240px;
  overflow: auto;
}

.local-job,
.brain-summary,
.knowledge-result {
  border: 1px solid var(--line);
  border-left: 4px solid var(--amber);
  border-radius: 8px;
  background: #151b25;
  padding: 10px;
}

.knowledge-result {
  border-left-color: var(--teal);
}

.knowledge-result-top {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: start;
}

.knowledge-result-top strong {
  overflow-wrap: anywhere;
}

.knowledge-result p {
  margin: 8px 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  line-height: 1.45;
  font-size: 13px;
}

.knowledge-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  color: var(--muted);
  font-size: 12px;
}

.local-job.running {
  border-left-color: var(--teal);
}

.local-job.completed,
.brain-summary.context {
  border-left-color: var(--green-dark);
}

.local-job.failed {
  border-left-color: var(--red);
}

.brain-summary.attachments {
  border-left-color: var(--teal);
}

.brain-summary.logs {
  border-left-color: var(--amber);
}

.brain-summary p {
  margin-top: 6px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  line-height: 1.45;
  font-size: 13px;
}

.subpanel-header.compact {
  min-height: 34px;
  margin-top: 4px;
}

.spark-models,
.recommended-models {
  display: grid;
  gap: 8px;
}

.mona-routing-panel,
.mona-setup-panel,
.improvement-scout-panel,
.automation-policy-panel {
  display: grid;
  gap: 9px;
  margin: 12px 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 10px;
}

.coding-brain-card,
.fallback-pressure-card,
.codex-grade-loop-card {
  display: grid;
  gap: 8px;
  border: 1px solid rgba(105, 213, 118, 0.28);
  border-radius: 8px;
  background: #121a22;
  padding: 10px;
}

.fallback-pressure-card {
  border-color: rgba(245, 166, 35, 0.34);
}

.codex-grade-loop-card {
  border-color: rgba(111, 211, 245, 0.34);
}

.codex-grade-loop-checklist {
  display: grid;
  gap: 7px;
}

.codex-grade-loop-stage {
  border: 1px solid var(--line);
  border-left: 3px solid var(--red);
  border-radius: 7px;
  background: #151b25;
  padding: 8px;
}

.codex-grade-loop-stage.ready {
  border-left-color: var(--green);
}

.codex-grade-loop-stage div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.codex-grade-loop-stage span {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.codex-grade-loop-stage p {
  margin: 5px 0 0;
  color: var(--muted);
}

.fallback-pressure-actions {
  display: grid;
  gap: 7px;
}

.fallback-pressure-action {
  border: 1px solid var(--line);
  border-left: 3px solid var(--amber);
  border-radius: 7px;
  background: #151b25;
  padding: 8px;
}

.fallback-pressure-action div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.fallback-pressure-action span {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.fallback-pressure-action p {
  margin: 5px 0 0;
  color: var(--muted);
}

.process-sandbox-status {
  display: grid;
  gap: 6px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--amber);
  border-radius: 8px;
  background: #10141d;
  padding: 9px;
  font-size: 12px;
}

.process-sandbox-status div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}

.process-sandbox-status strong {
  color: var(--ink);
}

.process-sandbox-status span,
.process-sandbox-status p {
  margin: 0;
  color: var(--muted);
  overflow-wrap: anywhere;
}

.process-sandbox-status.active {
  border-left-color: var(--green);
}

.process-sandbox-status.degraded {
  border-left-color: var(--amber);
}

.process-sandbox-status.blocked,
.process-sandbox-status.missing {
  border-left-color: var(--red);
}

.route-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.mona-routing-panel button,
.mona-setup-panel button,
.automation-policy-panel button {
  justify-self: start;
}

.automation-policy-panel h3 {
  font-size: 15px;
}

.model-row,
.recommended-models div {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #151b25;
  padding: 9px;
}

.model-row {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.recommended-models span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  margin-top: 3px;
}

.command-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.command-topline h3 {
  margin: 0;
  font-size: 14px;
  line-height: 1.35;
  overflow-wrap: anywhere;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.command-facts {
  display: grid;
  gap: 6px;
  margin-top: 10px;
}

.command-facts div {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 10px;
}

.command-output {
  margin: 10px 0 0;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #111613;
  color: #f7faf2;
  padding: 10px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  max-height: 260px;
  overflow: auto;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 12px;
}

.stack-form {
  display: grid;
  gap: 10px;
}

.split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.schedule-facts,
.facts {
  display: grid;
  gap: 8px;
}

.schedule-facts div,
.facts div {
  display: grid;
  grid-template-columns: 106px minmax(0, 1fr);
  gap: 10px;
}

dt {
  color: var(--muted);
  font-size: 12px;
}

dd {
  overflow-wrap: anywhere;
}

.schedule-actions,
.action-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.schedule-calendar-panel {
  margin-bottom: 16px;
}

.calendar-nav {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.schedule-calendar {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 6px;
}

.schedule-calendar-weekday {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  text-align: center;
}

.schedule-calendar-day {
  min-height: 104px;
  border: 1px solid var(--border);
  background: var(--panel-soft);
  color: var(--text);
  border-radius: 8px;
  padding: 8px;
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 6px;
  text-align: left;
  overflow: hidden;
}

.schedule-calendar-day.outside {
  opacity: 0.52;
}

.schedule-calendar-day.today {
  border-color: var(--accent);
  box-shadow: inset 0 0 0 1px var(--accent);
}

.calendar-day-number {
  font-size: 12px;
  font-weight: 700;
}

.calendar-day-items {
  display: grid;
  align-content: start;
  gap: 4px;
  min-width: 0;
}

.calendar-job,
.calendar-more {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  border-radius: 6px;
  padding: 3px 5px;
  font-size: 11px;
  line-height: 1.2;
  background: var(--panel);
  border: 1px solid var(--border);
}

.calendar-job.active {
  border-color: var(--accent);
}

.calendar-job.completed {
  opacity: 0.78;
}

.calendar-job.paused {
  border-style: dashed;
}

.calendar-more {
  color: var(--muted);
}

details {
  margin-top: 10px;
}

summary {
  cursor: pointer;
  color: var(--muted);
  font-size: 13px;
}

.history-list {
  margin-top: 10px;
  display: grid;
  gap: 8px;
}

.history-item {
  border-top: 1px solid var(--line);
  padding-top: 8px;
}

.history-item span {
  color: var(--muted);
  font-size: 12px;
  margin-left: 6px;
}

.history-item p {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin-top: 4px;
}

.empty {
  color: var(--muted);
  font-size: 13px;
}

@media (max-width: 920px) {
  .app-shell {
    grid-template-columns: 1fr;
    background: var(--bg);
  }

  .sidebar {
    position: sticky;
    top: 0;
    z-index: 10;
    background: var(--rail);
  }

  .nav-tabs {
    grid-template-columns: repeat(2, 1fr);
  }

  .workspace {
    padding: 12px;
  }

  .view {
    height: calc(100vh - 246px);
    min-height: 620px;
  }

  .composer,
  .tools,
  .task-grid,
  .code-agent-grid,
  .code-workspace-grid,
  .locks-grid,
  .snapshots-grid,
  .gate-grid,
  .terminal-grid,
  .explorer-grid,
  .diff-grid,
  .isolation-grid,
  .pipeline-grid,
  .spark-grid,
  .spark-lower-grid,
  .schedule-grid,
  .settings-grid {
    grid-template-columns: 1fr;
  }

  .schedule-calendar {
    gap: 4px;
  }

  .schedule-calendar-day {
    min-height: 78px;
    padding: 5px;
  }

  .calendar-job,
  .calendar-more {
    font-size: 10px;
    padding: 2px 4px;
  }

  .diff-grid {
    grid-template-rows: none;
    overflow: auto;
  }

  .diff-summary-panel,
  .diff-output-panel,
  .code-command-panel,
  .code-agent-runs-panel,
  .advanced-tools-panel,
  .review-detail-panel {
    grid-column: auto;
    grid-row: auto;
  }

  .live-log-row {
    grid-template-columns: 62px minmax(0, 1fr);
  }

  .live-log-row strong,
  .live-log-row p {
    grid-column: 1 / -1;
  }

  .task-board {
    grid-template-columns: 1fr;
  }

  .task-graph-row {
    grid-template-columns: 1fr;
  }

  .task-graph-link {
    justify-self: start;
  }

  .pipeline-recommendation {
    grid-template-columns: 1fr;
  }

  .edit-plan-verification-controls {
    grid-template-columns: 1fr;
  }

  .edit-plan-lifecycle {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .edit-plan-action-groups {
    grid-template-columns: 1fr;
  }

  .slash-command-card {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .slash-command-card button {
    justify-self: start;
  }

  .pipeline-health {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .agents-grid {
    grid-template-columns: 1fr;
  }

  .task-filters {
    grid-template-columns: 1fr;
  }

  .task-board-tools {
    grid-template-columns: 1fr;
  }

  .local-brain-actions {
    grid-template-columns: 1fr;
  }

  .edit-plan-actions,
  .edit-plan-facts {
    grid-template-columns: 1fr;
  }

  .knowledge-search-form {
    grid-template-columns: 1fr;
  }

  .knowledge-search-form button {
    grid-column: auto;
  }

  .memory-summary-grid,
  .memory-lists {
    grid-template-columns: 1fr;
  }

  .restore-preview-facts,
  .restore-file-row,
  .restore-apply-panel,
  .benchmark-facts,
  .benchmark-run-form {
    grid-template-columns: 1fr;
  }

  .approval-facts {
    grid-template-columns: 1fr;
  }

.message {
    max-width: 100%;
  }
}

.spark-local-grid {
  margin-top: 12px;
}

.spark-local-grid .facts,
.task-spark-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.benchmark-status-panel,
.capability-registry-panel,
.model-comparison-panel,
.benchmark-replay-panel,
.prompt-provenance-panel,
.guard-policy-editor,
.guard-regression-panel,
.gpu-telemetry-panel,
.vector-index-panel,
.warmup-status-panel {
  margin-top: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #10141d;
  padding: 10px;
}

.benchmark-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 10px 0;
}

.benchmark-facts div {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #151b25;
  padding: 8px;
}

.benchmark-facts dt {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.benchmark-facts dd {
  margin: 3px 0 0;
  overflow-wrap: anywhere;
  font-weight: 700;
}

.benchmark-status-panel button {
  width: 100%;
  min-height: 36px;
}

.benchmark-replay-panel button {
  width: 100%;
  min-height: 36px;
}

.benchmark-run-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}

.warmup-run-form {
  grid-template-columns: minmax(0, 1.35fr) minmax(110px, 0.65fr);
}

.benchmark-confirm,
.benchmark-run-form button {
  grid-column: 1 / -1;
}

.benchmark-run-form button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.benchmark-results {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.gpu-telemetry-facts {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.capability-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 8px 0;
}

.benchmark-result-card {
  border: 1px solid var(--line);
  border-left: 4px solid var(--amber);
  border-radius: 8px;
  background: #151b25;
  padding: 10px;
}

.benchmark-result-card.completed,
.benchmark-result-card.ok {
  border-left-color: var(--green-dark);
}

.benchmark-result-card.failed,
.benchmark-result-card.disabled {
  border-left-color: var(--red);
}

.benchmark-result-card ul {
  margin: 8px 0 0;
  padding-left: 18px;
  font-size: 12px;
}

.benchmark-trend-panel {
  margin-top: 10px;
}

.benchmark-trend-chart {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #151b25;
  margin-top: 8px;
  min-height: 180px;
  overflow: hidden;
  padding: 8px;
}

.benchmark-trend-chart svg {
  display: block;
  width: 100%;
  height: auto;
}

.benchmark-trend-chart text {
  fill: var(--muted);
  font-size: 11px;
}

.benchmark-axis {
  stroke: rgba(255, 255, 255, 0.24);
  stroke-width: 1;
}

.benchmark-target-line {
  stroke: rgba(251, 191, 36, 0.7);
  stroke-dasharray: 5 5;
  stroke-width: 1;
}

.benchmark-parity-line {
  stroke: rgba(110, 231, 183, 0.75);
  stroke-dasharray: 3 4;
  stroke-width: 1;
}

.benchmark-latency-stem {
  stroke: rgba(255, 255, 255, 0.18);
  stroke-width: 1;
}

.trend-dot-blocked {
  stroke: var(--red);
  stroke-width: 2;
}

.benchmark-trend-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}

.benchmark-trend-legend span {
  align-items: center;
  color: var(--muted);
  display: inline-flex;
  font-size: 12px;
  gap: 5px;
}

.benchmark-trend-legend i {
  border-radius: 999px;
  display: inline-block;
  height: 8px;
  width: 8px;
}

.task-spark-facts {
  margin: 10px 0;
  font-size: 12px;
}

.task-spark-facts div {
  min-width: 0;
}

.task-spark-facts dt {
  color: var(--muted);
  font-weight: 700;
}

.task-spark-facts dd {
  margin: 2px 0 0;
  overflow-wrap: anywhere;
}


/* =====================================================================
   DOVEV-AI V2 -- Chat UI Theme (appended, do not remove above styles)
   ===================================================================== */

body.chat-app {
  display:flex; flex-direction:column; height:100vh; margin:0;
  background:#0f0f11; color:#e8e8ec;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;
  font-size:14px; overflow:hidden;
}
.topbar {
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 18px; background:#18181c; border-bottom:1px solid #2a2a30;
  flex-shrink:0; gap:12px; z-index:10;
}
.topbar-brand { display:flex; align-items:center; gap:8px; }
.topbar-logo  { width:26px; height:26px; }
.topbar-name  { font-weight:700; font-size:15px; }
.topbar-sub   { color:#555; font-size:12px; }
.topbar-status{ display:flex; align-items:center; gap:8px; }
.status-chip  { font-size:11px; padding:3px 9px; border-radius:99px;
  background:#222228; color:#888; border:1px solid #2e2e36; white-space:nowrap; }
.chip-on      { background:#182818; color:#6ec66e; border-color:#2b4a2b; }
.chip-off     { background:#1e1e26; color:#666; }
.icon-btn     { background:none; border:none; color:#666; cursor:pointer;
  font-size:17px; padding:4px 7px; border-radius:7px; line-height:1; }
.icon-btn:hover { color:#bbb; background:#24242c; }

.chat-main {
  flex:1; display:flex; flex-direction:column; overflow:hidden;
  max-width:860px; width:100%; margin:0 auto; padding:0 16px; box-sizing:border-box;
}
.chat-messages {
  flex:1; overflow-y:auto; padding:20px 0 10px;
  display:flex; flex-direction:column; gap:14px; scroll-behavior:smooth;
}
.chat-messages::-webkit-scrollbar { width:5px; }
.chat-messages::-webkit-scrollbar-thumb { background:#2a2a30; border-radius:3px; }

.cmsg { display:flex; gap:10px; align-items:flex-start;
  animation:pop .15s ease; max-width:100%; }
@keyframes pop { from{opacity:0;transform:translateY(5px)} to{opacity:1} }
.cmsg.user { flex-direction:row-reverse; }
.cmsg.pending .body { opacity:.82; }
.cmsg.pending .meta span:last-child { color:#7f86ff; }
.avatar {
  width:30px; height:30px; border-radius:50%; background:#222228;
  display:flex; align-items:center; justify-content:center;
  font-size:15px; flex-shrink:0;
}
.cmsg.user .avatar { background:#1b2d40; }
.bubble { flex:1; min-width:0; max-width:100%; }
.body {
  background:#1c1c22; border:1px solid #28282e; border-radius:12px;
  padding:10px 14px; line-height:1.6; word-break:break-word;
}
.cmsg.user .body { background:#192740; border-color:#1e3050; }
.body p { margin:0 0 7px; }
.body p:last-child { margin:0; }
.body h2,.body h3,.body h4 { margin:10px 0 3px; color:#c8c8d4; font-size:13px; }
.body ul,.body ol { padding-left:18px; margin:4px 0; }
.body li  { margin:2px 0; }
.body hr  { border:none; border-top:1px solid #2a2a30; margin:8px 0; }
.body a   { color:#6b9eff; }
.body blockquote { border-left:3px solid #3a3a4a; margin:4px 0; padding:2px 10px; color:#888; }
.code-block {
  background:#0c0c10; border:1px solid #24242c; border-radius:8px;
  padding:10px 12px; overflow-x:auto; white-space:pre;
  font-family:"JetBrains Mono","Fira Code",Consolas,monospace;
  font-size:12.5px; line-height:1.5; margin:6px 0;
}
.ic { background:#24242c; padding:1px 5px; border-radius:4px;
  font-family:monospace; font-size:12px; }
.meta { display:flex; gap:8px; margin-top:5px; font-size:11px; color:#444; flex-wrap:wrap; }
.meta span { color:#555; }
.model-tag { background:#1e1e2a; padding:1px 6px; border-radius:4px;
  color:#666; font-size:10px; }

.thinking-bar {
  display:flex; align-items:center; gap:8px; padding:7px 14px;
  font-size:12px; color:#666; flex-shrink:0;
}
.thinking-dots { display:flex; gap:4px; }
.thinking-dots span { width:6px; height:6px; border-radius:50%; background:#444;
  animation:blink 1.2s infinite; }
.thinking-dots span:nth-child(2) { animation-delay:.2s; }
.thinking-dots span:nth-child(3) { animation-delay:.4s; }
@keyframes blink { 0%,80%,100%{opacity:.25} 40%{opacity:1} }

.automation-strip {
  display:flex; align-items:center; gap:6px; flex-wrap:wrap;
  padding:0 14px 8px; color:#6f7280; font-size:11px; flex-shrink:0;
}
.automation-strip span {
  max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
  border:1px solid #282832; background:#17171d; border-radius:999px;
  padding:3px 8px;
}

.chat-composer { padding:10px 0 14px; flex-shrink:0; }
.composer-box {
  display:flex; align-items:flex-end; gap:6px;
  background:#1c1c22; border:1px solid #2a2a30; border-radius:14px;
  padding:8px 8px 8px 14px; transition:border-color .15s;
}
.composer-box:focus-within { border-color:#4a4a62; }
#chatInput {
  flex:1; background:none; border:none; outline:none;
  color:#e8e8ec; font-size:14px; line-height:1.5; resize:none;
  max-height:180px; overflow-y:auto; font-family:inherit;
}
#chatInput::placeholder { color:#3a3a48; }
#chatInput:disabled { opacity:.5; }
.composer-actions { display:flex; align-items:flex-end; gap:4px; }
.attach-btn { width:32px; height:32px; display:flex; align-items:center;
  justify-content:center; cursor:pointer; color:#444;
  border-radius:8px; font-size:16px; }
.attach-btn:hover { color:#888; }
.send-btn {
  width:34px; height:34px; border-radius:10px; background:#4a5eff;
  border:none; cursor:pointer; display:flex; align-items:center;
  justify-content:center; color:#fff; flex-shrink:0; transition:background .15s;
}
.send-btn:hover:not(:disabled) { background:#5a6eff; }
.send-btn:disabled { background:#252540; opacity:.5; cursor:not-allowed; }
.attach-preview { display:flex; flex-wrap:wrap; gap:5px; margin-top:5px; }
.chip { font-size:11px; padding:3px 8px; border-radius:99px;
  background:#222228; color:#777; border:1px solid #2e2e36; }

.settings-drawer {
  position:fixed; top:0; right:0; bottom:0; width:290px;
  background:#18181c; border-left:1px solid #2a2a30;
  z-index:50; overflow-y:auto; padding:16px;
  display:flex; flex-direction:column; gap:0;
}
.settings-drawer[hidden] {
  display:none !important;
}
.drawer-header { display:flex; align-items:center;
  justify-content:space-between; margin-bottom:18px; }
.drawer-header strong { font-size:14px; }
.drawer-section { margin-bottom:18px; }
.drawer-label { display:block; font-size:10px; text-transform:uppercase;
  letter-spacing:.07em; color:#444; margin-bottom:5px; }
.drawer-select,.drawer-btn {
  width:100%; padding:7px 10px; border-radius:8px;
  background:#222228; border:1px solid #2e2e36; color:#ccc;
  font-size:13px; cursor:pointer; box-sizing:border-box;
}
.drawer-btn { text-align:left; transition:background .12s; }
.drawer-btn:hover { background:#28282e; }
.coding-cancel-btn { margin-top:7px; border-color:#42252a; color:#e29ca3; }
.coding-cancel-btn:disabled { opacity:.45; cursor:not-allowed; color:#666; border-color:#2e2e36; }
.drawer-status { font-size:12px; color:#555; margin-bottom:6px; line-height:1.4; }
.drawer-links { display:flex; flex-direction:column; gap:4px; }
.drawer-links a { font-size:12px; color:#6b9eff; text-decoration:none; }
.drawer-links a:hover { text-decoration:underline; }

.coding-mode-panel { border-top:1px solid #24242c; padding-top:14px; }
.coding-task-input {
  width:100%; min-height:86px; resize:vertical; box-sizing:border-box;
  background:#111116; border:1px solid #2e2e36; border-radius:8px;
  color:#e8e8ec; font:inherit; font-size:12px; line-height:1.45;
  padding:8px 9px; outline:none;
}
.coding-task-input:focus { border-color:#4a4a62; }
.coding-options {
  display:flex; flex-wrap:wrap; gap:8px; margin:8px 0;
  color:#777; font-size:12px;
}
.coding-options label { display:flex; align-items:center; gap:4px; }
.coding-grid { display:grid; grid-template-columns:1fr; gap:7px; margin-bottom:8px; }
.coding-grid label { color:#666; font-size:11px; display:flex; flex-direction:column; gap:3px; }
.coding-grid input {
  width:100%; box-sizing:border-box; background:#111116; border:1px solid #2e2e36;
  border-radius:7px; color:#ccc; font-size:12px; padding:6px 8px;
}
.coding-output {
  margin-top:8px; color:#777; font-size:11px; line-height:1.45;
  overflow-wrap:anywhere;
}
.coding-history-note {
  color:#555; font-size:10.5px; line-height:1.35; margin:8px 0;
}
.coding-job-history { display:flex; flex-direction:column; gap:6px; margin-top:8px; }
.coding-history-item {
  background:#111116; border:1px solid #24242c; border-radius:7px;
  color:#aaa; cursor:pointer; display:flex; flex-direction:column; gap:3px;
  padding:7px 8px; text-align:left; width:100%;
}
.coding-history-item:hover { border-color:#3a3a48; background:#17171d; }
.coding-history-item span { font-size:11px; color:#c4c6d0; }
.coding-history-item small {
  color:#676b78; display:block; font-size:10px; overflow:hidden;
  text-overflow:ellipsis; white-space:nowrap;
}
.coding-verdict {
  margin-top:8px; padding:6px 8px; border:1px solid #2e2e36;
  border-radius:7px; color:#aaa; font-size:11px; background:#15151a;
}
.coding-approval-card {
  margin-top:8px; padding:8px; border:1px solid #55451c;
  border-radius:8px; background:#17150f; color:#d8c370; font-size:11px;
}
.coding-approval-card[hidden] { display:none; }
.source-readiness-panel { border-top:1px solid #24242c; }
.source-readiness-list {
  margin:8px 0 0; padding-left:18px; color:#777; font-size:11px;
  line-height:1.45;
}
.coding-approval-actions {
  display:grid; grid-template-columns:1fr 1fr; gap:7px; margin-top:8px;
}
.verdict-pass { border-color:#26442e; color:#72c983; }
.verdict-caution { border-color:#53441c; color:#e1c566; }
.verdict-fail { border-color:#53242a; color:#f28a94; }
.coding-diff {
  max-height:180px; overflow:auto; white-space:pre-wrap; word-break:break-word;
  background:#0c0c10; border:1px solid #24242c; border-radius:8px;
  color:#8d91a0; font:11px/1.45 "JetBrains Mono","Fira Code",Consolas,monospace;
  margin:8px 0 0; padding:8px;
}
.inline-job-card {
  margin-top:10px;
  border:1px solid #2b3441;
  border-radius:8px;
  background:#101419;
  padding:10px;
  color:#c8d0dc;
  font-size:12px;
}
.inline-job-topline {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}
.inline-job-status {
  border:1px solid #3b4756;
  border-radius:999px;
  padding:2px 7px;
  color:#9fc0e8;
}
.inline-job-stream {
  color:#9fc0e8;
}
.inline-job-grid {
  display:grid;
  grid-template-columns:max-content minmax(0, 1fr);
  gap:5px 10px;
}
.inline-job-grid span {
  color:#778291;
}
.inline-job-grid b {
  font-weight:500;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.inline-job-diff {
  max-height:120px;
  overflow:auto;
  white-space:pre-wrap;
  word-break:break-word;
  background:#0b0d10;
  border:1px solid #242c36;
  border-radius:7px;
  color:#8793a3;
  font:11px/1.45 "JetBrains Mono","Fira Code",Consolas,monospace;
  margin:8px 0 0;
  padding:8px;
}
.inline-evidence-transitions {
  margin-top:8px;
  border:1px solid #26303b;
  border-radius:7px;
  background:#0d1116;
  padding:8px;
}
.inline-evidence-summary {
  display:grid;
  grid-template-columns:max-content max-content minmax(0, 1fr) max-content;
  align-items:center;
  gap:8px;
}
.inline-evidence-summary strong {
  color:#d5dde8;
}
.inline-evidence-count {
  color:#9fc0e8;
  border:1px solid #334152;
  border-radius:999px;
  padding:1px 7px;
}
.inline-evidence-last {
  color:#8793a3;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.inline-evidence-toggle {
  min-height:28px;
  padding:3px 8px;
  background:#151b22;
  border:1px solid #3b4756;
  color:#c8d0dc;
}
.inline-evidence-list {
  margin:8px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:5px;
}
.inline-evidence-list[hidden] { display:none; }
.inline-evidence-list li {
  display:grid;
  grid-template-columns:minmax(130px, max-content) minmax(0, 1fr);
  gap:8px;
  padding:5px 6px;
  border-radius:6px;
  background:#111821;
}
.inline-evidence-list span { color:#9aa6b2; }
.inline-evidence-list b {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#d5dde8;
  font-weight:500;
}
.transition-ok { border-left:3px solid var(--green); }
.transition-warn { border-left:3px solid var(--amber); }
.transition-danger { border-left:3px solid var(--red); }
.transition-muted { border-left:3px solid #3b4756; }
.inline-job-approval {
  margin-top:8px;
  border:1px solid #58461c;
  border-radius:7px;
  background:#18150d;
  color:#dac66e;
  padding:8px;
}
.inline-job-approval[hidden] { display:none; }
.inline-job-actions {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:8px;
}
.inline-job-actions button,
.inline-job-approval button {
  border:1px solid #3b4756;
  background:#151b22;
  color:#c8d0dc;
  border-radius:7px;
  padding:6px 9px;
  cursor:pointer;
}
.inline-job-actions button:disabled,
.inline-job-approval button:disabled {
  opacity:.55;
  cursor:not-allowed;
}
.inline-job-cli,
.inline-job-audit {
  margin-top:7px;
  color:#778291;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* Phase 40 futuristic Agent Cockpit */
.chat-app {
  --cockpit-bg:#070a12;
  --cockpit-panel:rgba(14, 19, 32, .82);
  --cockpit-panel-strong:rgba(20, 28, 46, .94);
  --cockpit-border:rgba(116, 139, 178, .24);
  --cockpit-text:#eef5ff;
  --cockpit-secondary:#9fb0c7;
  --cockpit-muted:#66758e;
  --accent-blue:#5da7ff;
  --accent-purple:#9b7cff;
  --accent-cyan:#43e7ff;
  --success:#66e5a3;
  --warning:#ffd166;
  --danger:#ff6b7a;
  --glow:0 0 32px rgba(67, 231, 255, .12), 0 18px 70px rgba(0, 0, 0, .44);
  background:
    radial-gradient(circle at 20% 0%, rgba(93, 167, 255, .14), transparent 34%),
    radial-gradient(circle at 90% 12%, rgba(155, 124, 255, .12), transparent 30%),
    #070a12;
}

.topbar {
  background:linear-gradient(180deg, rgba(11, 15, 26, .92), rgba(8, 11, 20, .78));
  border-bottom:1px solid rgba(116, 139, 178, .16);
  backdrop-filter:blur(16px);
}

.topbar-name,
.message .meta strong {
  color:var(--cockpit-text);
}

.status-chip {
  border:1px solid rgba(116, 139, 178, .24);
  background:rgba(15, 22, 37, .82);
  color:var(--cockpit-secondary);
}

.status-chip.chip-on {
  border-color:rgba(102, 229, 163, .36);
  color:#c9ffe2;
  box-shadow:0 0 24px rgba(102, 229, 163, .12);
}

.chat-main {
  background:
    linear-gradient(180deg, rgba(7, 10, 18, .1), rgba(7, 10, 18, .42)),
    radial-gradient(circle at 50% 20%, rgba(67, 231, 255, .05), transparent 32%);
}

.chat-messages {
  padding-right:12px;
}

.message {
  border-color:rgba(116, 139, 178, .18);
  background:rgba(12, 17, 29, .76);
  box-shadow:0 16px 50px rgba(0,0,0,.22);
}

.message.ai {
  border-left-color:var(--accent-cyan);
}

.composer-box {
  background:rgba(13, 18, 31, .92);
  border-color:rgba(116, 139, 178, .28);
  box-shadow:var(--glow);
}

#chatInput::placeholder {
  color:#6d7890;
}

.send-btn {
  background:linear-gradient(135deg, var(--accent-blue), var(--accent-purple));
  box-shadow:0 0 22px rgba(93, 167, 255, .28);
}

.settings-drawer.agent-cockpit {
  width:min(420px, 96vw);
  background:
    linear-gradient(180deg, rgba(9, 13, 24, .96), rgba(8, 11, 20, .98)),
    radial-gradient(circle at 20% 0%, rgba(67, 231, 255, .12), transparent 30%);
  border-left:1px solid rgba(116, 139, 178, .22);
  box-shadow:-28px 0 80px rgba(0,0,0,.42);
  color:var(--cockpit-text);
}

.cockpit-header {
  align-items:flex-start;
  padding-bottom:14px;
  border-bottom:1px solid rgba(116, 139, 178, .16);
}

.cockpit-header strong {
  display:block;
  font-size:20px;
}

.cockpit-header p,
.cockpit-eyebrow {
  color:var(--cockpit-secondary);
  font-size:12px;
}

.cockpit-eyebrow {
  text-transform:uppercase;
  letter-spacing:.12em;
}

.drawer-label {
  color:#8190aa;
  letter-spacing:.13em;
}

.drawer-section {
  border:1px solid rgba(116, 139, 178, .14);
  border-radius:12px;
  background:rgba(12, 18, 31, .46);
  padding:12px;
}

.cockpit-status-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  padding:0;
  border:0;
  background:transparent;
}

.cockpit-status-card,
.inline-agent-summary article,
.source-readiness-card {
  border:1px solid rgba(116, 139, 178, .18);
  border-radius:12px;
  background:linear-gradient(180deg, rgba(18, 26, 43, .86), rgba(11, 16, 28, .84));
  padding:11px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}

.cockpit-status-card span,
.inline-agent-summary span {
  display:block;
  color:var(--cockpit-muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.cockpit-status-card strong,
.inline-agent-summary b {
  display:block;
  margin-top:5px;
  color:var(--cockpit-text);
  font-size:13px;
}

.cockpit-status-card small,
.source-readiness-card span {
  display:block;
  margin-top:4px;
  color:var(--cockpit-secondary);
  font-size:11px;
  line-height:1.35;
}

.cockpit-mission-summary {
  display:grid;
  gap:5px;
  color:var(--cockpit-secondary);
  line-height:1.45;
}

.cockpit-mission-summary strong {
  color:var(--cockpit-text);
}

.cockpit-mission-summary span {
  color:var(--cockpit-muted);
  font-size:12px;
}

.agent-stage-timeline,
.inline-agent-timeline {
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:8px;
  margin-top:12px;
}

.stage-node {
  position:relative;
  min-width:0;
  display:flex;
  align-items:center;
  gap:7px;
  border:1px solid rgba(116, 139, 178, .16);
  border-radius:999px;
  background:rgba(8, 12, 22, .72);
  color:var(--cockpit-secondary);
  padding:6px 8px;
  font-size:11px;
  white-space:nowrap;
}

.stage-node i {
  width:8px;
  height:8px;
  border-radius:50%;
  background:#39455c;
  box-shadow:0 0 0 3px rgba(116, 139, 178, .08);
  flex:0 0 auto;
}

.stage-node.active {
  border-color:rgba(67, 231, 255, .42);
  color:#d9fbff;
}

.stage-node.active i {
  background:var(--accent-cyan);
  box-shadow:0 0 16px rgba(67, 231, 255, .72);
}

.stage-node.done {
  border-color:rgba(102, 229, 163, .28);
  color:#c9ffe2;
}

.stage-node.done i {
  background:var(--success);
}

.stage-node.blocked {
  border-color:rgba(255, 107, 122, .42);
  color:#ffd5db;
}

.stage-node.blocked i {
  background:var(--danger);
}

.cockpit-current-action {
  margin-top:10px;
  color:var(--cockpit-secondary);
  font-size:12px;
}

.cockpit-evidence-chips,
.inline-evidence-chip-row,
.history-chips {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.cockpit-evidence-chips span,
.inline-evidence-chip-row span,
.history-chips i,
.inline-agent-meta span {
  border:1px solid rgba(116, 139, 178, .18);
  border-radius:999px;
  background:rgba(9, 14, 25, .8);
  color:var(--cockpit-secondary);
  padding:5px 8px;
  font-size:11px;
  font-style:normal;
}

.advanced-controls {
  padding:0;
}

.advanced-controls summary {
  cursor:pointer;
  padding:12px;
  color:var(--cockpit-text);
  font-weight:700;
}

.advanced-subtitle {
  color:var(--cockpit-muted);
  font-size:12px;
  padding:0 12px 10px;
}

.advanced-controls > .drawer-section {
  margin:0 12px 12px;
}

.mini-btn {
  min-height:28px;
  padding:4px 9px;
  border-radius:999px;
  background:rgba(93,167,255,.12);
  border:1px solid rgba(93,167,255,.24);
  color:#cfe6ff;
}

.drawer-section-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.inline-job-card {
  border:1px solid rgba(93, 167, 255, .22);
  border-radius:14px;
  background:
    linear-gradient(180deg, rgba(17, 25, 42, .94), rgba(9, 14, 24, .94)),
    radial-gradient(circle at 12% 0%, rgba(67, 231, 255, .12), transparent 28%);
  box-shadow:0 18px 60px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.04);
  padding:14px;
}

.inline-job-kicker {
  display:block;
  color:var(--accent-cyan);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin-bottom:4px;
}

.inline-job-topline strong {
  font-size:15px;
  color:var(--cockpit-text);
}

.inline-job-status {
  border-color:rgba(67, 231, 255, .34);
  background:rgba(67, 231, 255, .1);
  color:#d8fbff;
}

.inline-agent-meta {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:10px 0;
}

.inline-agent-summary {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
  margin-top:10px;
}

.inline-agent-summary b {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.inline-evidence-chip-row {
  margin-top:10px;
}

.inline-evidence-chip-row b {
  color:var(--cockpit-text);
}

.inline-job-details {
  margin-top:10px;
  border:1px solid rgba(116, 139, 178, .16);
  border-radius:10px;
  background:rgba(8, 12, 22, .54);
}

.inline-job-details summary {
  cursor:pointer;
  padding:9px 10px;
  color:var(--cockpit-secondary);
  font-weight:700;
}

.inline-job-grid {
  padding:0 10px 10px;
}

.inline-job-diff,
.coding-diff {
  border-color:rgba(116, 139, 178, .18);
  background:#070b13;
  color:#9fb0c7;
}

.inline-evidence-transitions,
.inline-job-approval,
.coding-approval-card {
  border-radius:12px;
  background:rgba(8, 12, 22, .78);
}

.inline-job-approval,
.coding-approval-card {
  border-color:rgba(255, 209, 102, .34);
  color:#ffe7a4;
  box-shadow:0 0 28px rgba(255, 209, 102, .08);
}

.approval-card-top {
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}

.approval-card-top span {
  border:1px solid rgba(255, 209, 102, .28);
  border-radius:999px;
  padding:2px 7px;
}

.approval-token-grid {
  display:grid;
  grid-template-columns:max-content minmax(0,1fr);
  gap:5px 9px;
}

.approval-token-grid span {
  color:#bfae73;
}

.approval-token-grid b {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#fff1bd;
}

.inline-job-approval pre {
  max-height:140px;
  overflow:auto;
  white-space:pre-wrap;
  background:#070b13;
  border:1px solid rgba(255,255,255,.08);
  border-radius:8px;
  padding:8px;
  color:#d9e4f5;
}

.inline-job-approval p {
  color:#d6c07c;
  font-size:11px;
  line-height:1.4;
  margin:8px 0;
}

.coding-history-item {
  border-color:rgba(116, 139, 178, .16);
  border-radius:12px;
  background:linear-gradient(180deg, rgba(18, 26, 43, .72), rgba(10, 15, 26, .72));
  gap:6px;
}

.coding-history-item strong {
  color:var(--cockpit-text);
  font-size:12px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.coding-history-item em {
  color:var(--success);
  font-style:normal;
}

.source-readiness-card strong {
  display:block;
  color:var(--cockpit-text);
}

.empty-state {
  border:1px dashed rgba(116, 139, 178, .22);
  border-radius:12px;
  padding:14px;
  text-align:center;
}

button:focus-visible,
summary:focus-visible,
textarea:focus-visible,
select:focus-visible,
input:focus-visible {
  outline:2px solid var(--accent-cyan);
  outline-offset:2px;
}

@media (max-width: 760px) {
  .settings-drawer.agent-cockpit {
    width:100vw;
  }
  .cockpit-status-grid,
  .inline-agent-summary {
    grid-template-columns:1fr;
  }
  .agent-stage-timeline,
  .inline-agent-timeline {
    grid-template-columns:1fr 1fr;
  }
}

/* Phase 41 Codex-style transcript and workspace polish */
.chat-main {
  max-width:980px;
  padding:0 24px;
}

.chat-messages {
  gap:20px;
  padding:28px 8px 16px;
}

.cmsg {
  gap:12px;
}

.cmsg .bubble {
  max-width:min(820px, 100%);
}

.cmsg.user .bubble {
  display:flex;
  flex-direction:column;
  align-items:flex-end;
}

.cmsg.user .body {
  max-width:min(640px, 88%);
  background:linear-gradient(135deg, rgba(37, 63, 105, .95), rgba(27, 42, 75, .95));
  border-color:rgba(93, 167, 255, .35);
  box-shadow:0 12px 34px rgba(20, 60, 120, .18);
}

.cmsg.ai .body,
.agent-working-card {
  background:linear-gradient(180deg, rgba(16, 23, 38, .92), rgba(10, 15, 27, .92));
  border:1px solid rgba(116, 139, 178, .2);
  border-radius:14px;
  box-shadow:0 18px 60px rgba(0, 0, 0, .24);
}

.cmsg.pending .body {
  opacity:1;
  outline:1px solid rgba(93, 167, 255, .2);
}

.cmsg.send-failed .body {
  border-color:rgba(255, 107, 122, .42);
}

.agent-working-card {
  padding:14px;
  color:var(--cockpit-text);
}

.agent-working-card strong {
  display:block;
  margin:4px 0 10px;
  font-size:15px;
}

.activity-transcript {
  display:grid;
  gap:7px;
  margin-top:10px;
}

.activity-transcript span {
  position:relative;
  padding-left:18px;
  color:var(--cockpit-secondary);
  line-height:1.45;
}

.activity-transcript span::before {
  content:"";
  position:absolute;
  left:0;
  top:.62em;
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg, var(--accent-cyan), var(--accent-blue));
  box-shadow:0 0 14px rgba(67, 231, 255, .35);
}

.inline-agent-activity {
  margin:10px 0 12px;
  border:1px solid rgba(116, 139, 178, .14);
  border-radius:12px;
  background:rgba(8, 13, 23, .54);
  padding:11px 12px;
}

.inline-evidence-chip-row,
.cockpit-evidence-chips,
.history-chips {
  align-items:center;
}

.inline-evidence-chip-row span,
.cockpit-evidence-chips span,
.history-chips span {
  background:rgba(10, 16, 28, .76);
  border-color:rgba(116, 139, 178, .18);
}

.inline-job-details {
  margin-top:10px;
  border:1px solid rgba(116, 139, 178, .14);
  border-radius:12px;
  background:rgba(8, 13, 23, .5);
  padding:0;
}

.inline-job-details summary,
.cockpit-details summary,
.advanced-controls summary {
  cursor:pointer;
  color:var(--cockpit-text);
  font-weight:650;
  list-style:none;
}

.inline-job-details summary {
  padding:11px 12px;
}

.inline-job-details[open] {
  padding-bottom:12px;
}

.inline-job-details[open] .inline-job-grid {
  margin:0 12px;
}

.inline-job-grid {
  grid-template-columns:minmax(140px, max-content) minmax(0, 1fr);
  gap:7px 12px;
}

.inline-job-grid span {
  color:var(--cockpit-muted);
}

.inline-job-grid b {
  color:var(--cockpit-secondary);
}

.chat-composer {
  padding:14px 0 20px;
}

.composer-box {
  border-radius:18px;
  padding:11px 11px 11px 16px;
}

#chatInput {
  font-size:15px;
}

.settings-drawer.agent-cockpit {
  width:min(380px, 94vw);
}

.cockpit-status-grid {
  grid-template-columns:1fr;
}

.cockpit-status-card {
  padding:10px 11px;
}

.source-readiness-list {
  display:none;
}

.cockpit-details {
  padding:12px;
}

.cockpit-details:not([open]) > :not(summary) {
  display:none;
}

.recent-runs-section .coding-history-note {
  display:none;
}

.coding-history-item {
  padding:10px;
}

.coding-history-item small {
  white-space:normal;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}

@media (max-width: 760px) {
  .chat-main {
    padding:0 14px;
  }
  .cmsg.user .body {
    max-width:94%;
  }
}
