.kartoitus-wrap {
  max-width: 920px;
  margin: 0 auto;
}

.kartoitus-hero {
  margin-bottom: 1.5rem;
}

.kartoitus-subtext {
  color: var(--muted, #8aa0b6);
  margin-top: .5rem;
}

.kartoitus-card {
  padding: 1.25rem;
  border: 1px solid rgba(145, 176, 204, .28);
  border-radius: 16px;
  background: rgba(14, 23, 36, 0.75);
  backdrop-filter: blur(6px);
  margin-bottom: 1rem;
}

.kartoitus-question {
  margin-bottom: 1.2rem;
}

.kartoitus-question label {
  display: block;
  margin-bottom: .45rem;
}

.kartoitus-scale {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .55rem;
}

.kartoitus-scale button {
  border: 1px solid rgba(154, 197, 228, .35);
  border-radius: 999px;
  color: #e5f2ff;
  background: rgba(18, 35, 56, .7);
  padding: .5rem .65rem;
  cursor: pointer;
}

.kartoitus-scale button.is-selected {
  background: linear-gradient(120deg, rgba(80, 151, 204, .9), rgba(62, 219, 199, .9));
  color: #001;
  border-color: transparent;
}

.kartoitus-grid {
  display: grid;
  gap: .9rem;
}

.kartoitus-grid textarea {
  min-height: 90px;
}

.kartoitus-result {
  display: none;
}

.kartoitus-result.is-visible {
  display: block;
}

.kartoitus-result ul {
  margin: .5rem 0 0 1rem;
}

.kartoitus-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  margin-top: 1rem;
}

.kartoitus-meta {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  color: #b9cadb;
  font-size: .95rem;
}

.kartoitus-result-cta {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  margin-top: 1rem;
}

@media (max-width: 640px) {
  .kartoitus-result-cta .btn {
    width: 100%;
  }
}
