/* ==========================================================================
   wortsuche.css – Buchstabengitter (Prefix: hbw__)
   ========================================================================== */

.habloo-exercise--wortsuche .habloo-exercise__container {
  position: relative;
  max-width: 1040px;
  margin: 0 auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.hbw__info {
  position: relative;
  max-width: 820px;
  min-height: 58px;
  display: flex;
  align-items: center;
  margin: 0 auto 22px;
  padding: 13px 18px 13px 70px;
  border: 1.5px solid #e8e8ee;
  border-radius: 14px;
  background: #fff;
  color: #565c72;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.45;
}

.hbw__info::before {
  content: "i";
  position: absolute;
  left: 18px;
  top: 50%;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: var(--hb-bg-soft);
  color: var(--hb-navy);
  font-size: 20px;
  font-weight: 950;
  transform: translateY(-50%);
}

.hbw__grid {
  display: grid;
  justify-content: center;
  gap: 7px;
  width: min(100%, 480px);
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 22px;
}

.hbw__cell {
  width: 100%;
  aspect-ratio: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1.5px solid #e9e9ef;
  border-radius: 12px;
  background: #fff;
  color: var(--hb-navy);
  cursor: pointer;
  font-size: clamp(15px, 3.5vw, 21px);
  font-weight: 850;
  box-shadow: 0 4px 10px rgba(6, 8, 63, 0.06);
  transition: transform 0.14s ease, background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}

.hbw__cell:hover {
  border-color: var(--hb-primary);
  background: #fff;
  transform: translateY(-1px);
}

.hbw__cell.is-selected {
  border-color: var(--hb-primary);
  background: var(--hb-primary-soft);
  color: var(--hb-primary-dark);
  box-shadow: 0 0 0 4px rgba(255, 91, 0, 0.12);
}

.hbw__cell.is-found {
  border-color: var(--hb-success);
  background: var(--hb-success-bg);
  color: #067247;
}

.hbw__list-title {
  max-width: 820px;
  margin: 8px auto 10px;
  color: var(--hb-navy);
  font-size: 17px;
  font-weight: 850;
}

.hbw__word-item {
  max-width: 820px;
  display: flex;
  gap: 12px;
  margin: 0 auto 9px;
  padding: 10px 12px;
  border: 1.5px dashed #ececf2;
  border-radius: 14px;
  background: #fff;
  color: #565c72;
  font-size: 14px;
  font-weight: 650;
}

.hbw__word-item strong {
  min-width: 180px;
  color: var(--hb-primary);
  font-weight: 850;
}

.hbw__word-item.is-found {
  border-style: solid;
  border-color: var(--hb-success);
  background: var(--hb-success-bg);
  color: #067247;
  text-decoration: line-through;
}

.hbw__result {
  max-width: 820px;
  min-height: 24px;
  margin: 16px auto 0;
  color: var(--hb-success);
  font-weight: 850;
}

.hbw__btn {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 18px auto 0 0;
}

.hbw__btn::before {
  content: "↻";
  font-size: 22px;
  line-height: 1;
}

@media (max-width: 760px) {
  .hbw__info {
    align-items: flex-start;
    padding-left: 62px;
    font-size: 14px;
  }

  .hbw__word-item {
    flex-direction: column;
    gap: 2px;
  }

  .hbw__word-item strong {
    min-width: 0;
  }
}
