

.sd-root-modern,
.sd-root-modern * {
  --sjs-general-forecolor: #0b0b0b;
  --sjs-primary-backcolor: #0b0b0b;
  --sjs-primary-backcolor-light: #0b0b0b;
  --sjs-primary-forecolor: #ffffff;
  --sjs-special-forecolor: #0b0b0b;
  --sjs-secondary-forecolor: #0b0b0b;
}


:root {
  --bg: #0b1220;
  --card: rgba(255,255,255,0.06);
  --border: rgba(255,255,255,0.12);
  --text: rgba(255,255,255,0.92);
  --muted: rgba(255,255,255,0.70);
}

* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, "Noto Sans";
  background: radial-gradient(1200px 700px at 10% 0%, #172554 0%, var(--bg) 55%);
  color: var(--text);
}

.wrap { max-width: 980px; margin: 28px auto; padding: 0 16px; }
.header { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom: 14px; }
h1 { margin: 0; font-size: 26px; }
.sub { margin: 6px 0 0; color: var(--muted); font-size: 13px; }

.right { display:flex; flex-direction:column; gap:6px; align-items:flex-end; }
.endpoint {
  width: 380px; max-width: 65vw;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid var(--border);
  background: rgba(0,0,0,0.25);
  color: var(--text);
}

.card {
  border: 1px solid var(--border);
  background: var(--card);
  border-radius: 14px;
  padding: 16px;
  backdrop-filter: blur(8px);
}

/* Make Survey pages/blocks look separated */
.survey-page {
  padding: 14px;
  border: 1px dashed rgba(255,255,255,0.18);
  border-radius: 12px;
  margin-bottom: 14px;
  background: rgba(0,0,0,0.15);
}

/* Footer */
.row { display:flex; align-items:center; gap:12px; }
.footer { margin-top: 10px; justify-content: space-between; }
.status { color: var(--muted); font-size: 13px; }
.status.error { color: #ffb4b4; }

.btn {
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 10px 12px;
  background: rgba(255,255,255,0.10);
  color: var(--text);
  cursor: pointer;
}
.btn.secondary { background: rgba(255,255,255,0.06); }
.btn:disabled { opacity: 0.5; cursor: not-allowed; }

/* 1) Hide ONLY the empty-state text inside paneldynamic placeholder (keep add button) */
.sd-paneldynamic__placeholder > span > span.sv-string-viewer.sv-string-viewer--multiline {
  display: none !important;
}

/* 2) Collapse the placeholder container spacing */
.sd-paneldynamic__placeholder {
  padding-top: 0 !important;    
  padding-bottom: 0 !important;
  min-height: 0 !important;
}

/* 3) Keep the + button nicely spaced */
.sd-paneldynamic__placeholder .sd-paneldynamic__add-btn {
  margin-top: 8px;
}