.pm-field {
  margin-top: 0;
}

.pm-status-pill {
  border-radius: 999px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.06);
  color: var(--muted);
  padding: 7px 10px;
  font-size: .85rem;
  font-weight: 900;
  white-space: nowrap;
}

.pm-status-pill.pm-ok {
  border-color: rgba(74,222,128,.32);
  background: rgba(74,222,128,.10);
  color: #bbf7d0;
}

.pm-status-pill.pm-soon {
  border-color: rgba(250,204,21,.5);
  background: rgba(250,204,21,.14);
  color: #fef08a;
}

.pm-status-pill.pm-late {
  border-color: rgba(239,68,68,.58);
  background: rgba(239,68,68,.15);
  color: #fecaca;
}

.customer-card.pm-due-soon {
  border-color: rgba(250,204,21,.58);
  box-shadow: 0 24px 80px rgba(250,204,21,.12);
}

.customer-card.pm-past-due {
  border-color: rgba(239,68,68,.72);
  box-shadow: 0 24px 80px rgba(239,68,68,.14);
}

.customer-card.pm-due-soon .customer-toggle {
  background: linear-gradient(90deg, rgba(250,204,21,.10), transparent 58%);
}

.customer-card.pm-past-due .customer-toggle {
  background: linear-gradient(90deg, rgba(239,68,68,.13), transparent 58%);
}

.pm-panel {
  margin-top: 18px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(5,9,20,.28);
}

.pm-panel-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 12px;
}

.pm-panel-head h3 {
  margin: 0;
}

.pm-meta {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  color: var(--muted);
  font-size: .86rem;
  margin: 0 0 12px;
}

.pm-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: end;
}

.pm-actions label {
  min-width: 190px;
}

.pm-note {
  color: var(--muted);
  font-size: .78rem;
  margin: 10px 0 0;
}
