.feedback-filters input {
  min-width: 210px;
  border: 1px solid var(--line);
  background: white;
  border-radius: 9px;
  padding: 10px 13px;
}

.feedback-type-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  margin-top: 7px;
  background: var(--blue);
}

.feedback-type-dot.bug { background: var(--red); }
.feedback-type-dot.suggestion { background: var(--teal); }
.feedback-type-dot.confusing { background: var(--gold); }

.feedback-comments {
  white-space: pre-wrap;
  line-height: 1.65;
  padding: 18px;
  margin: 20px 0;
  background: #f5faf9;
  border-left: 3px solid var(--teal);
  border-radius: 0 10px 10px 0;
}

.feedback-meta {
  grid-template-columns: repeat(3, 1fr);
}

.feedback-meta a {
  display: block;
  color: var(--teal);
  font-size: .85rem;
  margin-top: 4px;
}

.status.reviewing { color: #756018; background: #fff6d8; }
.status.planned { color: #59458a; background: #f0eafb; }
.status.completed { color: #17634e; background: #e2f4ed; }
.status.declined { color: #7f3430; background: #fae9e7; }

.feedback-browser {
  margin: 20px 0;
  border: 1px solid var(--line);
  border-radius: 9px;
  padding: 12px 14px;
}

.feedback-browser summary {
  cursor: pointer;
  font-weight: 600;
}

.feedback-browser pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  color: var(--muted);
}

.feedback-update-form {
  display: grid;
  gap: 12px;
  padding-top: 20px;
  border-top: 1px solid var(--line);
}

.feedback-update-form label {
  display: grid;
  gap: 6px;
  font-size: .82rem;
  font-weight: 600;
}

.feedback-update-form select,
.feedback-update-form textarea {
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: white;
}

.feedback-update-form textarea {
  min-height: 110px;
  resize: vertical;
}

.feedback-update-form button {
  justify-self: start;
  border: 0;
  border-radius: 9px;
  padding: 11px 18px;
  background: var(--teal);
  color: white;
  font-weight: 700;
}

.feedback-update-form button:disabled {
  opacity: .6;
  cursor: wait;
}

.case-danger-zone {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 0 22px;
}

.case-danger-zone button {
  border: 1px solid #d9a09c;
  border-radius: 9px;
  padding: 10px 14px;
  background: #fff1ef;
  color: #9b302b;
  font-weight: 700;
}

.case-danger-zone button:hover {
  background: #fbe2df;
}

.case-danger-zone button:disabled {
  opacity: .6;
  cursor: wait;
}

@media (max-width: 900px) {
  .feedback-filters { flex-wrap: wrap; }
  .feedback-filters input { min-width: 0; flex: 1 1 100%; }
  .feedback-meta { grid-template-columns: 1fr; }
}
