.planning-result-grid,
.planning-practice-results {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .7rem;
  margin: 1rem 0;
}

.planning-result-grid span,
.planning-practice-results span {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: .18rem;
  padding: .78rem;
  border: 1px solid rgba(11, 45, 38, .14);
  border-radius: 14px;
  background: rgba(255, 255, 255, .7);
  color: #48625b;
  font-size: .78rem;
}

.planning-result-grid b,
.planning-practice-results b {
  overflow-wrap: anywhere;
  color: #0b2d26;
  font-size: 1rem;
}

.planning-practice {
  margin: 2.6rem 0;
  padding: clamp(1.1rem, 3vw, 1.8rem);
  border: 1px solid rgba(11, 45, 38, .15);
  border-radius: 24px;
  background: linear-gradient(145deg, #eef7ff, #f6fae9);
  box-shadow: 0 18px 50px rgba(11, 45, 38, .07);
}

.planning-practice-head,
.planning-slider > span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.planning-practice-head h2 { margin: .15rem 0 .55rem; }

.planning-practice-badge {
  flex: 0 0 auto;
  padding: .55rem .8rem;
  border-radius: 999px;
  background: #0b2d26;
  color: #fff;
  font-weight: 800;
}

.planning-slider { display: grid; gap: .7rem; margin: 1.2rem 0; }
.planning-slider output { color: #0b2d26; font-weight: 800; }
.planning-slider input[type="range"] { width: 100%; accent-color: #4168e8; }

@media (max-width: 680px) {
  .planning-result-grid,
  .planning-practice-results { grid-template-columns: 1fr; }
  .planning-practice-head { align-items: flex-start; flex-direction: column; }
}
