.pipe-drop-app {
  min-width: 0;
}

.pipe-drop-form {
  display: grid;
  gap: 20px;
}

.pipe-drop-form__section {
  display: grid;
  gap: 14px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--border);
}

.pipe-drop-form__section:last-of-type {
  border-bottom: 0;
}

.pipe-drop-section-head h3 {
  margin: 0;
  font-size: 1rem;
}

.pipe-drop-section-head p {
  margin: 5px 0 0;
  font-size: 0.9rem;
}

.pipe-drop-grid {
  display: grid;
  gap: 14px;
  align-items: end;
}

.pipe-drop-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.pipe-drop-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.pipe-drop-wide {
  grid-column: span 2;
}

.pipe-drop-hydraulic-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 300px);
  gap: 18px;
  align-items: center;
}

.pipe-drop-tube-visual {
  margin: 0;
  min-width: 0;
}

.pipe-drop-tube-visual img {
  display: block;
  width: 100%;
  max-height: 250px;
  object-fit: contain;
  filter: drop-shadow(0 18px 26px rgba(15, 23, 42, 0.18));
}

.pipe-drop-check {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--ink);
  font-size: 0.92rem;
  font-weight: 800;
}

.pipe-drop-check input {
  width: 18px;
  height: 18px;
  accent-color: var(--color-primary);
}

.pipe-drop-check--inline {
  min-height: 46px;
  align-self: end;
}

.pipe-drop-dependent.is-disabled {
  opacity: 0.52;
}

.pipe-drop-alerts:empty {
  display: none;
}

.pipe-drop-alerts {
  display: grid;
  gap: 10px;
}

.pipe-drop-alert {
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--color-primary-softer);
  color: var(--ink);
  font-size: 0.92rem;
  line-height: 1.55;
}

.pipe-drop-alert--warning {
  border-color: rgba(188, 133, 38, 0.35);
  background: rgba(244, 181, 64, 0.13);
}

.pipe-drop-alert--danger {
  border-color: rgba(188, 55, 55, 0.35);
  background: rgba(188, 55, 55, 0.1);
}

.pipe-drop-results-section + .pipe-drop-results-section {
  margin-top: 24px;
}

.pipe-drop-results-section h4 {
  margin: 0 0 12px;
  color: var(--ink);
  font-size: 1rem;
}

.pipe-drop-result-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.pipe-drop-empty {
  padding: 18px;
  border: 1px dashed var(--border);
  border-radius: 14px;
  color: var(--muted);
  text-align: center;
}

.thermoprops-field input:disabled,
.thermoprops-field select:disabled {
  background: var(--color-state-disabled-bg);
  color: var(--color-state-disabled-text);
  cursor: not-allowed;
}

@media (max-width: 1100px) {
  .pipe-drop-grid--4,
  .pipe-drop-grid--3,
  .pipe-drop-result-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .pipe-drop-grid--4,
  .pipe-drop-grid--3,
  .pipe-drop-hydraulic-layout,
  .pipe-drop-result-grid {
    grid-template-columns: 1fr;
  }

  .pipe-drop-wide {
    grid-column: auto;
  }
}
