.v4-stage-nav {
  overflow-x: auto;
  scrollbar-width: thin;
}

.v4-stage-nav button {
  flex: 0 0 auto;
  min-width: 112px;
}

.v4-platform-panel {
  min-height: 360px;
}

.v4-inline-form,
.v4-publish-form,
.v4-governance-form {
  display: grid;
  grid-template-columns: minmax(260px, 2fr) minmax(160px, 1fr) auto;
  gap: 12px;
  align-items: end;
  padding: 16px 0 18px;
  border-bottom: 1px solid var(--line, #30343b);
}

.v4-publish-form,
.v4-governance-form {
  grid-template-columns: repeat(3, minmax(150px, 1fr));
}

.v4-inline-form label,
.v4-publish-form label,
.v4-governance-form label {
  min-width: 0;
}

.v4-inline-form input,
.v4-publish-form input,
.v4-publish-form select,
.v4-governance-form input,
.v4-governance-form select {
  width: 100%;
}

.v4-check {
  display: flex;
  min-height: 42px;
  align-items: center;
  gap: 8px;
}

.v4-check input {
  width: auto;
}

.v4-platform-list {
  display: grid;
}

.v4-platform-row {
  display: grid;
  grid-template-columns: minmax(140px, 1fr) minmax(220px, 2fr) auto;
  gap: 14px;
  align-items: center;
  min-height: 64px;
  padding: 12px 2px;
  border-bottom: 1px solid var(--line, #30343b);
  animation: v4-row-in 180ms ease-out both;
}

.v4-platform-row strong,
.v4-platform-row small {
  display: block;
}

.v4-platform-row small {
  margin-top: 4px;
  color: var(--muted, #9da3ad);
}

.v4-platform-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.v4-status {
  color: #e25454;
  font-size: 12px;
  font-weight: 700;
}

@keyframes v4-row-in {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 760px) {
  .v4-stage-nav button { min-width: 104px; }
  .v4-inline-form,
  .v4-publish-form,
  .v4-governance-form,
  .v4-platform-row { grid-template-columns: 1fr; }
  .v4-platform-actions { justify-content: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  .v4-platform-row { animation: none; }
}
