.kmh-p3-v2-controls {
  display: grid;
  gap: 1.25rem;
  margin: 0 0 1.5rem;
  padding: clamp(1rem, 3vw, 2rem);
  border: 1px solid #c7d8e3;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(0, 47, 79, .08);
}

.kmh-p3-v2-controls h1,
.kmh-p3-v2-controls h2,
.kmh-p3-v2-controls p { margin-bottom: .5rem; }

.kmh-p3-v2-add {
  display: grid;
  grid-template-columns: minmax(220px, 2fr) repeat(6, minmax(110px, 1fr));
  gap: .75rem;
  align-items: end;
}

.kmh-p3-v2-add h2 { grid-column: 1 / -1; }
.kmh-p3-v2-add label { display: grid; gap: .35rem; font-weight: 700; }
.kmh-p3-v2-add input,
.kmh-p3-v2-add select { width: 100%; min-height: 44px; }
.kmh-p3-v2-add button { grid-column: 1 / -1; justify-self: start; }

.kmh-p3-v2-maintenance { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; }
.kmh-p3-v2-status { min-height: 1.5em; color: #12613b; font-weight: 700; }
.kmh-p3-v2-status.is-error { color: #a51d2d; }
.kmh-p3-v2-item-status { color: #12613b; font-size: .9rem; font-weight: 700; margin: .75rem 0 0; min-height: 1.35em; }
.kmh-p3-v2-item-status.is-error { color: #a51d2d; }
.kmh-p3-v2-item-status:empty { display: none; }
#kmh-p3-cart-v2.is-busy { opacity: .72; cursor: progress; }

@media (max-width: 1024px) {
  .kmh-p3-v2-add { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .kmh-p3-v2-add label:first-of-type { grid-column: span 3; }
}

@media (max-width: 768px) {
  .kmh-p3-v2-add { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kmh-p3-v2-add label:first-of-type { grid-column: span 2; }
}

@media (max-width: 430px) {
  .kmh-p3-v2-add { grid-template-columns: 1fr; }
  .kmh-p3-v2-add label:first-of-type,
  .kmh-p3-v2-add button { grid-column: auto; width: 100%; }
  .kmh-p3-v2-maintenance { align-items: stretch; flex-direction: column; }
  .kmh-p3-v2-maintenance > * { width: 100%; }
}
