/* ==========================================================================
   satzbau.css – Drag & Drop Satzbau (Prefix: hsb__)
   ========================================================================== */

.hsb__container {
  max-width: 1040px;
  margin: 0 auto;
}

.hsb__container h2 {
  text-align: left;
}

.hsb__dropzone {
  min-height: 78px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-bottom: 22px;
  padding: 18px;
  border: 2px dashed var(--hb-border);
  border-radius: 18px;
  background: var(--hb-bg-soft);
}

.hsb__dropzone:empty::before {
  content: "Ziehe die Wörter hierher";
  color: var(--hb-muted);
  font-size: 14px;
  font-weight: 700;
}

.hsb__words {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 22px;
}

.hsb__word {
  padding: 10px 16px;
  border: 2px solid #e5e5ea;
  border-radius: 999px;
  cursor: grab;
  font-size: 15px;
  font-weight: 800;
  user-select: none;
  transition: transform 0.15s ease, opacity 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}

.hsb__word.is-dragging {
  opacity: 0.45;
  transform: scale(0.96);
}

.hsb__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-top: 24px;
}

.hsb__result {
  min-height: 28px;
  margin: 18px 0 0;
  font-weight: 800;
}

.hsb__result.is-correct {
  color: var(--hb-success);
}

.hsb__result.is-wrong {
  color: var(--hb-danger);
}

@media (max-width: 760px) {
  .hsb__container h2 {
    text-align: center;
  }
}
