.wc-kopf {
  padding-block: 1.5rem var(--abstand-flaeche);
  background: var(--surface);
}

.wc-kopf h1 {
  max-width: 16ch;
  margin-inline: auto;
}

.wc-kopf .lead {
  margin-top: 1.5rem;
}

.wc-formular {
  max-width: 40rem;
  margin: 2.5rem auto 0;
}

.wc-eingabe {
  display: grid;
  gap: 0.75rem;
}

.wc-eingabe .btn {
  justify-content: center;
}

.wc-eingabe .btn:disabled {
  opacity: 0.6;
  cursor: progress;
}

.wc-status:not(:empty) {
  margin-top: 1rem;
  color: var(--ink);
}

.wc-merkmale {
  justify-content: center;
  margin-top: 1.5rem;
  color: var(--ink-soft);
}

.wc-ergebnis {
  padding-block: var(--abstand-flaeche);
  scroll-margin-top: 6rem;
}

.wc-ergebnis .container > * {
  max-width: 52rem;
  margin-inline: auto;
}

.wc-ergebnis__kopf h2 {
  max-width: 24ch;
  overflow-wrap: anywhere;
}

.wc-ergebnis__kopf h2:focus {
  outline: none;
}

.wc-ergebnis__kopf .lead {
  margin-top: 1rem;
  color: var(--ink);
}

.wc-teil {
  margin-top: 3rem;
}

.wc-teil__titel {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-size: var(--fs-h3-gross);
  line-height: var(--lh-titel);
}

.wc-punkte {
  margin-top: 1.25rem;
  border-top: 1px solid var(--border);
  list-style: none;
}

.wc-punkt {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: 1rem;
  padding-block: 1.25rem;
  border-bottom: 1px solid var(--border);
}

.wc-punkt__zeichen {
  display: inline-grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  font-size: var(--fs-klein);
  font-weight: var(--fw-zahl);
  line-height: 1;
}

.wc-punkt--ok .wc-punkt__zeichen {
  background: var(--surface);
  color: var(--ink);
}

.wc-punkt--fehlt .wc-punkt__zeichen {
  background: var(--fehler-soft);
  color: var(--fehler);
}

.wc-punkt--offen .wc-punkt__zeichen {
  background: var(--accent-soft);
  color: var(--accent-deep);
}

.wc-punkt__titel {
  color: var(--ink);
  font-weight: var(--fw-betont);
  line-height: 1.45;
}

.wc-punkt__status {
  margin-left: 0.4rem;
  color: var(--muted);
  font-size: var(--fs-klein);
  font-weight: var(--fw-ui);
}

.wc-punkt--fehlt .wc-punkt__status {
  color: var(--fehler);
}

.wc-punkt__text {
  margin-top: 0.35rem;
  color: var(--ink);
  overflow-wrap: anywhere;
}

.wc-punkt__warum {
  margin-top: 0.35rem;
  color: var(--muted);
  font-size: var(--fs-klein);
  line-height: 1.5;
}

.wc-grenzen {
  padding-block: var(--abstand-flaeche);
}

.wc-grenzen__liste {
  display: grid;
  gap: 0.75rem;
  max-width: 40rem;
  margin: var(--abstand-block) auto 0;
  padding-left: 1.25rem;
}

.wc-grenzen__liste li {
  color: var(--dark-text);
}

.dunkel .wc-grenzen__hinweis {
  max-width: 40rem;
  margin: 1.5rem auto 0;
}

@media (min-width: 40rem) {
  .wc-eingabe {
    grid-template-columns: minmax(0, 1fr) auto;
  }
}