/* Kuntze Kommentare – Bewertung und Kommentarbereich (CD marcuskuntze.info, passt zu cassiopeia_kuntze) */
.kmk-komm {
  --kk-accent: var(--kmk-weiss, #fff);
  --kk-line: rgba(255, 255, 255, .18);
  --kk-soft: var(--kmk-grau-hell, #d4d2d3);
  --kk-star: var(--kmk-honig-hell, #F6C343);
  margin-top: 2.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--kk-line);
  display: grid;
  gap: 2rem;
}
.kmk-komm--imkerei { --kk-accent: var(--kmk-honig, #EFA12A); --kk-line: rgba(239, 161, 42, .45); }
.kmk-komm__h { font-size: 1.35rem; margin: 0 0 .75rem; }
.kmk-komm__count { font-weight: 400; color: var(--kk-soft); }

/* Rückmeldungen */
.kmk-komm__msg { margin: 0 0 1rem; padding: .6rem .9rem; border-left: 3px solid var(--kk-accent); background: rgba(255, 255, 255, .06); }
.kmk-komm__msg--ok { border-left-color: var(--kmk-honig, #EFA12A); }
.kmk-komm__msg--warn { border-left-color: var(--kmk-honig-tief, #D9731A); background: rgba(217, 115, 26, .14); }

/* Bewertung: Sterne */
.kmk-rate__sum { margin: 0 0 .5rem; color: var(--kk-soft); }
.kmk-rate__sum strong { color: var(--kmk-weiss, #fff); }
.kmk-rate__stars {
  display: inline-block; position: relative; letter-spacing: .1em; color: rgba(255, 255, 255, .25);
  font-size: 1.1rem; line-height: 1; margin-right: .3rem; vertical-align: -.05em;
}
.kmk-rate__stars::before {
  content: "★★★★★"; position: absolute; inset: 0 auto 0 0; width: var(--kmk-rate, 0%);
  overflow: hidden; color: var(--kk-star); white-space: nowrap;
}
.kmk-rate__form fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.kmk-rate__form legend { font-size: 1rem; float: none; width: auto; margin: 0 0 .25rem; padding: 0; color: var(--kmk-weiss, #fff); }
.kmk-rate__pick { display: inline-flex; flex-direction: row-reverse; gap: .15rem; }
.kmk-rate__star {
  font: inherit; font-size: 1.9rem; line-height: 1; padding: .1rem .15rem; min-width: 44px; min-height: 44px;
  background: transparent; border: 0; color: rgba(255, 255, 255, .35); cursor: pointer; transition: color .15s, transform .15s;
}
.kmk-rate__star:hover, .kmk-rate__star:hover ~ .kmk-rate__star,
.kmk-rate__star:focus-visible, .kmk-rate__star:focus-visible ~ .kmk-rate__star { color: var(--kk-star); }
.kmk-rate__star:hover, .kmk-rate__star:focus-visible { transform: scale(1.12); }
.kmk-rate__done { color: var(--kmk-honig, #EFA12A); margin: .25rem 0 0; }

/* Bewertung: Hilfreich */
.kmk-rate__form--helpful { display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }
.kmk-rate__q { color: var(--kmk-weiss, #fff); }
.kmk-rate__helpful { font-size: .95rem !important; padding: .45rem 1rem !important; min-height: 44px; }
.kmk-rate__helpful.is-done { border-color: var(--kmk-honig, #EFA12A) !important; cursor: default; }
.kmk-komm--imkerei .kmk-btn { border-color: var(--kmk-honig, #EFA12A); }

/* Formular */
.kmk-komm__form { display: grid; gap: .9rem; margin-bottom: 1.75rem; max-width: 46rem; }
.kmk-komm__field { display: grid; gap: .3rem; }
.kmk-komm__field label { font-size: .9rem; color: var(--kmk-weiss, #fff); }
.kmk-komm__form textarea { min-height: 8rem; resize: vertical; }
.kmk-komm__hint { font-size: .82rem; color: var(--kk-soft); margin: 0; }
.kmk-komm__send { justify-self: start; font-size: .95rem !important; padding: .5rem 1.1rem !important; min-height: 44px; }
.kmk-komm__hp { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }

/* Liste */
.kmk-komm__list, .kmk-komm__replies { list-style: none; margin: 0; padding: 0; }
.kmk-komm__list { display: grid; gap: 1.1rem; }
.kmk-komm__item > article { padding: .85rem 1rem; border: 1px solid var(--kk-line); background: rgba(255, 255, 255, .04); }
.kmk-komm__replies { margin: .6rem 0 0 1.5rem; display: grid; gap: .6rem; }
.kmk-komm__item--reply > article { border-left: 3px solid var(--kk-accent); }
.kmk-komm__item--reply.is-author > article { border-left-color: var(--kmk-honig, #EFA12A); background: rgba(239, 161, 42, .07); }
.kmk-komm__meta { display: flex; flex-wrap: wrap; align-items: baseline; gap: .4rem .6rem; margin-bottom: .35rem; font-size: .88rem; }
.kmk-komm__name { color: var(--kmk-weiss, #fff); font-size: .95rem; overflow-wrap: anywhere; }
.kmk-komm__meta time { color: var(--kk-soft); }
.kmk-komm__badge {
  font-size: .72rem; text-transform: uppercase; letter-spacing: .06em; padding: .05rem .45rem;
  border: 1px solid var(--kmk-honig, #EFA12A); color: var(--kmk-honig-hell, #F6C343);
}
.kmk-komm__body { overflow-wrap: anywhere; line-height: 1.55; }
.kmk-komm__empty { color: var(--kk-soft); }

@media (max-width: 520px) {
  .kmk-komm__replies { margin-left: .75rem; }
  .kmk-komm__item > article { padding: .75rem .8rem; }
}
@media (prefers-reduced-motion: reduce) {
  .kmk-rate__star { transition: none; }
  .kmk-rate__star:hover, .kmk-rate__star:focus-visible { transform: none; }
}
@media print {
  .kmk-komm { display: none !important; }
}
