.decision-controls {
  display: flex;
  gap: 12px;
  align-items: end;
  flex-wrap: wrap;
}
.decision-hero .btn.primary {
  background: #c5e9a7;
  border-color: #c5e9a7;
  color: #153d32;
}
.decision-hero .btn.primary:hover { background: #d7f2c1; }
.decision-controls label {
  display: grid;
  gap: 5px;
  font-size: 12px;
  font-weight: 700;
}
.decision-controls select {
  min-width: 205px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
}
.decision-review-list {
  display: grid;
  gap: 12px;
  margin: 16px 0;
}
.decision-review {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  padding: 18px 20px;
  border: 1px solid var(--line);
  border-left: 4px solid #3c7d68;
  border-radius: 10px;
  background: #fff;
}
.decision-review > div { display: grid; gap: 5px; }
.decision-review small {
  font-size: 10px;
  letter-spacing: .08em;
  color: var(--muted);
  font-weight: 700;
}
.decision-review strong { font-size: 13px; }
.decision-review p,
.decision-review footer { grid-column: 1 / -1; margin: 0; }
.decision-review p { font-size: 14px; }
.decision-review footer {
  padding-top: 10px;
  border-top: 1px solid var(--line);
  font-size: 12px;
  color: var(--muted);
}
@media (max-width: 900px) {
  .decision-review { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
  .decision-review { grid-template-columns: 1fr; }
  .decision-controls { align-items: stretch; }
  .decision-controls label,
  .decision-controls select,
  .decision-controls .btn { width: 100%; }
}

.decision-card.executing {
  border-left-color: #28785d;
  background: #fbfdf9;
}
.decision-card.executing .decision-answer { background: #e8f3e9; }

.decision-window-grid {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 4px;
}
.decision-window-grid > div {
  display: grid;
  gap: 7px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
}
.decision-window-grid > div strong { font-size: 12px; }
.decision-window-grid > div span { color: var(--muted); font-size: 10px; line-height: 1.5; }
.decision-help ol { display: grid; gap: 12px; padding-left: 22px; }
.decision-help li { padding-left: 5px; }
.decision-help li strong,
.decision-help li span { display: block; }
.decision-help li span { margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.55; }

@media (max-width: 900px) {
  .decision-window-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
  .decision-window-grid { grid-template-columns: 1fr; }
}

.campaign-commands { margin-top: 18px; }
.campaign-command-card {
  display: grid;
  gap: 12px;
  padding: 18px 0;
  border-top: 1px solid var(--line);
}
.campaign-command-card:first-of-type { border-top: 0; }
.campaign-command-card > div:first-child { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.campaign-command-card > div:first-child small { width: 100%; color: var(--muted); }
.campaign-command-card p { margin: 0; color: var(--muted); }
.campaign-command-card dl,
.command-numbers { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin: 0; }
.campaign-command-card dl div,
.command-numbers div { padding: 12px; border-radius: 8px; background: var(--wash,#f4f7f2); }
.campaign-command-card dt,
.command-numbers small { font-size: 10px; font-weight: 700; letter-spacing: .06em; color: var(--muted); }
.campaign-command-card dd { margin: 5px 0 0; font-weight: 700; }
.command-next-step { margin-top: 2px; padding: 13px 15px; border-left: 3px solid var(--green); background: #f2f6ef; display: grid; gap: 5px; }
.command-next-step small { color: var(--green); font-size: 9px; font-weight: 800; letter-spacing: .9px; }
.command-next-step strong { font-size: 12px; line-height: 1.5; }
.decision-handoff { margin: 0 0 20px; padding: 22px 24px; border: 1px solid #b8c9b9; border-left: 5px solid var(--green); border-radius: 12px; background: #f5f8f1; display: grid; gap: 14px; }
.decision-handoff h2 { margin: 6px 0 7px; font-size: 20px; }
.decision-handoff p { margin: 0 0 8px; color: var(--muted); font-size: 13px; line-height: 1.55; }
.decision-handoff > div > strong { font-size: 12px; line-height: 1.5; color: #244d3b; }
.decision-auto-check { width: fit-content; padding: 7px 10px; border-radius: 999px; background: #e4efdf; color: #24523d; font-size: 10px; font-weight: 750; }
.decision-handoff-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding-top: 4px; }
.decision-handoff-actions .btn.primary { background: var(--green); border-color: var(--green); color: #fff; }
.decision-empty-guided small { color: var(--green); font-size: 9px; font-weight: 800; letter-spacing: .9px; }
.decision-empty-guided strong { font-size: 16px; }
.decision-empty-guided span { line-height: 1.55; }
.decision-empty-guided em { color: #315d49; font-size: 11px; font-style: normal; font-weight: 650; }
.decision-support { margin: 18px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.decision-support > summary,.campaign-commands > summary,.decision-history > summary { cursor: pointer; list-style: none; padding: 16px 2px; color: #315d49; font-size: 12px; font-weight: 750; }
.decision-support > summary::-webkit-details-marker,.campaign-commands > summary::-webkit-details-marker,.decision-history > summary::-webkit-details-marker { display: none; }
.decision-support > summary::after,.campaign-commands > summary::after,.decision-history > summary::after { content: '＋'; float: right; }
.decision-support[open] > summary::after,.campaign-commands[open] > summary::after,.decision-history[open] > summary::after { content: '−'; }
.campaign-commands > summary,.decision-history > summary { padding: 0 0 14px; }
.command-plan { display: grid; gap: 16px; }
.command-plan h3,.command-plan h4,.command-plan p { margin: 0; }
.command-plan section { display: grid; gap: 7px; padding: 14px; border: 1px solid var(--line); border-radius: 9px; }
.command-plan ul { margin: 0; padding-left: 20px; }
.assistant-transcript {
  display: grid;
  gap: 10px;
  max-height: 330px;
  overflow: auto;
  padding: 4px 2px;
}
.assistant-message {
  display: grid;
  gap: 7px;
  max-width: 88%;
  padding: 13px 15px;
  border-radius: 10px;
  background: var(--wash,#f4f7f2);
}
.assistant-message.user { justify-self: end; background: #e5f0e3; }
.assistant-message.assistant { border-left: 3px solid #2a765e; }
.assistant-message small { font-size: 9px; font-weight: 800; letter-spacing: .09em; color: var(--muted); }
.assistant-message p,.assistant-message ul { margin: 0; white-space: pre-wrap; }
.assistant-message span { font-size: 11px; line-height: 1.5; color: var(--muted); }
.assistant-message details { font-size: 12px; }
.assistant-message details ul { padding: 8px 0 0 18px; }
@media (max-width: 700px) {
  .campaign-command-card dl,.command-numbers { grid-template-columns: 1fr 1fr; }
  .assistant-message { max-width: 100%; }
  .decision-handoff { padding: 18px; }
  .decision-handoff-actions { align-items: stretch; }
  .decision-handoff-actions .btn { width: 100%; }
}
