.dashboard-columns {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, .75fr);
  gap: 16px;
  align-items: start;
}

.dashboard-main-column,
.crew-column {
  display: grid;
  gap: 16px;
}

.crew-activity {
  align-content: start;
  background: #eef1f4;
  border: 1px solid #d5dbe1;
  border-radius: 12px;
  padding: 12px;
}

.crew-activity-title {
  margin: 0;
  padding: 2px 4px;
  color: #861f41;
  font-size: 20px;
}

.new-badge {
  display: inline-block;
  margin-left: 6px;
  padding: 2px 7px;
  border-radius: 10px;
  background: #e87722;
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  vertical-align: 1px;
}

.schedule-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 8px;
  padding: 10px 14px;
  border-bottom: 1px solid #dce1e6;
  background: #f8fafb;
}

.schedule-controls label {
  color: #4e5964;
  font-size: 11px;
  font-weight: bold;
}

.schedule-controls select {
  display: block;
  margin-top: 2px;
  padding: 6px;
  border: 1px solid #bbc3cb;
  border-radius: 5px;
  background: #fff;
}

.schedule-controls button {
  padding: 7px 11px;
  border: 0;
  border-radius: 5px;
  background: #861f41;
  color: #fff;
  font-weight: bold;
}

.schedule-controls a {
  padding: 7px 2px;
  color: #861f41;
  font-size: 12px;
}

.panel.upcoming_schedule {
  display: flex;
  flex-direction: column;
}

.panel.upcoming_schedule .schedule-controls {
  order: 3;
  border-top: 1px solid #dce1e6;
  border-bottom: 0;
}

@media (max-width: 850px) {
  .dashboard-columns {
    grid-template-columns: 1fr;
  }
}
