.campaign-scheduling {
  min-width: 0;
  grid-column: 1 / -1;
  border: 0;
  border-top: 1px solid var(--line, #e4e5eb);
  padding: 16px 0 0;
  margin: 12px 0 16px;
}
.campaign-scheduling legend { padding: 0 8px 0 0; font-size: 14px; font-weight: 600; }
.campaign-schedule-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; align-items: start; }
.campaign-schedule-grid label { min-width: 0; }
.campaign-schedule-grid input, .campaign-schedule-grid select { min-width: 0; max-width: 100%; }
.campaign-scheduling [hidden] { display: none !important; }
.campaign-weekdays { grid-column: 1 / -1; }
.campaign-weekdays > span { display: block; margin-bottom: 6px; }
.campaign-weekdays > div { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.campaign-weekdays label.check { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; margin: 0; }
.campaign-weekdays input { width: 16px; height: 16px; accent-color: var(--green, #5147c8); }
.campaign-interval { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.campaign-schedule-help { margin: 12px 0 0; line-height: 1.6; }
.campaign-plan-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.campaign-time { font-variant-numeric: tabular-nums; }
span.campaign-time { display: block; margin-top: 5px; }
.status.scheduled { background: var(--ops-soft, #eeedf9); color: var(--ops-soft-ink, #443aab); }
@media (max-width: 680px) {
  .campaign-schedule-grid { grid-template-columns: minmax(0, 1fr); }
  .campaign-weekdays > div { gap: 4px 14px; }
  .campaign-weekdays label.check { min-height: 44px; }
}
