.campaign-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0 0 20px;
}
.campaign-steps span {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 12px 14px;
  border: 1px solid #ead99d;
  border-radius: 9px;
  background: #fff9e5;
  color: #5d4d1d;
  font-size: 12px;
}
.campaign-steps b {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #f2c94c;
  color: #3d310d;
}
.manual-send {
  margin-top: 14px;
  padding: 10px 12px;
  border: 1px dashed #d9e3d9;
  border-radius: 8px;
  background: #fafcf9;
}
.manual-send summary { font-size: 12px; color: #758178; }
.manual-send label { max-width: 360px; }
.manual-send-actions { display: flex; gap: 8px; flex-wrap: wrap; margin: 10px 0; }
.market-controls { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 10px 0; }
.market-controls label { margin: 0; }
.duplicate-check { margin: 16px 0 10px; padding: 12px 14px; border: 1px solid #c9e4d3; border-radius: 10px; background: #f1fbf5; color: #225d3a; }
.duplicate-check b { display: block; margin-bottom: 4px; }
.duplicate-check p { margin: 0; font-size: 12px; line-height: 1.6; }
.duplicate-check ul { margin: 8px 0 0; padding-left: 20px; font-size: 12px; line-height: 1.7; }
.duplicate-check.warning { border-color: #e6c668; background: #fff8df; color: #745915; }
.duplicate-check.block { border-color: #e1a2a2; background: #fff1f1; color: #922f2f; }
.duplicate-confirm { margin: 0 0 12px; padding: 8px 10px; border-radius: 8px; background: #fff8df; color: #684f10; }
@media(max-width:780px) { .campaign-steps { grid-template-columns: 1fr; } }
