.spt-product-studio-window .spt-floating-window__body {
  overflow: hidden;
  padding: 0;
}

.spt-product-studio {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
}

.spt-product-studio__toolbar {
  align-items: center;
  border-bottom: 1px solid var(--spt-border);
  display: flex;
  gap: 10px;
  min-height: 42px;
  padding: 6px 10px;
}

.spt-product-studio__product-select {
  max-width: 340px;
  min-height: var(--spt-control-height);
}

.spt-product-studio__actions {
  display: flex;
  gap: 4px;
}

.spt-product-studio__action {
  min-height: var(--spt-control-height);
  white-space: nowrap;
}

.spt-product-studio__validation {
  color: var(--spt-ink-soft);
  font-size: 12px;
  margin-left: auto;
}

.spt-product-studio__validation.is-invalid {
  color: var(--spt-ink);
  font-weight: 700;
}

.spt-product-studio__layout {
  display: grid;
  flex: 1;
  grid-template-columns: minmax(220px, 270px) 1fr;
  min-height: 0;
}

.spt-product-studio__summary,
.spt-product-studio__details {
  min-height: 0;
  overflow: auto;
  padding: 12px;
}

.spt-product-studio__summary {
  background: var(--spt-surface-raised);
  border-right: 1px solid var(--spt-border);
}

.spt-product-studio__field {
  display: grid;
  font-size: 11px;
  gap: 3px;
  margin: 0 0 7px;
}

.spt-product-studio__field input,
.spt-product-studio__field select,
.spt-product-studio__field textarea,
.spt-product-studio__decision select,
.spt-product-studio__policy select,
.spt-product-studio__policy textarea {
  font: inherit;
  min-height: var(--spt-control-height);
  width: 100%;
}

.spt-product-studio__field textarea {
  min-height: 56px;
  resize: vertical;
}

.spt-product-studio h3,
.spt-product-studio h4,
.spt-product-studio p {
  margin: 0 0 8px;
}

.spt-product-studio__counts {
  display: grid;
  grid-template-columns: 1fr auto;
  margin: 16px 0;
}

.spt-product-studio__counts dd,
.spt-product-studio__counts dt {
  border-bottom: 1px solid var(--spt-border);
  margin: 0;
  padding: 5px 0;
}

.spt-product-studio__capability {
  align-items: start;
  border-top: 1px solid var(--spt-border);
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(220px, 1fr) minmax(150px, 0.7fr);
  padding: 8px 0;
}

.spt-product-studio__capability-copy,
.spt-product-studio__decision {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.spt-product-studio__capability-copy span,
.spt-product-studio__decision small {
  color: var(--spt-ink-soft);
  font-size: 11px;
}

.spt-product-studio__badge {
  border: 1px solid var(--spt-border-strong);
  border-radius: var(--spt-radius);
  font-size: 11px;
  padding: 2px 6px;
  text-transform: capitalize;
  width: fit-content;
}

.spt-product-studio__badge.is-excluded {
  color: var(--spt-muted);
}

.spt-product-studio__badge.is-limited {
  background: var(--spt-selected-bg);
}

.spt-product-studio__selection {
  align-items: start;
  display: flex;
  font-size: 11px;
  gap: 5px;
}

.spt-product-studio__policy {
  align-items: start;
  border-top: 1px solid var(--spt-border);
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(180px, 0.8fr) 140px minmax(220px, 1fr);
  padding: 8px 0;
}

.spt-product-studio__policy textarea {
  min-height: 62px;
  resize: vertical;
}

.spt-product-studio__public-preview {
  border: 1px solid var(--spt-border-strong);
  margin-top: 14px;
  padding: 10px;
}

.spt-product-studio__log {
  border-top: 1px solid var(--spt-border);
  flex: 0 0 108px;
  font: 11px/1.35 monospace;
  margin: 0;
  max-height: 160px;
  overflow: auto;
  padding: 8px 10px;
  white-space: pre-wrap;
}

@media (max-width: 760px) {
  .spt-product-studio__layout {
    grid-template-columns: 220px minmax(420px, 1fr);
  }
}
