.sales-plan-heading { flex-wrap: wrap; gap: 16px; }
.sales-plan-heading h2 { margin-bottom: 8px; }
.sales-plan-period { display: flex; align-items: center; gap: 12px; margin: 16px 0; }
.sales-plan-month { flex: 0 1 220px; min-width: 0; }
.sales-plan-month input { width: 100%; min-width: 0; }
.sales-plan-calculate { flex: 0 0 auto; }
.sales-plan-calculate button { white-space: nowrap; }
.sales-plan-scroll { overflow-x: auto; }
.sales-plan-scroll table { min-width: 1050px; }
.sales-plan-scroll th:not(:first-child), .sales-plan-scroll td:not(:first-child) { text-align: right; white-space: nowrap; }
.sales-plan-scroll td:first-child { min-width: 180px; max-width: 280px; overflow-wrap: anywhere; }
.sales-plan-behind { color: var(--danger); }
.sales-plan-ahead { color: var(--success); }
.sales-plan-expected { font-size: 12px; margin-top: 4px; }
@media (max-width: 600px) {
  .sales-plan-heading { align-items: stretch; flex-direction: column; }
}
